-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Which versions of Python should work for p4p? #84
Comments
This is arising from #80 and #82. Which, in my rush to put out a PVXS fix (epics-base/pvxs#27), I admit I forgot about. At minimum a change to compatibility should have triggered 4.1.0 (if not 5.0.0). As for compatibility notation. This is complicated since there are two different compatibility ranges for the asyncio support, and the rest of P4P. After #82 the asyncio support is 3.7+, while the rest is 2.7, 3.5+ . The only way I could think to represent this in package metadata would be to move the asyncio support to another/new package, which would be a hassle by itself.
I don't think that I have a preference. If you already have some changes, then by all means please share. |
I notice that py3.6 has |
How concerned are you with backwards compatibility? Personally I'd be tempted to say we only support 3.7+ for everything, but I don't have any legacy systems on the epicscorelibs stack |
For me, compatibility with FOSS is a question of effort. When it looks like too much effort, then I'll drop it absent some compelling reason. In this case, after noticing |
Also, I'm thinking about creating p4p 4.1.0, and "yanking" 4.0.1 from pypi.org. Thoughts/objections? |
Looks like a good solution
Sounds like a good idea to me. |
I agree with coretl, I'm happy with that solution. |
Ok, this is done https://pypi.org/project/p4p/#history |
I can confirm p4p 4.1.0 now passes PythonSoftIOC's Python 3.6 CI: |
p4p has just started giving me test failures on 3.6:
https://github.com/dls-controls/pythonSoftIOC/runs/6551492513?check_suite_focus=true#step:5:601
Docs state 2.7 or 3.4+, setup.py states 2.7+, but get_running_loop() is 3.7+. At DLS we don't use anything less than 3.7 with the epicscorelibs stack, so we would be happy to drop support for 3.6 and down on aioca, pythonSoftIOC, epicscorelibs and p4p. Not sure about other sites.
Alternatively we could revert to
asyncio.get_event_loop()
or yourself.loop
that you had before and keep 3.6.Either way, I think we should change
python_requires
to be accurate: https://stackoverflow.com/questions/44660448/using-python-requires-to-require-python-2-7-or-3-2Happy to submit a PR for whatever change you think is best.
The text was updated successfully, but these errors were encountered: