Bug 279502 - devel/py-Automat is incompatible with python3.11
Summary: devel/py-Automat is incompatible with python3.11
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks: 279500
  Show dependency treegraph
 
Reported: 2024-06-03 16:12 UTC by László Károlyi
Modified: 2024-06-30 18:27 UTC (History)
4 users (show)

See Also:
john: maintainer-feedback+


Attachments
version bump (835 bytes, patch)
2024-06-03 16:12 UTC, László Károlyi
no flags Details | Diff
devel/py-Automat: Update to 22.10.0 (2.01 KB, patch)
2024-06-21 23:22 UTC, John W. O'Brien
john: maintainer-approval+
Details | Diff
devel/py-Automat: Update to 22.10.0 (1.68 KB, patch)
2024-06-29 01:33 UTC, John W. O'Brien
john: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description László Károlyi 2024-06-03 16:12:54 UTC
Created attachment 251199 [details]
version bump

Hey,

included you'll find the changes to release 22.10.0 that is compatible with python3.11 (yes, it seems nobody tested for this).

This blocks buildbot-worker installs on py311, but buildbot-worker has other issues as well.

Please merge ASAP.
Comment 1 John W. O'Brien 2024-06-06 00:53:44 UTC
Thank you for your report. I am interested in updating this port to be compatible with all versions of Python available in the ports tree, if possible. Based on my initial attempts, the proposed patch fails to build during the configure phase on FreeBSD 13.3-RELEASE (amd64) under py38, py39, py310 (default), and py311.

I will investigate further and share details as soon as I can identify, and maybe correct, the essence of the failure. For now, I am setting the maintainer feedback to "-" to indicate that the patch does not appear to be ready to commit.
Comment 2 László Károlyi 2024-06-06 08:38:32 UTC
You can just use the old packages for older version of python. I think the developer of the pull request that fixes the incompatibility on py311 didn't test for older versions.

How you can pull that off, I have no idea, I'm not a maintainer. I just need this to be able to run my buildbot worker. Right now, I needed to build this package for me, but as soon I need to update, builbot will break again (and it won't even start for others), until this is not fixed here.
Comment 3 John W. O'Brien 2024-06-21 23:22:36 UTC
Created attachment 251612 [details]
devel/py-Automat: Update to 22.10.0

Comment
=======

*   Update to 22.10.0
*   Drop dependency on textproc/py-m2r
*   Backport patch to remove gratuitous setup.py dependency on wheel


QA
==

portlint: OK
poudriere: OK -- testport on 14.1-RELEASE on amd64 w/py38, py39, py310 (default), and py311
Comment 4 John W. O'Brien 2024-06-21 23:27:05 UTC
With 22.2.0 and VER in {3.8,3.9,3.10},

    pytest-$VER --pyargs automat

reports "24 passed, 37 skipped". With VER=3.11, it reports:

========================== short test summary info ===========================
FAILED _test/test_methodical.py::MethodicalTests::test_badTransitionForCurrentState - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_collectOutputs - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_inputFunctionsMustBeEmpty - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_inputWithArguments - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_methodName - AssertionError: 'declaredInputName' not found in 'code() argument 13 must...
FAILED _test/test_methodical.py::MethodicalTests::test_multipleMachines - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_oneTransition - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_outputWithSubsetOfArguments - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_outputsArePrivate - TypeError: code() argument 13 must be str, not int
FAILED _test/test_methodical.py::MethodicalTests::test_restoreState - TypeError: code() argument 13 must be str, not int
FAILED _test/test_trace.py::TraceTests::test_inputs_and_outputs - TypeError: code() argument 13 must be str, not int
FAILED _test/test_trace.py::TraceTests::test_only_inputs - TypeError: code() argument 13 must be str, not int
================= 12 failed, 12 passed, 37 skipped in 0.39s ==================

With 22.10.0, it reports "26 passed, 37 skipped" against all four versions of Python.
Comment 5 Charlie Li freebsd_committer freebsd_triage 2024-06-23 18:29:05 UTC
The setuptools-scm BUILD_DEPENDS should be devel/py-setuptools_scm7. Eventually the USE_PYTHON=distutils setuptools will switch to devel/py-setuptools58, and latest setuptools-scm is only intended for PEP-517 and requires setuptools >= 61.

Since the patch file is an upstream commit, may want to use PATCH_SITES/PATCHFILES to fetch and checksum the commit directly.
Comment 6 John W. O'Brien 2024-06-29 01:33:02 UTC
Created attachment 251753 [details]
devel/py-Automat: Update to 22.10.0

(In reply to Charlie Li from comment #5)

> The setuptools-scm BUILD_DEPENDS should be devel/py-setuptools_scm7.

Ah! Good catch. Thanks.

> [...] may want to use PATCH_SITES/PATCHFILES to fetch and checksum the
> commit directly.

I'm glad of the "may" framing here because it seems like this patch is abundantly trivial, so the overhead of the change compares poorly with the value of the tighter ports tree machinery integration.
Comment 7 commit-hook freebsd_committer freebsd_triage 2024-06-30 18:26:28 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=409a7fc314b7026bbec5b9eb2ba46cba6eca3986

commit 409a7fc314b7026bbec5b9eb2ba46cba6eca3986
Author:     John W. O'Brien <john@saltant.com>
AuthorDate: 2024-06-30 18:23:29 +0000
Commit:     Kurt Jaeger <pi@FreeBSD.org>
CommitDate: 2024-06-30 18:23:29 +0000

    devel/py-Automat: update 20.2.0 -> 22.10.0

    - Drop dependency on textproc/py-m2r
    - Backport patch to remove gratuitous setup.py dependency on wheel

    PR:             279502
    Reported-by:    László Károlyi <laszlo@karolyi.hu>
    Reviewed-by:    vishwin
    Author:         John W. O'Brien <john@saltant.com> (maintainer)

 devel/py-Automat/Makefile | 8 +++++---
 devel/py-Automat/distinfo | 8 +++++---
 2 files changed, 10 insertions(+), 6 deletions(-)
Comment 8 Kurt Jaeger freebsd_committer freebsd_triage 2024-06-30 18:27:24 UTC
Committed, thanks!