Bug 1660921
Summary: | Switch python-avocado to Python 3 | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Miro Hrončok <mhroncok> |
Component: | python-avocado | Assignee: | Merlin Mathesius <mmathesi> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | mmathesi |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2019-07-02 20:55:41 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1285816, 1625773 |
Description
Miro Hrončok
2018-12-19 15:26:00 UTC
There should be nothing holding up meta-test-family and modularity-testing-framework from switching to Python 3. The "avocado:latest" module stream contains all of the Python 3 packages. The "avocado:stable" module stream and non-modular avocado packages are both currently based on upstream avocado 52.0--which does NOT support Python 3. Thus, they are still Python 2 only, and will remain so. meta-test-family and modularity-testing-framework are in rawhide and depend on the rawhide avocado packages. This bug is about rawhide. If everything goes into a module, maybe the packages should be retired on rawhide. I don't get this part:
> non-modular avocado packages ... are still Python 2 only, and will remain so.
For how long?
(In reply to Miro Hrončok from comment #2) > meta-test-family and modularity-testing-framework are in rawhide and depend > on the rawhide avocado packages. > > This bug is about rawhide. If everything goes into a module, maybe the > packages should be retired on rawhide. Sorry, I misunderstood. Yes, I'll look into the retirement of the non-modular packages from Rawhide. (In reply to Miro Hrončok from comment #3) > I don't get this part: > > > non-modular avocado packages ... are still Python 2 only, and will remain so. > > For how long? Unknown. The "avocado:stable" module stream and non-modular avocado packages are the same, and are tracking with avocado's most recent Long Term Stability release, 52.0, which is Python 2 only. (See https://avocado-framework.readthedocs.io/en/latest/rfcs/LongTermStability.html#long-term-stability-lts-releases) LTS releases happen whenever the Avocado team feels the code is stable enough to be maintained for a longer period of time, with no fixed schedule. Thus, although it's been nearly 18 months since the most recent LTS release, there is not yet a new LTS release (with Python 3 support) to replace it. Thanks for the info. I have received word that there should be a new upstream Long Term Stability release of avocado with Python 3 support available near the end of February. (In reply to Miro Hrončok from comment #2) > meta-test-family and modularity-testing-framework are in rawhide and depend > on the rawhide avocado packages. > > This bug is about rawhide. If everything goes into a module, maybe the > packages should be retired on rawhide. FYI, the "avocado:stable" module stream has been set as the default in rawhide by https://pagure.io/releng/fedora-module-defaults/pull-request/41, and the corresponding non-modular "python-avocado" package has been retired in rawhide by https://src.fedoraproject.org/rpms/python-avocado/pull-request/7. However, as noted in comment #6, we're still awaiting the new upstream avocado LTS release with Python 3 support which will go into "avocado:stable". What about the meta-test-family and modularity-testing-framework packages? They only need avocado on runtime, so they are good? (In reply to Miro Hrončok from comment #8) > What about the meta-test-family and modularity-testing-framework packages? > They only need avocado on runtime, so they are good? Yes, they're good. Having the "avocado:stable" module stream set as default allows the modular versions of the avocado package dependencies to be pulled in automatically at install time. The latest upstream LTS release of avocado with full Python 3 support is currently available in the "avocado:69lts" module stream. PR https://pagure.io/releng/fedora-module-defaults/pull-request/81 has been created to make that the default stream in Rawhide. Note: The old Python2-only "avocado:stable" stream name has been deprecated in favor of the name "avocado:52lts". Is anything else needed to resolve this BZ? I'd like to keep track of removal of all python2-avocado* packages as well. Can we keep this open until that happens? (In reply to Miro Hrončok from comment #11) > I'd like to keep track of removal of all python2-avocado* packages as well. > Can we keep this open until that happens? Of course. The removal of Python 2 packages will happen in the next release of the module stream "avocado:latest", since upstream avocado started dismantling Python 2 support immediately after the recent 69.0 LTS release. I've already had to start dropping several Python 2 sub-packages in F30 and Rawhide for the old module streams "avocado:52lts" and "avocado:latest" as the dependencies have been evaporating. After giving folks a little time to transition to the new "avocado:69lts" module stream, I'll finish dropping Python 2 support for all module streams in Rawhide. Do you have a timeline for the "little time to transition" given to folks? It seems that the meta-test-family and modularity-testing-framework packages haven't got a (not automated) Fedora update in more than a year. The most recent "avocado:latest" module stream release is based upon upstream avocado 70.0--which is Python 3-only for all Fedora releases. The "avocado:69lts" module stream based upon upstream avocado 69.x long term stability series has been made Python 3-only in F31, but continues to include Python 2 support in F29 and F30. It is also the default stream for F31. The older "avocado:stable" and "avocado:52lts" module streams are Python 2-only and are being retired in F31. (https://pagure.io/releng/issue/8401) The Python 3 transition for the avocado module is now complete. Thanks! |