lang/python310: add python 3.10.0.beta2 PR: 256150 Reviewed by: ??? Approved by: ??? (python, maintainer) Differential Revision: https://reviews.freebsd.org/D30475
Details
- Reviewers
koobs - Group Reviewers
portmgr Python - Commits
- R11:930c93129234: lang/python310: add python 3.10.0.beta4
- Build tested on:
- Platforms
- 11i386
- 11amd64
- 12i386
- 12amd64
- 13i386
- 13amd64
- 14amd64
- 13aarch64
- OpenSSL flavors:
- 11amd64+libressl
- 13amd64+libressl
- 11amd64+ports openssl
- 13amd64+ports openssl
- Nondefault options:
- 13amd64+WITH=DEBUG // revealed staging problems which affects earlier python versions as well
- 13amd64+WITHOUT=IPV6
- 13amd64+WITHOUT=LIBMPDEC
- 13amd64+WITHOUT=NLS
- 13amd64+WITHOUT=PYMALLOC
- 13amd64+WITH=FNV
- 13amd64+WITH=SIPHASH
- Platforms
- Built tested py-sqlite3, py-gdbm, py-tkinter with python
Run tested (DEFAULT_VERSIONS+=python=3.10 python3=3.10, rebuild everything) on desktop and in production on 13amd64.
Diff Detail
- Repository
- rP FreeBSD ports repository
- Lint
No Lint Coverage - Unit
No Test Coverage - Build Status
Buildable 39836 Build 36725: arc lint + arc unit
Event Timeline
lang/python310/Makefile | ||
---|---|---|
2 | I guess this line can be removed or changed to you? |
Is it possible to get this as a diff from python39 (or whatever its original source was)?
Available in the related PR https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256150, or do you need complete diff with plist?
lang/python310/Makefile | ||
---|---|---|
2 | IMO no since it's copied from python39 with minimal changes. |
Oh the diff was pasted in comment, I was looking at the attachment. That would have been great here.
Apart from the hard-coded version in MASTER_SITES (minor), and no commit log message and test plan in the review here, it looks "ok".
What's the explanation for the NEWOPENSSL variable? Is the behaviour the same with ports versions of openssl, libressl?
Also the LIBFFI option needs to be removed, originally only done in python37 see: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244782
The build fails with it disabled.
Outstanding/open PR https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256141
Can this be run through complete QA?
Apart from the hard-coded version in MASTER_SITES (minor)
Fixed. I've hardcoded it as it would have to be changed anyway for release, but with cutting away prerelease suffix it would work for both pre- and release versions.
What's the explanation for the NEWOPENSSL variable? Is the behaviour the same with ports versions of openssl, libressl?
python310 does not support archaic openssl from 11.x and fails to build crypto related modules there. The same for libressl. But with openssl from ports it's good even on 11.
I've updated the condition. Not sure if it should be BROKEN instead or should output some kind of warning.
Also the LIBFFI option needs to be removed, originally only done in python37 see: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244782
Outstanding/open PR https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256141
Done.
Can this be run through complete QA?
What do you mean by "complete QA"?
The threshold to commit isn't really no objections, no?
The approval may not be required but as you can see this review led to some improvements.
Apart from best practice general QA, usually this means:
- OPTIONS, particularly the most error prone ones that use third party libs that create work for people with regressions
- At least all tier 1 archs and supported FreeBSD versions
- Any other obvious things, in this case, with SSL changes, testing against supported ssl values
Could you update review summary (proposed commit log message) & test plan (list of qa tests run), for our future selves
lang/python310: add python 3.10.0.beta2
PR: 256150
Approved by: no objection from python@
Differential Revision: https://reviews.freebsd.org/D30475
See minor comments to clarify before landing this. Would still like to see this as a diff against the port it was based on
lang/python310/Makefile | ||
---|---|---|
1 | You can drop this, no need to update diff here | |
92–97 | See comments on https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256558 re this. Would like to understand why ABIFLAGS is no longer sufficient (or when/how it regressed?) |
Patch against python39:
https://gist.github.com/99f0226febf227ca49b6133b3b8cb1da
lang/python310/Makefile | ||
---|---|---|
1 | Drop as in "remove the line" or drop as in "leave it as in python 3.9"? | |
92–97 | I'm not the person to ask this. I'd very much like this to not hold this change any more, I can revert it to the same state as python39, so it can be fixed for python38, 39 and 310 at once in https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256558 |
People can only review changes as proposed, the addition of a new variable to handle the debug ABI is not explained.
The people submitting changes are the only people to ask.
If you'd like to remove it that's fine, but this change has blocked on clarity, not anything else.
Everyone would very much like to have a complete understanding of a proposed changeset in the first instance.
- Remove bits related to fixing DEBUG option
- Add clarification on unsupported OpenSSL version handling
Latest change from python39: https://gist.github.com/54c25485e2052743c6f8bdd85f56452e
Please state clearly which changes are still required to get this landed.
Could you update this diff to be a diff against the port from which it was based?
This IS a diff against the port from which it is based.
Hi.
Please, include this change: lang/python*: Replace DISABLED_EXTENSIONS with Setup.local.
Include DISABLED_EXTENSIONS bit and update to beta3
Change against python3.9: https://gist.github.com/f688683436c195fd5b3fc810b07eab7d