Error in update to 2.0

I updated mopidy to 2.0, youtube and gmusic plugin got broken, i don’t have any clue of whats wrong,

INFO     Starting Mopidy 2.0.0
INFO     Loading config from builtin defaults
INFO     Loading config from /root/.config/mopidy/mopidy.conf
INFO     Loading config from command line options
INFO     Enabled extensions: mopify, mpd, http, file, stream, mobile, gmusic, youtube, softwaremixer, moped, musicbox_webclient, m3u
INFO     Disabled extensions: spotify, local
ERROR    Extension youtube failed during setup, this might have left the registry in a bad state.
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/mopidy/__main__.py", line 121, in main
    extension.setup(registry)
  File "/usr/local/lib/python2.7/dist-packages/mopidy_youtube/__init__.py", line 29, in setup
    from .backend import YouTubeBackend
  File "/usr/local/lib/python2.7/dist-packages/mopidy_youtube/backend.py", line 14, in <module>
    import pafy
  File "/usr/local/lib/python2.7/dist-packages/pafy/__init__.py", line 1, in <module>
    from .pafy import get_playlist
  File "/usr/local/lib/python2.7/dist-packages/pafy/pafy.py", line 57, in <module>
    import youtube_dl
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/__init__.py", line 15, in <module>
    from .options import (
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/options.py", line 7, in <module>
    from .downloader.external import list_external_downloaders
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/downloader/__init__.py", line 3, in <module>
    from .common import FileDownloader
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/downloader/common.py", line 8, in <module>
    from ..utils import (
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/utils.py", line 816, in <module>
    class YoutubeDLHTTPSHandler(compat_urllib_request.HTTPSHandler):
AttributeError: 'module' object has no attribute 'HTTPSHandler'**
INFO     Starting Mopidy mixer: SoftwareMixer
INFO     Starting Mopidy audio
INFO     Starting Mopidy backends: GMusicBackend, StreamBackend, M3UBackend, FileBackend
INFO     Audio output set to "autoaudiosink"
ERROR    Unhandled exception in GMusicBackend (urn:uuid:3f843414-799b-4c07-b737-673153b426a8):
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pykka/actor.py", line 192, in _actor_loop
    self.on_start()
  File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/actor.py", line 51, in on_start
    self.config['gmusic']['deviceid'])
  File "/usr/local/lib/python2.7/dist-packages/mopidy_gmusic/session.py", line 60, in login
    authenticated = self.api.login(username, password, device_id)
  File "/usr/local/lib/python2.7/dist-packages/gmusicapi/clients/mobileclient.py", line 67, in login
    if not self.session.login(email, password, android_id):
  File "/usr/local/lib/python2.7/dist-packages/gmusicapi/session.py", line 174, in login
    res = gpsoauth.perform_master_login(email, password, android_id)
  File "/usr/local/lib/python2.7/dist-packages/gpsoauth/__init__.py", line 66, in perform_master_login
    return _perform_auth_request(data)
  File "/usr/local/lib/python2.7/dist-packages/gpsoauth/__init__.py", line 22, in _perform_auth_request
    headers={'User-Agent': useragent})
  File "/usr/local/lib/python2.7/dist-packages/requests/api.py", line 109, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/api.py", line 50, in request
    response = session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 465, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 573, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/adapters.py", line 431, in send
    raise SSLError(e, request=request)
SSLError: [Errno bad handshake] [('SSL routines', 'SSL3_GET_SERVER_CERTIFICATE', 'certificate verify failed')]
ERROR    Actor died: GMusicBackend (urn:uuid:3f843414-799b-4c07-b737-673153b426a8) stopped before handling the message**
INFO     Starting Mopidy core
INFO     Starting Mopidy frontends: GMusicScrobblerFrontend, QueueManagerFrontend, MpdFrontend, HttpFrontend
INFO     MPD server running at [::]:6600
INFO     HTTP server running at [::]:6680
INFO     Starting GLib mainloop

Disabling gmusic plugin, everything goes “ok”(no errors), but when i try to play a song from youtube i get the following error:

ERROR    YouTubeBackend backend caused an exception.
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/mopidy/core/library.py", line 19, in _backend_error_handling
    yield
  File "/usr/local/lib/python2.7/dist-packages/mopidy/core/library.py", line 347, in search
    result = future.get()
  File "/usr/lib/python2.7/dist-packages/pykka/threading.py", line 52, in get
    compat.reraise(*self._data['exc_info'])
  File "/usr/lib/python2.7/dist-packages/pykka/compat.py", line 12, in reraise
    exec('raise tp, value, tb')
  File "/usr/lib/python2.7/dist-packages/pykka/actor.py", line 201, in _actor_loop
    response = self._handle_receive(message)
  File "/usr/lib/python2.7/dist-packages/pykka/actor.py", line 295, in _handle_receive
    return callee(*message['args'], **message['kwargs'])
  File "/usr/local/lib/python2.7/dist-packages/mopidy_youtube/backend.py", line 192, in search
    tracks=search_youtube(search_query)
  File "/usr/local/lib/python2.7/dist-packages/mopidy_youtube/backend.py", line 98, in search_youtube
    result = session.get(yt_api_endpoint+'search', params=query)
  File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 480, in get
    return self.request('GET', url, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 468, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 576, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/requests/adapters.py", line 447, in send
    raise SSLError(e, request=request)
SSLError: bad handshake: Error([('SSL routines', 'SSL3_GET_SERVER_CERTIFICATE', 'certificate verify failed')],)

this is my pip freeze:

Hello, I’ve exactly the same issue, right after the upgrade.
Rgds

Both stack traces looks related to requests and SSL. I’d try to upgrade requests, with security extras:

sudo pip install -U requests[security]

After updating requests[security], i got gmusic disabled due to too high version

INFO [4900:MainThread] mopidy.ext: Disabled extension gmusic: (requests 2.9.1 (/usr/local/lib/python2.7/dist-packages), Requirement.parse(‘requests!=1.2.0,!=2.2.1,<2.8.0,>=1.1.0’), set([‘gmusicapi’]))

With

pip install -Iv requests[security]==2.7.0

i’ve another error . I’ll open a bug issue in github.

If he can help in my case : https://github.com/mopidy/mopidy-gmusic/issues/107