fract4d / gnofract4d

A fractal generation program for linux
Other
115 stars 29 forks source link

Raise minimum Python version to 3.9, start testing 3.13 #260

Closed cjmayo closed 4 months ago

cjmayo commented 5 months ago

PyEval_InitThreads() does nothing in Python 3.9-12 and is dropped in 3.13.


Python 3.8 does have a few months left but with the change to GTK 4 we dropped compatibility with Ubuntu 20.04 anyway.

cjmayo commented 5 months ago

Looks like Meson 1.4.0 isn't compatible with Python 3.13 yet. Will investigate.

cjmayo commented 5 months ago

A feature that Meson relies on has been removed. It wasn't listed for removal in 3.13 in the original Python 3.12 documentation, and looks like it is now coming back. Could be fixed in a couple of weeks time with the next Python 3.13 alpha. This was one that needed to sit for a bit anyway.

Perhaps it is a bit early to start testing with Python 3.13, but as the purpose was to be compatible with it...

No rush.

codecov[bot] commented 5 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 85.71%. Comparing base (06e34bb) to head (90f2b63). Report is 1 commits behind head on master.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #260 +/- ## ======================================= Coverage 85.70% 85.71% ======================================= Files 55 55 Lines 10424 10431 +7 ======================================= + Hits 8934 8941 +7 Misses 1490 1490 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

cjmayo commented 5 months ago

Python 3.13.0a6 is released so Meson is happy.

But, in news elsewhere, Homebrew have updated to packages that do not work on macOS, causing a test failure:

 >       @pytest.mark.skipif(Gio.AppInfo.get_default_for_uri_scheme("http") is None,
                            reason="No web browser found")
E                           AttributeError: type object 'AppInfo' has no attribute 'get_default_for_uri_scheme'

https://github.com/Homebrew/homebrew-core/issues/167524 https://gitlab.gnome.org/GNOME/glib/-/issues/3322

Added a commit here for now to bypass that to see the Linux tests pass. I guess we wait for a new release to fix that, and we have the time.

cjmayo commented 4 months ago

Let's get on with it - the macOS job is causing all check runs to fail. Compilation on macOS is being run at least.