4 Commits

Author SHA256 Message Date
5a14b8350e Accepting request 1329157 from devel:languages:python
- update to 1.29.0:
  * :meth:`ImageSurface.get_data`: Return empty memoryview for
    empty image :pr:`418`
  * :meth:`ImageSurface.create_for_data`: support empty images
    :pr:`419`
  * Drop support for Python 3.9 :pr:`428`
  * Drop support for PyPy 3.10
  * Support multi-phase init :pr:`413`
  * Experimental support for free-threaded Python :pr:`430`
    :pr:`429`
  * Update dependencies (libpng, pixman) for the Windows wheels
    :pr:`431`
  * build: add "no-x11" option to disable X11 surface support
    :pr:`432` :issue:`420`
  * dev: support uv for development :pr:`433`

OBS-URL: https://build.opensuse.org/request/show/1329157
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pycairo?expand=0&rev=17
2026-01-27 15:06:45 +00:00
3fd7ee9a82 - update to 1.29.0:
* :meth:`ImageSurface.get_data`: Return empty memoryview for
    empty image :pr:`418`
  * :meth:`ImageSurface.create_for_data`: support empty images
    :pr:`419`
  * Drop support for Python 3.9 :pr:`428`
  * Drop support for PyPy 3.10
  * Support multi-phase init :pr:`413`
  * Experimental support for free-threaded Python :pr:`430`
    :pr:`429`
  * Update dependencies (libpng, pixman) for the Windows wheels
    :pr:`431`
  * build: add "no-x11" option to disable X11 surface support
    :pr:`432` :issue:`420`
  * dev: support uv for development :pr:`433`

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pycairo?expand=0&rev=34
2026-01-26 08:19:51 +00:00
d90f63cd69 Accepting request 1284631 from devel:languages:python
- Update to 1.28.0:
  * Changes:
    + Remove hypothesis test dependency
    + Release the input buffer passed to ImageSurface.create_for_data() when
      calling Surface.finish() already, not just when the underlying surface
      is destroyed
    + Return a PathDataType (int subtype) instead of int with Path.__iter__()
    + Emit a DeprecationWarning in case ImageSurface.get_data() is called on
      an already finished surface.
    + Emit a DeprecationWarning for the undocumented num_glyphs parameter in
      Context.glyph_extents(), Context.glyph_path(), Context.show_glyphs(),
      ScaledFont.glyph_extents()
  * Fixes:
    + Remove the executable bit from cairo/__init__.py
    + Remove usage of removed typing.ByteString to fix compatibility with
      Python 3.14.0a1
    + Drop support for Python 3.8
    + Port PEP517/wheel build from setuptools to meson-python.
    + meson: install the package metadata to .dist-info/METADATA instead
      of .egg-info

OBS-URL: https://build.opensuse.org/request/show/1284631
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-pycairo?expand=0&rev=16
2025-06-11 14:19:03 +00:00
e39fb1937f - Update to 1.28.0:
* Changes:
    + Remove hypothesis test dependency
    + Release the input buffer passed to ImageSurface.create_for_data() when
      calling Surface.finish() already, not just when the underlying surface
      is destroyed
    + Return a PathDataType (int subtype) instead of int with Path.__iter__()
    + Emit a DeprecationWarning in case ImageSurface.get_data() is called on
      an already finished surface.
    + Emit a DeprecationWarning for the undocumented num_glyphs parameter in
      Context.glyph_extents(), Context.glyph_path(), Context.show_glyphs(),
      ScaledFont.glyph_extents()
  * Fixes:
    + Remove the executable bit from cairo/__init__.py
    + Remove usage of removed typing.ByteString to fix compatibility with
      Python 3.14.0a1
    + Drop support for Python 3.8
    + Port PEP517/wheel build from setuptools to meson-python.
    + meson: install the package metadata to .dist-info/METADATA instead
      of .egg-info

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pycairo?expand=0&rev=32
2025-06-11 06:17:26 +00:00
4 changed files with 66 additions and 19 deletions

Binary file not shown.

3
pycairo-1.29.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f3f7fde97325cae80224c09f12564ef58d0d0f655da0e3b040f5807bd5bd3142
size 665871

View File

@@ -1,3 +1,46 @@
-------------------------------------------------------------------
Mon Jan 26 08:19:39 UTC 2026 - Dirk Müller <dmueller@suse.com>
- update to 1.29.0:
* :meth:`ImageSurface.get_data`: Return empty memoryview for
empty image :pr:`418`
* :meth:`ImageSurface.create_for_data`: support empty images
:pr:`419`
* Drop support for Python 3.9 :pr:`428`
* Drop support for PyPy 3.10
* Support multi-phase init :pr:`413`
* Experimental support for free-threaded Python :pr:`430`
:pr:`429`
* Update dependencies (libpng, pixman) for the Windows wheels
:pr:`431`
* build: add "no-x11" option to disable X11 surface support
:pr:`432` :issue:`420`
* dev: support uv for development :pr:`433`
-------------------------------------------------------------------
Wed Jun 11 05:52:55 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 1.28.0:
* Changes:
+ Remove hypothesis test dependency
+ Release the input buffer passed to ImageSurface.create_for_data() when
calling Surface.finish() already, not just when the underlying surface
is destroyed
+ Return a PathDataType (int subtype) instead of int with Path.__iter__()
+ Emit a DeprecationWarning in case ImageSurface.get_data() is called on
an already finished surface.
+ Emit a DeprecationWarning for the undocumented num_glyphs parameter in
Context.glyph_extents(), Context.glyph_path(), Context.show_glyphs(),
ScaledFont.glyph_extents()
* Fixes:
+ Remove the executable bit from cairo/__init__.py
+ Remove usage of removed typing.ByteString to fix compatibility with
Python 3.14.0a1
+ Drop support for Python 3.8
+ Port PEP517/wheel build from setuptools to meson-python.
+ meson: install the package metadata to .dist-info/METADATA instead
of .egg-info
-------------------------------------------------------------------
Mon Jul 29 14:49:40 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-pycairo
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2026 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,16 +19,16 @@
%{?sle15_python_module_pythons}
%define oldpython python
Name: python-pycairo
Version: 1.26.1
Version: 1.29.0
Release: 0
Summary: Python Bindings for Cairo
License: LGPL-2.1-or-later OR MPL-1.1
URL: https://github.com/pygobject/pycairo
Source: %{url}/releases/download/v%{version}/pycairo-%{version}.tar.gz
BuildRequires: %{python_module devel}
BuildRequires: %{python_module devel >= 3.9}
BuildRequires: %{python_module meson-python}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: cairo-devel >= 1.15.10
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -74,28 +74,32 @@ packages that depend on Pycairo.
%autosetup -n pycairo-%{version} -p1
%build
%python_build
%{python_expand \
dir="build.$python"
mkdir $dir
cat << EOF > $dir/native-file.ini
[binaries]
python = '$python'
EOF
meson setup . $dir -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md -Dtests=false -Dwheel=false --prefix=/usr --native-file=$dir/native-file.ini
ninja -C $dir
}
%install
%python_install
# Incorrectly installed by a python38-setuptools vendored distutils
# which does not play well with the distro patched python38.
# Later flavors installed the correct files into lib64 as well
if [ "%{_libdir}" != "%{_prefix}/lib" -a -d %{buildroot}%{_prefix}/lib/pkgconfig ]; then
rm -r %{buildroot}%{_prefix}/lib/pkgconfig
fi
%python_expand meson install -C build.$python --destdir %{buildroot}
%python_expand %fdupes %{buildroot}%{$python_sitearch}
%check
# this is not the deprecated setuptools test call but a custom setup compiling stuff and running pytest
%python_exec setup.py test
mv cairo cairo-do-not-import-from
%pytest_arch
mv cairo-do-not-import-from cairo
%files %{python_files}
%doc NEWS docs
%license COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1
%{python_sitearch}/cairo/
%exclude %{python_sitearch}/cairo/include
%{python_sitearch}/pycairo-*.egg-info
%{python_sitearch}/pycairo-%{version}.dist-info
%files %{python_files devel}
%license COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1