Updating for Python 3.12-3.14

20 views
Skip to first unread message

Matthew Stidham

unread,
Sep 26, 2025, 2:06:21 PM (3 days ago) Sep 26
to openpyxl-users
I am using openpyxl at work for a project, and noticed how its setup.py and tox.ini files were out of date. I removed old versions of Python, which will be unsupported next month, and added 3.12 through 3.14. I ran tox on Python versions 3.10 through 3.14 on my computer, fixed a few errors that appeared, and now tox runs cleanly on all five versions. I have the changes ready, so this project can be up to date for the newest release of Python, which is coming in a few weeks.

Heptapod won't let me fork the repository, so I sent in an access request.

I haven't updated the documentation; someone else will still need to do that, but at least the code will work for people on the latest version of Python now.

Please let me know if there are any additional steps I need to take to complete this process.

Thank you!

Charlie Clark

unread,
5:15 AM (2 hours ago) 5:15 AM
to openpyxl-users
On 26 Sep 2025, at 20:06, Matthew Stidham wrote:

Hiya,

> I am using openpyxl at work for a project, and noticed how its setup.py and
> tox.ini files were out of date. I removed old versions of Python, which
> will be unsupported next month, and added 3.12 through 3.14. I ran tox on
> Python versions 3.10 through 3.14 on my computer, fixed a few errors that
> appeared, and now tox runs cleanly on all five versions. I have the changes
> ready, so this project can be up to date for the newest release of Python,
> which is coming in a few weeks.

Thanks for looking into this project has been running against ≥ 3.13 for a while - locally with Python 3.14-devel. There are some unrelated lxml issues which have been fixed elsewhere.

Python's shift to yearly releases and fairly rapid deprecation of older versions is not helpful, not just for me but for many using the software. And, as long as compatibility isn't broken, I don't see the need to remove any.

There haven't been any significant changes to 3.1 since the last release so no real need for a release just because of new Python releases but I guess we'll have to revisit that at the latest when Python 3.14 is released. The best thing is going to be removing named support for specific releases so that installers won't complain.

> Heptapod won't let me fork the repository, so I sent in an access request.

I'll approve that shortly.

> I haven't updated the documentation; someone else will still need to do
> that, but at least the code will work for people on the latest version of
> Python now.

There's another ticket related to this, but updating the docs should always been part of any PR. There are two separate tox environments that help in this respect.

> Please let me know if there are any additional steps I need to take to
> complete this process.

No, nothing else, it's just the library hasn't been my main focus for a good while now and the proposed changes, some of which are great, in 3.2 need some work before it can be released.

Charlie

--
Charlie Clark
Managing Director
Clark Consulting & Research
German Office
Sengelsweg 34
Düsseldorf
D- 40489
Tel: +49-203-3925-0390
Mobile: +49-178-782-6226
Reply all
Reply to author
Forward
0 new messages