ChannelFinder / recsync

EPICS Record Synchronizor
Other
15 stars 25 forks source link

Sets the support level to python 3.6 or above #88

Closed jacomago closed 5 months ago

jacomago commented 6 months ago

Removes from the server support for python 3.2 and below Sets the suggested python version to 3.6 or above

jacomago commented 6 months ago

As support is being removed more and more for lower python versions. I thought it would make sense to make this change. I expect a lot of sites use a docker image for recceiver anyway, but I will leave this PR unmerged for some time.

jeonghanlee commented 6 months ago

@jacomago could you collect all user OS requirements? That changes are okay for the ALS-U, since we officially support Debian 12 and Rocky 9.2. Both OSs have the Python 3.11. However, what about other facilities?

I am still thinking these changes are a bit early.

Why not we keep the old codes as it is, and add new version code together? Or do you have any specific reasons regarding security concerns?

ralphlange commented 6 months ago

I agree with Han.

Don't underestimate user annoyance when doing your cost benefit analysis.

RHEL is widely used and pretty conservative. To me, the standard Python version on RHEL 8 would look like a good marker for what people might want to use.

tynanford commented 6 months ago

RHEL 8 ships with python 3.6.8 and I agree with Ralph to at least support that OS. Looking naively at the PR, it just drops python 2 support? What changes preclude python 3 below 3.7?

RHEL 7 is still around til the end of June and ships with python 2.7 but maybe those users should be focusing more on updating their OS than upgrading recceiver to the latest version in github ;) RHEL 8 is dropping support for python 2.7 at the same time - https://access.redhat.com/solutions/4455511

So dropping python 2 soon would be reasonable to me.

jeonghanlee commented 6 months ago

I also agree with Tynan, we should prepare to drop python 2 soon.

shroffk commented 6 months ago

To sum up

jacomago commented 6 months ago

Perfect. Yes, as @tynanford this actually removes support for 3.2 and below. I've updated the PR description. I'll make a follow up PR to add building down to 3.6.

jeonghanlee commented 6 months ago

@jacomago 3.2 and below?

So do we support 3.3.X after this merge? Or 3.6.X?

Can we specify the future support version more clearly?

jacomago commented 6 months ago

@jeonghanlee I think its best to say this PR keeps the code working for python >=3.3. But we keep support specified in the pyproject.toml which is set to >=3.6. This makes clear we won't fix bugs for running on python <=3.5.

tynanford commented 6 months ago

I think technically it is >=3.2 like @shroffk mentioned. It would be good to update the README with this PR as well - https://github.com/ChannelFinder/recsync?tab=readme-ov-file#recceiver-usage

ralphlange commented 6 months ago

Might be nitpicking... Could you update the commit message to better reflect the change? (Could scare people...)

sonarcloud[bot] commented 6 months ago

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

jacomago commented 6 months ago

Might be nitpicking... Could you update the commit message to better reflect the change? (Could scare people...)

Updated the commit and the PR descriptions.