stack trace AttributeError: 'bytes' object has no attribute 'encode'

Bug #1733919 reported by Scott Moser
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
keyrings.alt (Ubuntu)
New
Undecided
Unassigned

Bug Description

Running git-ubuntu on a remote system I hit the traceback below.
Note that this was when ssh'd into a system, and then I copied and
pasted the url into my local browser.

The authorization page:
 (https://launchpad.net/+authorize-token?oauth_token=pw2dtzN1cQjSKJfKXD6B&allow_permission=DESK
TOP_INTEGRATION)
should be opening in your browser. Use your browser to authorize
this program to access Launchpad on your behalf.
Waiting to hear from Launchpad about your decision...
Traceback (most recent call last):
  File "/home/smoser/src/usd-importer/bin/git-ubuntu", line 22, in <module>
    main()
  File "/home/smoser/src/usd-importer/gitubuntu/__main__.py", line 243, in main
    sys.exit(args.func(args))
  File "/home/smoser/src/usd-importer/gitubuntu/importer.py", line 1569, in cli_main
    retry_backoffs=args.retry_backoffs,
  File "/home/smoser/src/usd-importer/gitubuntu/importer.py", line 372, in main
    lp = launchpad_login_auth()
  File "/home/smoser/src/usd-importer/gitubuntu/source_information.py", line 55, in launchpad_login_auth
    version=_lp_api_version)
  File "/usr/lib/python3/dist-packages/launchpadlib/launchpad.py", line 549, in login_with
    credential_save_failed, version)
  File "/usr/lib/python3/dist-packages/launchpadlib/launchpad.py", line 356, in _authorize_token_and_login
    credentials = authorization_engine(credentials, credential_store)
  File "/usr/lib/python3/dist-packages/launchpadlib/credentials.py", line 551, in __call__
    credential_store.save(credentials, self.unique_consumer_id)
  File "/usr/lib/python3/dist-packages/launchpadlib/credentials.py", line 306, in save
    raise e
  File "/usr/lib/python3/dist-packages/launchpadlib/credentials.py", line 301, in save
    self.do_save(credentials, unique_consumer_id)
  File "/usr/lib/python3/dist-packages/launchpadlib/credentials.py", line 383, in do_save
    'launchpadlib', unique_key, serialized)
  File "/usr/lib/python3/dist-packages/keyring/core.py", line 47, in set_password
    _keyring_backend.set_password(service_name, username, password)
  File "/usr/lib/python3/dist-packages/keyrings/alt/file_base.py", line 128, in set_password
    password_encrypted = self.encrypt(password.encode('utf-8'), assoc)
AttributeError: 'bytes' object has no attribute 'encode'
11/22/2017 12:21:06 - INFO:Leaving /tmp/open-iscsi as directed

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: python3-keyrings.alt 2.2-2
ProcVersionSignature: Ubuntu 4.13.0-16.19-generic 4.13.4
Uname: Linux 4.13.0-16-generic x86_64
NonfreeKernelModules: zfs zunicode zavl zcommon znvpair
ApportVersion: 2.20.8-0ubuntu1
Architecture: amd64
Date: Wed Nov 22 12:21:20 2017
EcryptfsInUse: Yes
InstallationDate: Installed on 2015-07-23 (853 days ago)
InstallationMedia: Ubuntu 15.10 "Wily Werewolf" - Alpha amd64 (20150722.1)
PackageArchitecture: all
ProcEnviron:
 TERM=screen.xterm-256color
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: keyrings.alt
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Scott Moser (smoser) wrote :
Revision history for this message
Dmitry Shachnev (mitya57) wrote :

This is a bug in python-launchpadlib, as python-keyring API only supports unicode passwords and not bytestrings.

See https://bugs.launchpad.net/ubuntu/+source/python-launchpadlib/+bug/1685547/comments/2 for details.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.