[Bug 300364] devel/py-resource: Deprecate (needs devel/py-jsonform, which does not import on Python 3)
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 300364] devel/py-resource: Deprecate (needs devel/py-jsonform, which does not import on Python 3)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 300364] devel/py-resource: Deprecate (needs devel/py-jsonform, which does not import on Python 3)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 300364] devel/py-resource: Deprecate (needs devel/py-jsonform, which does not import on Python 3)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 300364] devel/py-resource: Deprecate (needs devel/py-jsonform, which does not import on Python 3)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 300364] devel/py-resource: Deprecate (needs devel/py-jsonform, which does not import on Python 3)"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 30 Oct 2026 22:21:43 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=300364
Bug ID: 300364
Summary: devel/py-resource: Deprecate (needs devel/py-jsonform,
which does not import on Python 3)
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: ports-bugs@FreeBSD.org
Reporter: patrick@crandol.com
CC: bofh@freebsd.org, python@FreeBSD.org
CC: bofh@freebsd.org, python@FreeBSD.org
py-Resource 0.2.1 cannot be imported, because its required dependency
devel/py-jsonform does not import on Python 3:
$ python3.12 -c 'import rsrc'
ImportError: cannot import name 'JsonForm' from partially initialized
module 'jsonform' (most likely due to a circular import)
(/usr/local/lib/python3.12/site-packages/jsonform/__init__.py)
jsonform is Python 2 code: jsonform/__init__.py:6 makes an implicit
relative import that becomes a circular import on Python 3
(devel/py-jsonform is proposed for deprecation in its own PR).
Fixing jsonform alone would not be enough. py-Resource's own code is
broken as well: the Flask adapter fails every request on Flask 2.2+
(MethodView.dispatch_request signature, request.args.iterlists), the
Django adapter uses the Python 2 iterlists/iteritems, and
rsrc.contrib.token needs itsdangerous.TimedJSONWebSignatureSerializer,
which itsdangerous 2.1 removed. That is several separate fixes, not a
minimal patch.
Upstream: 0.2.1 (2017-08-25) is the last release, and
github.com/RussellLuo/resource has had no commits since 2020-04-23.
This proposes deprecating it; I've left EXPIRATION_DATE for you to set.
The patch sets
DEPRECATED= Depends on devel/py-jsonform, which fails to import on Python 3
BROKEN= requires devel/py-jsonform, which fails to import on
Python 3
If you would rather keep the port, devel/py-jsonform would need fixing
and keeping too, plus separate fixes for the Flask 2.2+ and Django
adapters and for itsdangerous 2.1 in rsrc.contrib.token.
Impact: the only consumer, devel/py-opengrok-tools, depended on it by
mistake: opengrok uses the standard library `resource` module.
Bug 300212 proposes removing that dependency; if that is accepted,
nothing in the tree depends on py-resource.
--
You are receiving this mail because:
You are on the CC list for the bug.