Skip to content

Fix #501: add -fno-semantic-interposition and --with-lto #502

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

Conversation

blopker
Copy link
Contributor

@blopker blopker commented Jul 3, 2020

PR with the proposed changes from #501.

@itamarst
Copy link

itamarst commented Feb 5, 2021

Just wanted to ping maintainers about this. Given this is an image that is probably installed on tens of thousands, if not more, machines, this tiny change can save a lot of people a lot of money, not to mention reduce a lot of carbon emissions.

@blopker
Copy link
Contributor Author

blopker commented Oct 19, 2021

Obsolete with 3.10

@blopker blopker closed this Oct 19, 2021
@itamarst
Copy link

This is not obsolete. Stats from PyPI show the majority of Python users are still on 3.7 (https://mayeut.github.io/manylinux-timeline/). It will be years before 3.10 is the default. Add up all the millions of people using this image and that's a lot of money and a lot of CO2 being wasted.

@blopker
Copy link
Contributor Author

blopker commented Oct 19, 2021

I don't disagree, however I'm happy that the change is there going forward. That being said, I'm not even much of a Python user anymore. I'm going to bow out at this point and let someone else pick up the work here if they need it.

@emhagman
Copy link

emhagman commented Nov 19, 2021

I'd like to +1 backporting this to < 3.10. We currently use the latest security Python release at work which is 3.8 and can't get the benefits of this without switching to a different image.

@blopker
Copy link
Contributor Author

blopker commented Nov 20, 2021

I'm curious, what's a security release? This seems to imply that newer versions of Python are less secure than older ones.

@emhagman
Copy link

emhagman commented Nov 20, 2021

@blopker I just mean the releases of Python not still in bugfix mode, listed on their website. security meaning they only get patches merged back in for security reasons (sort of like an LTS). It doesn't mean they are less secure, but simply more "stable" from a production software standpoint. If 3.8 has bugs, they won't fix them but that is predictable in a way.

CleanShot 2021-11-20 at 10 55 46@2x

@blopker
Copy link
Contributor Author

blopker commented Nov 20, 2021

Fair enough. I don't know anything about the stuff you work on, but it seems to me that the security status only means it's not getting any non-security changes and not that it's more reliable. Django's LTS releases include data loss issues for instance. According to https://devguide.python.org/devcycle/ the change in maintenance status is actually kinda of arbitrary, decided by one release manager without any hard criteria other than one bugfix release.

Anyway, my point is updating to 3.10 shouldn't sacrifice stability any more than updating to another 'security' release. I get that there are other compatibility considerations when jumping 2 releases (I personally updated a million+ line codebase from 2.7 to 3.8, bleh). However, that may be worth it if the project is performance critical. Plus you get all the new goodies in 3.10, which does include even more performance enhancements than just this one.

Maybe I'm weird, but I generally like challenging company policies :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants