Skip to content
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

Upgrade from Python 3.8 to 3.12 #282

Closed
mslinn opened this issue Oct 14, 2023 · 8 comments
Closed

Upgrade from Python 3.8 to 3.12 #282

mslinn opened this issue Oct 14, 2023 · 8 comments
Labels
enhancement New feature or request

Comments

@mslinn
Copy link
Contributor

mslinn commented Oct 14, 2023

I noticed that on Windows, %LOCALAPPDATA%\Programs\KnobKraftOrm\python38.zip contains Python 3.8. That is a 4-year-old release. Python 3.10 sped up Python quite a bit. Perhaps it might be worth upgrading to Python 3.12.

@christofmuc
Copy link
Owner

This is true! It is always a trade off - we have users who are still on Windows 7, and for those Python 3.8 is the latest Python version that works :-(

What we could do is to duplicate the build pipeline and build both versions, one for modern computers and one for Windows 7.

@christofmuc christofmuc added the enhancement New feature or request label Oct 14, 2023
@markusschloesser
Copy link
Collaborator

If Microsoft hasn't supported it for 10 years or so and python does not support it anymore, question is why do you have to support it? 😉
Nobody should be running it anywhere any longer (security).
Maybe sounds weird but sometimes progress demands cutting off old stuff. Especially as windows (10/11) still has excellent backwards compatibility.
Maybe declare the current release 2.08 the last one for win7 and then move on?

@christofmuc
Copy link
Owner

I was just trying to be nice, we had long discussion in #141 about this. But yes, I agree the latest build should probably be on an up to date Python. I don't expect any performance difference, but it will be better to be on an up to date version anyway!

@christofmuc
Copy link
Owner

Actually, we'll be running into all kinds of bad situations when creating a second build - we have auto updates, and uses will be nudged to update to a version that will no longer work on their machine.

Maybe we should provide a way for the Windows version to use an externally supplied Python, just like the Mac version does. So if the supplied Python doesn't work you can switch back to one that you have installed elsewhere on the computer?

@christofmuc
Copy link
Owner

Current research:

  • Windows update from Python 3.8 to Python 3.12 is straightforward, as this is embedded. We deny users of Windows 7 the use of KnobKraft then - I can build Andy a private version in case it is still needed.
  • MacOS - that's more complicated, as I usually recommend people to use homebrew, but they change the version of Python quite frequently so by now people need to go to python.org and download and installl the "correct one". Those would need to change when we update to 3.12, so every user has to manually update the Python version, I don't like that, but Mac is on 3.10 already and we can probably keep them there for a while.
  • Linux - we still build old executable on Ubuntu 20.04 LTS, which is supported until April 2025. But that has only Python 3.8. We can update the build machine to 22.04 which comes with 3.10.

@mslinn
Copy link
Contributor Author

mslinn commented Apr 2, 2024

Emphasize future needs, not current needs, when making decisions for the future. Your decision will become increasingly correct as time passes.

@christofmuc christofmuc added the Ready for release Will be part of the next release label Apr 2, 2024
@Andy2No
Copy link

Andy2No commented Apr 2, 2024

I'm fine with just sticking with the final Win7 compatible version. Hopefully any adaptation I write will still be useful to someone else.

FWIW, I do now have a machine with Win 10 on it, but it annoys the hell out of me, so I rarely use it for much. Security is my concern, not Microsoft's.

@christofmuc
Copy link
Owner

Released with 2.3.0. No Windows 7 anymore, if you need a private build, I can make you one!

@christofmuc christofmuc removed the Ready for release Will be part of the next release label Apr 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants