← All tasks
pythonjaraco/keyring #301Not a task: not reproduced

Moving forward with SecretStorage and D-Bus bindings

envgap__jaraco__keyring-301

01 / FAILURE SIGNATURE

As reported upstream

No identifying execution failure has been captured.
Not a benchmark task.
  • In a clean container the reported failure did not reproduce, or the known fix did not make the project run.

02 / ENVIRONMENT RECIPE

Base commit
1e25fde80b5e45cc25fe3efdf4edded27706578b
Manifest
setup.py
Reproduce
Awaiting issue-specific recipe
Run under trace
Awaiting a meaningful runtime command

03 / ORIGINAL ISSUE TEXT

jaraco/keyring #301 · read the original issue
Hi @jaraco,



One of the major issues with Keyring on Linux is the [dbus-python](https://pypi.python.org/pypi/dbus-python) dependency, which has the following problems:



- It is difficult to install from PyPI: there are no wheels, it needs the D-Bus headers installed locally and compiles itself during install.

- It is not actively developed, and the author [recommends](https://pypi.python.org/pypi/dbus-python#problems-and-alternatives) switching to another library.



Some time ago I created a port of SecretStorage to [Jeepney](https://gitlab.com/takluyver/jeepney), a modern pure-Python library by @takluyver. Please see mitya57/secretstorage#10 and the [wip/jeepney](https://github.com/mitya57/secretstorage/tree/wip/jeepney) branch. I want it to eventually become the new release of SecretStorage.



But Jeepney only supports Python 3.5+, while Keyring aims to support Python 2. So I wonder how we should resolve this issue. I see the following possibilities:



1. Release the branch as a separate project, like `secretstorage-ng`. Tweak `setup.py` to select `secretstorage-ng` for newer Pythons and `secretstorage` for older Pythons. The module name will not change, so `secretstorage` and `secretstorage-ng` will conflict with each other.

2. Release the branch as `secretstorage 3.0a1`. PyPI will not pull it automatically, but `setup.py` can select `secretstorage>=3.0a1` for newer Pythons.

3. Release the branch as `secretstorage 3.0`. Make `setup.py` select `secretstorage<3` for older Pythons. I think I prefer this option, but I may consider others too.

4. Try to fork Jeepney and add Python 2 / 3.4 support?



What do you think?
Continue on GitHub ↗

04 / LABELS

Labels from the report text only; not yet run

No supported category has been assigned.

Label rules and the text that matched
[]