Created attachment 201824 [details] patch to remove the version limitation from the py-pyhamcrest port The version of pyhamcrest currently in ports limits the python version to 2.7-3.4. Newer versions of twisted than the one currently in ports however rely on this package. Many GNU/Linux distributions also ship this for more recent versions of python3, so I think it's safe to remove this restriction. Cheers, Sascha
Hello Sascha, Thanks for the patch. Removing the python restriction looks safe enough to me, however want some feedback from python@ before we move forward with this change.
Python ports should declare the python versions that package *supports*, as accurately and precisely as possible without being incorrect, within the current limitations of the USES=python:<version-spec> specification syntax. Generally speaking, if there is a package A (eg: Twisted), that supports Python version X.Y (3.6), that depends on a package B (pyhamcrest, which is unclear or does not explicitly state X.Y (3.6) support), either: 1) Package A's (twisted) dependencies are incorrectly specified/qualified, OR 2) Package B's (pyhamcrest) version support is incompletely specified. Package A couldn't possibly support X.Y (3.6) if a dependency B didn't/doesn't also. Some upstream data points: * pyhamcrest upstream appears to be testing up to 3.6 [1][2] In this case it appears that (2) is more likely. Twisted is very well tested, and they include optional dependencies in their CI builds, which would be publicly failing for 3.4+ python versions if one of their dependencies didn't support that version. Test suits are by far the most valuable thing QA tool for us as packagers, so add TEST_DEPENDS [3] and a (do-)test: target [4] to test pyhamcrest on 3.5/3.6. [1] https://github.com/hamcrest/PyHamcrest/blob/master/.travis.yml#L14 [2] https://github.com/hamcrest/PyHamcrest/blob/master/tox.ini#L2 [3] setup.py:test_dependencies = ['hypothesis>=1.11', 'pytest>=2.8', [4] setup.py:cmdclass={'test': PyTest} (PYTHON_CMD PYDISTUTILS_SETUP test) P.S: Please send PR's upstream to add update docs and classifiers (setup.py) to include later python versions if they are confirmed to pass tests
A commit references this bug: Author: ultima Date: Thu Feb 14 19:45:34 UTC 2019 New revision: 492931 URL: https://svnweb.freebsd.org/changeset/ports/492931 Log: * Revision bump for distfile change * Changed MASTER_SITES to GitHub, GitHub includes test suite * Added test target and depends, added for testing newer versions of python PR: 235585 Changes: head/textproc/py-pyhamcrest/Makefile head/textproc/py-pyhamcrest/distinfo
Tested all current versions of python (2.7-3.7) and all have passed successfully. Leaving ticket open to remind me to open a bug upstream. Thanks koobs for all the information provided.
(In reply to Richard Gallamore from comment #4) Would you close this PR ?
Created issue upstream. https://github.com/hamcrest/PyHamcrest/issues/99
(In reply to Richard Gallamore from comment #6) Thank you.
(In reply to wen from comment #7) np, it should have been completed sometime ago but I keep getting distracted. >.<