pyopengl icon indicating copy to clipboard operation
pyopengl copied to clipboard

Build with PEP 517, move project metadata to pyproject.toml

Open EpicWink opened this issue 3 years ago • 9 comments

  • Drop Python 2.7, 3.5 and 3.6 support (pyproject.toml support in setuptools requires a version which only supports Python 3.7+), including wheel builds in CI
  • Remove download-URL

EpicWink avatar Aug 03 '22 02:08 EpicWink

Just a coupole minor points.

These changes are not necessary for the goal of this PR (which is to move project metadata to pyproject.toml), and therefore out of scope. In the interest of minimising the changes in a PR, I would say to make those changes in a new PR

EpicWink avatar Aug 20 '22 01:08 EpicWink

Well, updating the Python versions supported i part of this PR -- so I'd at least do that.

As for the Cython dependency, fixing that kind of thing seems pretty in scope to me, and it would just get tangled up to do a PR on the old code, 'cause then when this got merged, it would break it again.

But it's your PR.

ChrisBarker-NOAA avatar Aug 22 '22 18:08 ChrisBarker-NOAA

I've done: #86

ChrisBarker-NOAA avatar Aug 22 '22 18:08 ChrisBarker-NOAA

I'd be unhappy dropping Python 2.7 support without bumping the major release version.

My intention is to continue supporting (for some value of support defined based on my rather scant spare time) Python 2.7 with PyOpenGL until the EOL for support on the RHEL/Centos platform, which IIRC is June 2024. At that point I'll likely do a Python 2.7 incompatible release with type declarations etc. as a PyOpenGL 4.x release.

Python 3.6 was default in Ubuntu Bionic, which EOL's 6 years from now. I'm not super worried about supporting Bionic itself, as I doubt it's got a big market share among those doing 3D graphics with raw OpenGL, but it does seem we're being rather aggressive in dropping support for OSes that are quite recent/new.

I'll try to find time to review the particular changes in the pull request over the next two days before I need to return to paying work. I expect much of the build-system cleanup (it's quite hoary after 20+ years of development) at least can be pulled in while still supporting 2.7 and 3.6 .

mcfletch avatar Aug 29 '22 15:08 mcfletch

@mcfletch see PR #85, which is similar but without dropping the Python version support

In the meantime, I'm working on another PR which moves CI to GitHub Actions (to enable cibuildwheel)


Python 3.6 was default in Ubuntu Bionic, which EOL's 6 years from now.

Ubuntu LTS release (such as Bionic 18.04) have a 5 year support term, with a 5-year extension only for paying customers. This means Bionic will be EOL next year (2023). I don't think any open-source library should support releases which are privately supported.

EpicWink avatar Aug 29 '22 21:08 EpicWink

this is currently blocking installation of p5 module on debian 11

khimaros avatar Sep 13 '22 20:09 khimaros

3.6 is no longer supported by Python.org -- I don't see why downstream projects should have to support Python versions that are no longer supported upstream.

I've never understood why folks want to ru an old OS, and old version of Python, but need the latest third-party package (e.g pyOpenGL, numpy what have you).

Anyway: there's also no reason to gratuitously drop older versions -- if it works with old versions, then might as well call it supported. But if any real updating will be done -- dropping old versions can be really nice and keep things simpler.

@khimaros: what is the actual blocker here? what might be a solution?

This PR is updating the build system -- the old one should still work.

ChrisBarker-NOAA avatar Sep 14 '22 13:09 ChrisBarker-NOAA

@ChrisBarker-NOAA the PyOpenGL-Accelerate 3.1.6 release fixes this issue with python3.10 https://github.com/mcfletch/pyopengl/issues/74 and is currently not available for linux, i believe blocked on this merge request.

i filed an issue with the downstream library here for tracking: https://github.com/p5py/p5/issues/395

khimaros avatar Sep 15 '22 21:09 khimaros

got it -- That's really #37 -- but yes, this PR would help fix that too.

ChrisBarker-NOAA avatar Sep 15 '22 22:09 ChrisBarker-NOAA