Compare commits

...
Sign in to create a new pull request.

33 commits

Author SHA1 Message Date
Python Maint
d7cb717046 Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 14:05:42 +02:00
Orion Poplawski
1b119c95cc Add BR/R on python3-gobject, skip openal test (FTBFS rhbz#2379002) 2025-08-22 19:44:47 -06:00
Python Maint
4352bae042 Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 14:30:21 +02:00
Fedora Release Engineering
53f7e6738c Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 09:37:34 +00:00
Python Maint
66ed799c92 Rebuilt for Python 3.14 2025-06-03 16:25:05 +02:00
Fedora Release Engineering
12b9a27507 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-18 17:46:29 +00:00
Fedora Release Engineering
667c6f86e5 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-19 14:30:09 +00:00
Python Maint
6b74c26aa9 Rebuilt for Python 3.13 2024-06-08 10:32:36 +02:00
Orion Poplawski
e48a0d40a9 Update to 2.0.10 2024-02-17 19:27:40 -07:00
Fedora Release Engineering
fccc5775d2 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-26 08:36:11 +00:00
Fedora Release Engineering
24dd2dcfc5 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 05:37:11 +00:00
Fedora Release Engineering
581b07306a Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 12:43:35 +00:00
Orion Poplawski
45ba8fa193 Update to 1.5.27
Add patch for Python 3.12 support
Use SPDX License
2023-06-17 08:17:36 -06:00
Python Maint
111ed9c4b7 Rebuilt for Python 3.12 2023-06-16 18:00:05 +02:00
Fedora Release Engineering
47715f4adb Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 16:04:54 +00:00
Fedora Release Engineering
805c1205f5 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 21:15:16 +00:00
Miro Hrončok
3a5fafa025 Skip test_push_handlers_instance 2022-06-17 01:19:11 +02:00
Python Maint
cc8e511b24 Rebuilt for Python 3.11 2022-06-13 23:07:33 +02:00
Petr Viktorin
25e845cfca Update to 1.5.23 2022-04-28 10:55:21 +02:00
Fedora Release Engineering
01562838d8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-21 14:32:07 +00:00
Benjamin A. Beasley
9101d813e9 Backport upstream patch to fix ExcludeArch (fix RHBZ#1877849) 2021-10-10 14:49:25 -04:00
Fedora Release Engineering
a59df89fd7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 08:34:36 +00:00
Python Maint
88678ca362 Rebuilt for Python 3.10 2021-06-04 20:53:31 +02:00
Petr Viktorin
6ec4b2041c Update to 1.5.16 2021-04-16 13:56:20 +02:00
Fedora Release Engineering
d336dbdaf5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 12:35:01 +00:00
Petr Viktorin
70b0192845 Remove usage of parser for Python 3.10 compatibility 2020-11-25 15:15:41 +01:00
Petr Viktorin
f7ae4e365e Update to 1.5.11 2020-11-25 14:59:58 +01:00
Petr Viktorin
a19ecf6e4b ExcludeArch s390x until tests are fixed upstream 2020-09-10 15:14:30 +00:00
Miro Hrončok
02e02edf51 Enable test_no_decoders_available with sounds from libpurple 2020-09-10 13:10:03 +02:00
Petr Viktorin
f5c26e11a6 Move the %check section above %files 2020-09-10 12:50:09 +02:00
Petr Viktorin
25a339e965 Update to 1.5.7 and modernize 2020-09-09 18:50:46 +02:00
Fedora Release Engineering
10436ba204 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 03:04:52 +00:00
Miro Hrončok
4e7450e1e6 Rebuilt for Python 3.9 2020-05-26 03:32:52 +02:00
4 changed files with 212 additions and 36 deletions

7
.gitignore vendored
View file

@ -7,3 +7,10 @@
/pyglet-1.3.2-repacked.tar.gz
/pyglet-1.4.1-repacked.tar.gz
/pyglet-1.4.6-repacked.tar.gz
/pyglet-1.5.7-repacked.tar.gz
/pyglet-1.5.11-repacked.tar.gz
/pyglet-1.5.16.tar.gz
/pyglet-1.5.16-repacked.tar.gz
/pyglet-1.5.23-repacked.tar.gz
/pyglet-1.5.27-repacked.tar.gz
/pyglet-2.0.10-repacked.tar.gz

View file

@ -7,12 +7,18 @@ ARCHIVENAME=${VERSIONEDNAME}.tar.gz
wget -N https://github.com/pyglet/pyglet/archive/v${VERSION}.tar.gz -O ${ARCHIVENAME}
tar xzvf ${ARCHIVENAME}
pushd ${VERSIONEDNAME}
rm -rvf examples # includes non-free artwork
rm -rvf tests # includes non-free font
rm -rvf tools # random developer tools (*)
rm -rvf contrib # again, questionable licensing
rm -v pyglet/image/codecs/s3tc.py # patent-encumbered algorithm (**)
rm -v pyglet/image/codecs/dds.py # image codec that uses s3tc (**)
rm -rvf examples # includes non-free artwork
rm -rvf tests/data/fonts # includes non-free font
rm -rvf tests/data/images/*.dds # compressed with patent-encumbered algorithm
rm -rvf tests/data/images/dinosaur.gif # questionable origin
# questionable sound files "retrieved from libpurple":
rm -rvf tests/data/media/{alert,login,logout,receive,send}.wav
popd
tar czvf ${VERSIONEDNAME}-repacked.tar.gz ${VERSIONEDNAME}

View file

@ -1,29 +1,63 @@
%global srcname pyglet
%global srcversion 1.4.6
%global versionedname %{srcname}-%{srcversion}
%global versionedname %{srcname}-%{version}
%bcond_without tests
Name: python-%{srcname}
Version: %{srcversion}
Release: 2%{?dist}
Version: 2.0.10
Release: 9%{?dist}
Summary: A cross-platform windowing and multimedia library for Python
License: BSD
License: BSD-3-Clause
URL: http://www.pyglet.org/
# The upstream tarball includes some non-free files in the examples and tests,
# and a patented texture compression algorithm.
# Run the following (in rpmbuild/SOURCES) to generate the distributed tarball:
# $ bash pyglet-get-tarball.sh 1.3.2
# Run the following (in rpmbuild/SOURCES) to generate the distributed tarball
# (the subcommand outputs a version number like 1.5.16):
# $ bash pyglet-get-tarball.sh $(grep Version python-pyglet.spec|cut -c10-)
# See the script for details.
Source0: %{versionedname}-repacked.tar.gz
Source1: pyglet-get-tarball.sh
# Note that unbundling pypng removes "PNGImageDecoder", which is normally
# available for advanced use cases. Instead of:
# img = image.load(fname, decoder=PNGImageDecoder) # don't use!
# It is enough to let Pyglet choose an appropriate decoder with:
# img = image.load(fname)
# Pyglet docs even discourage hard-coding the decoder "unless your application
# has to work around specific deficiences in an operating system decoder":
# https://pyglet.readthedocs.io/en/latest/programming_guide/image.html?highlight=PILImageDecoder#loading-an-image
# If you do find an issue with the default decoder on Fedora, file a bug.
BuildArch: noarch
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: pyproject-rpm-macros
%description
# Tests need OpenGL
# See also: https://bugzilla.redhat.com/show_bug.cgi?id=904851
%global __pytest xvfb-run -s '-screen 0 640x480x24' pytest
%if %{with tests}
BuildRequires: /usr/bin/xvfb-run mesa-dri-drivers
BuildRequires: python3-pytest
# These two for gdkpixbuf2 tests
BuildRequires: gtk2-devel
BuildRequires: gdk-pixbuf2-devel
# libpurple has sound files unbundled in the repacked tarball
BuildRequires: libpurple
# These tests fail in koji, likely due to missing devices
#BuildRequires: openal-soft
# These are not specified by upstream
BuildRequires: python3-gobject
# Some tests fail if this is present
# https://github.com/pyglet/pyglet/issues/875
#BuildRequires: python3-pytest-asyncio
%endif
Requires: python3-gobject
%global _description %{expand:
This library provides an object-oriented programming interface for developing
games and other visually-rich applications with Python.
pyglet has virtually no external dependencies. For most applications and game
@ -32,6 +66,13 @@ distribution and installation. It also handles multiple windows and
fully aware of multi-monitor setups.
pyglet might be seen as an alternative to PyGame.
}
%generate_buildrequires
%pyproject_buildrequires
%description %_description
%package -n python3-%{srcname}
@ -39,57 +80,179 @@ Summary: A cross-platform windowing and multimedia library for Python 3
%{?python_provide:%python_provide python3-%{srcname}}
Requires: python3
Requires: python3-pillow
Requires: python3-future
# The libraries are imported dynamically using ctypes, so rpm can't find them.
Requires: libGL
Requires: libGLU
Requires: libX11
Requires: fontconfig
%description -n python3-%{srcname}
This library provides an object-oriented programming interface for developing
games and other visually-rich applications with Python 3.
pyglet has virtually no external dependencies. For most applications and game
requirements, pyglet needs nothing else besides Python, simplifying
distribution and installation. It also handles multiple windows and
fully aware of multi-monitor setups.
# Needed for experimental headless mode; see: https://github.com/pyglet/pyglet/issues/51
Suggests: libEGL
pyglet might be seen as an alternative to PyGame.
# Pillow is technically optional, but in Fedora we always pull it in.
# It can open PNG images, so we can remove the bundled "png.py"
Requires: python3-pillow
%if %{with tests}
BuildRequires: libGL
BuildRequires: libGLU
BuildRequires: libEGL
BuildRequires: libX11
BuildRequires: fontconfig
BuildRequires: python3-pillow
%endif
%description -n python3-%{srcname} %_description
%prep
%setup -q -n %{versionedname}
%autosetup -p1 -n %{versionedname}
# Remove the bundled pypng library (python-pillow provides the same functionality)
rm pyglet/image/codecs/png.py
rm pyglet/extlibs/png.py
# The future library can be unbundled (upstream even does it for the wheel distribution)
rm -r pyglet/extlibs/future
# Get rid of hashbang lines. This is a library, it has no executable scripts.
# Also remove Windows newlines
find . -name '*.py' | xargs sed --in-place -e's|#!/usr/bin/\(env \)\?python||;s/\r//'
%build
%py3_build
%pyproject_wheel
%install
%py3_install
%pyproject_install
%files -n python3-%{srcname}
%pyproject_save_files pyglet
%if %{with tests}
%check
# Skip flaky tests
export CI=on
# The files are unbundled in the repacked tarball
ln -s %{_datadir}/sounds/purple/*.wav tests/data/media/
# Interactive tests are skipped for obvious reasons.
# Media player tests are skipped -- we don't have PulseAudio running.
# test_find_font_match & test_have_font skipped -- they look for a font named 'arial'
# test_font & test_freetype_face tests are skipped -- they depend on non-free font we remove
# test_push_handlers_instance has broken mocking: https://github.com/pyglet/pyglet/issues/606
# GdkPixBufTest.test_load_animation uses dinosaur.gif which we remove
%pytest \
-vv \
--non-interactive \
--ignore=tests/interactive \
--ignore=tests/integration/media \
-m 'not (requires_user_action or requires_user_validation or only_interactive)' \
-k 'not (test_find_font_match or test_font or test_have_font or test_freetype_face or test_openal_listener or test_push_handlers_instance)' \
--deselect tests/integration/image/test_gdkpixbuf2.py::GdkPixBufTest::test_load_animation \
tests
%endif
%files -n python3-%{srcname} -f %%{pyproject_files}
%license LICENSE
%doc README.md
%doc RELEASE_NOTES
%doc NOTICE
%{python3_sitelib}/%{versionedname}-py%{python3_version}.egg-info
%{python3_sitelib}/%{srcname}
%doc README.md RELEASE_NOTES
%changelog
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 2.0.10-9
- Rebuilt for Python 3.14.0rc3 bytecode
* Sat Aug 23 2025 Orion Poplawski <orion@nwra.com> - 2.0.10-8
- Add BR/R on python3-gobject, skip openal test (FTBFS rhbz#2379002)
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 2.0.10-7
- Rebuilt for Python 3.14.0rc2 bytecode
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Tue Jun 03 2025 Python Maint <python-maint@redhat.com> - 2.0.10-5
- Rebuilt for Python 3.14
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.10-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Sat Jun 08 2024 Python Maint <python-maint@redhat.com> - 2.0.10-2
- Rebuilt for Python 3.13
* Sat Feb 17 2024 Orion Poplawski <orion@nwra.com> - 2.0.10-1
- Update to 2.0.10
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.27-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.27-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.27-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jun 17 2023 Orion Poplawski <orion@nwra.com> - 1.5.27-1
- Update to 1.5.27
- Add patch for Python 3.12 support
- Use SPDX License
* Fri Jun 16 2023 Python Maint <python-maint@redhat.com> - 1.5.23-5
- Rebuilt for Python 3.12
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.23-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.23-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 1.5.23-2
- Rebuilt for Python 3.11
* Thu Apr 28 2022 Petr Viktorin <pviktori@redhat.com> - 1.5.23-1
- Update to 1.5.23
- This version should not attempt to use the incompatible ffmpeg 5.0,
and fall back to another sound backend if available.
Resolves: RHBZ#2075965
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.16-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Sun Oct 10 2021 Benjamin A. Beasley <code@musicinmybrain.net> - 1.5.16-4
- Backport upstream patch to fix ExcludeArch (fix RHBZ#1877849)
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.16-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 1.5.16-2
- Rebuilt for Python 3.10
* Wed Apr 14 2021 Petr Viktorin <pviktori@redhat.com> - 1.5.16-1
- Update to 1.5.16
- Add a comment on how to handle unbundled "pypng"
- Suggest libEGL for new headless mode (experimental, undocumented)
- Remove patch that's now upstream
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.11-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Nov 25 2020 Petr Viktorin <pviktori@redhat.com> - 1.5.11-1
- Update to 1.5.11
* Wed Sep 09 2020 Petr Viktorin <pviktori@redhat.com> - 1.5.7-1
- Update to 1.5.7
- Switch to pyproject macros
- Run tests
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 1.4.6-3
- Rebuilt for Python 3.9
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

View file

@ -1 +1 @@
SHA512 (pyglet-1.4.6-repacked.tar.gz) = 20f3b5c762de1ae1247109a40af4c659f15ee2e900c44cd072dce6ff2cf0bfd909a84b4581addfe8870af9151e5cc90a06d88e1fbdaa282f8156f2bedd7c6e59
SHA512 (pyglet-2.0.10-repacked.tar.gz) = 8c780913435b1c17e43dcc99e729a2ea5d6a6e734cce642b8da82547f734cc9ce43732257e4f241eb3803a9edc941a96a762e869043260ff15adc84ba5c6d813