Package Details: python-class-registry 4.0.6-1

Git Clone URL: https://aur.archlinux.org/python-class-registry.git (read-only, click to copy)
Package Base: python-class-registry
Description: The intersection of the Registry and Factory patterns
Upstream URL: https://github.com/todofixthis/class-registry
Licenses: MIT
Submitter: 2bluesc
Maintainer: 2bluesc
Last Packager: 2bluesc
Votes: 2
Popularity: 0.000005
First Submitted: 2020-07-22 05:00 (UTC)
Last Updated: 2023-05-04 03:47 (UTC)

Latest Comments

ectospasm commented on 2022-09-08 01:28 (UTC)

@2bluesc: Thanks for the tip! I should have tried this first before reaching out. It looks like my python-class-registry package was still in Python 3.9, while I upgraded to 3.10 several weeks ago. Forcing a rebuild of both backblaze-b2 and python-class-registry fixed the problem for me, I was able to authorize my account without having to move .b2_account_info (it didn't exist on my target laptop).

The package name in PyPi is phx-class-registry, not sure if that matters.

2bluesc commented on 2022-09-03 20:52 (UTC)

@ectospasm I don't think there's a bug here as I can't recreate the issue, this package name (and backblaze-b2 requirements.txt) hasn't been changed in 2+ years and many backblaze-b2 users seem to not have issues.

I just tested backblaze-b2 authorize-account on my account after deleting my ~/.b2_account_info and it works without issue.

You should check that your environment and make sure you have this package correctly installed.

Test cases:

$ python3 -c 'import class_registry; print(class_registry.__file__)'
/usr/lib/python3.10/site-packages/class_registry/__init__.py
$ pacman -Qo /usr/lib/python3.10/site-packages/class_registry/__init__.py
/usr/lib/python3.10/site-packages/class_registry/__init__.py is owned by python-class-registry 3.0.5-1
$ pacman -Ql python-class-registry
python-class-registry /usr/
python-class-registry /usr/lib/
python-class-registry /usr/lib/python3.10/
python-class-registry /usr/lib/python3.10/site-packages/
python-class-registry /usr/lib/python3.10/site-packages/class_registry/
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__init__.py
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/__init__.cpython-310.opt-1.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/__init__.cpython-310.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/auto_register.cpython-310.opt-1.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/auto_register.cpython-310.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/cache.cpython-310.opt-1.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/cache.cpython-310.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/entry_points.cpython-310.opt-1.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/entry_points.cpython-310.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/patcher.cpython-310.opt-1.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/patcher.cpython-310.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/registry.cpython-310.opt-1.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/__pycache__/registry.cpython-310.pyc
python-class-registry /usr/lib/python3.10/site-packages/class_registry/auto_register.py
python-class-registry /usr/lib/python3.10/site-packages/class_registry/cache.py
python-class-registry /usr/lib/python3.10/site-packages/class_registry/entry_points.py
python-class-registry /usr/lib/python3.10/site-packages/class_registry/patcher.py
python-class-registry /usr/lib/python3.10/site-packages/class_registry/registry.py
python-class-registry /usr/lib/python3.10/site-packages/phx_class_registry-3.0.5-py3.10.egg-info/
python-class-registry /usr/lib/python3.10/site-packages/phx_class_registry-3.0.5-py3.10.egg-info/PKG-INFO
python-class-registry /usr/lib/python3.10/site-packages/phx_class_registry-3.0.5-py3.10.egg-info/SOURCES.txt
python-class-registry /usr/lib/python3.10/site-packages/phx_class_registry-3.0.5-py3.10.egg-info/dependency_links.txt
python-class-registry /usr/lib/python3.10/site-packages/phx_class_registry-3.0.5-py3.10.egg-info/requires.txt
python-class-registry /usr/lib/python3.10/site-packages/phx_class_registry-3.0.5-py3.10.egg-info/top_level.txt
python-class-registry /usr/share/
python-class-registry /usr/share/licenses/
python-class-registry /usr/share/licenses/python-class-registry/
python-class-registry /usr/share/licenses/python-class-registry/LICENSE

Tried loading the phx-class-registry distribution directly and it seems happy as well:

python3 -c 'from importlib.metadata import distribution; print(distribution("phx-class-registry").files)'
[PackagePath('LICENSE'), PackagePath('MANIFEST.in'), PackagePath('README.rst'), PackagePath('setup.py'), PackagePath('class_registry/__init__.py'), PackagePath('class_registry/auto_register.py'), PackagePath('class_registry/cache.py'), PackagePath('class_registry/entry_points.py'), PackagePath('class_registry/patcher.py'), PackagePath('class_registry/registry.py'), PackagePath('phx_class_registry.egg-info/PKG-INFO'), PackagePath('phx_class_registry.egg-info/SOURCES.txt'), PackagePath('phx_class_registry.egg-info/dependency_links.txt'), PackagePath('phx_class_registry.egg-info/requires.txt'), PackagePath('phx_class_registry.egg-info/top_level.txt'), PackagePath('test/__init__.py'), PackagePath('test/auto_register_test.py'), PackagePath('test/cache_test.py'), PackagePath('test/entry_points_test.py'), PackagePath('test/patcher_test.py'), PackagePath('test/registry_test.py')]

ectospasm commented on 2022-09-01 23:42 (UTC) (edited on 2022-09-08 02:20 (UTC) by ectospasm)

@2bluesc: Here's the diff you requested:

diff --git a/PKGBUILD b/PKGBUILD
index 034d0bd..b23d2fe 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,5 +1,5 @@
# Maintainer: Kyle Manna <kyle[at]kylemanna[d0t]com>
-pkgname=python-class-registry
+pkgname=phx-class-registry
_pkgname=class-registry
pkgver=3.0.5
pkgrel=1

ectospasm commented on 2022-08-29 03:11 (UTC) (edited on 2022-09-08 02:23 (UTC) by ectospasm)

It appears this package has been renamed to phx-class-registry. backblaze-b2 requires this package at the new name, see the following Python Traceback:

Traceback (most recent call last):
  File "/usr/bin/backblaze-b2", line 33, in <module>
    sys.exit(load_entry_point('b2==3.4.0', 'console_scripts', 'b2')())
  File "/usr/bin/backblaze-b2", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 171, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3.10/site-packages/b2/console_tool.py", line 28, in <module>
    from b2sdk.v2 import (
  File "/usr/lib/python3.10/site-packages/b2sdk/v2/__init__.py", line 11, in <module>
    from b2sdk._v3 import *  # noqa
  File "/usr/lib/python3.10/site-packages/b2sdk/_v3/__init__.py", line 48, in <module>
    from b2sdk.version_utils import rename_argument, rename_function
  File "/usr/lib/python3.10/site-packages/b2sdk/version_utils.py", line 16, in <module>
    from pkg_resources import parse_version
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3260, in <module>
    def _initialize_master_working_set():
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3234, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3272, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 581, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 909, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 795, in resolve
    raise DistributionNotFound(req, requirers)
  pkg_resources.DistributionNotFound: The 'phx-class-registry==3.0.5' distribution was not found and is required by b2

jaantoots commented on 2020-07-22 08:46 (UTC)

'python-setuptools' is missing from makedepends