Compare commits

..

No commits in common. "rawhide" and "f34" have entirely different histories.

5 changed files with 102 additions and 198 deletions

4
.gitignore vendored
View file

@ -1,9 +1,9 @@
/v0.19.2.tar.gz
/v0.21.tar.gz
/v0.22.tar.gz
/weasyprint-0.22.tar.gz
/weasyprint-0.39.tar.gz
/WeasyPrint-*
/WeasyPrint-*.tar.gz
/weasyprint-*.tar.gz
/*.src.rpm
/results_weasyprint
/weasyprint-??.?

View file

@ -1 +1 @@
SHA512 (weasyprint-69.0.tar.gz) = fb56d7f6173f8a67f8ef4c31408c03625b0a774d0efde003f779e3da054737c88afe9f44ee40b6dda5fc92cfacfa5709d4d96bf1a112862d309eaf2d93881ef6
SHA512 (WeasyPrint-52.5.tar.gz) = 0ce86db000adef95fabfb335c069ad2a602ed98056219cedde905c550b04b10b0881d72fbdd38a48fae4e263825f5fbd8a70ce13932083afb8930eacc5817fb5

View file

@ -0,0 +1,15 @@
diff --git a/weasyprint/tests/test_pdf.py b/weasyprint/tests/test_pdf.py
index 287bcb7..11cf6d9 100644
--- a/weasyprint/tests/test_pdf.py
+++ b/weasyprint/tests/test_pdf.py
@@ -651,8 +651,8 @@ def test_document_info():
assert info.get_value('Keywords', '(.*)') == b'(html, css, pdf)'
assert info.get_value('Subject', '(.*)') == (
b'<FEFF0042006C0061006820260020>')
- assert info.get_value('CreationDate', '(.*)') == b"(20110421230000+00'00)"
- assert info.get_value('ModDate', '(.*)') == b"(20130721234600+01'00)"
+ assert info.get_value('CreationDate', '(.*)') == b"(20110421230000+00'00')"
+ assert info.get_value('ModDate', '(.*)') == b"(20130721234600+01'00')"
@assert_no_logs

View file

@ -0,0 +1,30 @@
diff --git a/setup.cfg b/setup.cfg
index 2afc3e2..170991f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -61,8 +61,6 @@ install_requires =
tests_require =
pytest-runner
pytest-cov
- pytest-flake8
- pytest-isort
python_requires = >= 3.6
[options.entry_points]
@@ -80,8 +78,6 @@ doc =
test =
pytest-runner
pytest-cov
- pytest-flake8
- pytest-isort
[bdist_wheel]
python-tag = py3
@@ -94,7 +90,6 @@ build-dir = docs/_build
test = pytest
[tool:pytest]
-addopts = --flake8 --isort
norecursedirs = build dist .cache .eggs .git
[coverage:run]

View file

@ -1,30 +1,52 @@
%global modname weasyprint
%global srcname weasyprint
%global srcname WeasyPrint
Name: weasyprint
Version: 69.0
Release: 2%{?dist}
Version: 52.5
Release: 1%{?dist}
Summary: Utility to render HTML and CSS to PDF
License: BSD-3-Clause
URL: https://weasyprint.org
Source0: %{pypi_source weasyprint}
License: BSD
URL: https://weasyprint.org/
Source0: %pypi_source
Patch0: %{name}-disable-flake8-isort-for-pytest.patch
# cairo creates PDFs according to the PDF 1.4 specification which requires a
# trailing apostrophe. cairo 1.17.4 added the missing apostrophe.
# see also https://gitlab.freedesktop.org/cairo/cairo/-/issues/450
Patch1: %{name}-cairo-1174-pdf-dates.patch
BuildArch: noarch
BuildRequires: python3-devel
BuildRequires: pyproject-rpm-macros
# used as "build-backend" in pyproject.toml but not detected by Fedora's
# macros to generate build requirements
BuildRequires: python3dist(flit-core)
BuildRequires: python3-pillow >= 4.0.0
# upstream installation docs say:
# "setuptools ≥ 30.3.0 is required to install WeasyPrint from wheel,
# but 39.2.0 is required to build the package or install from source."
BuildRequires: python3-setuptools >= 39.2.0
BuildRequires: python3-pytest
BuildRequires: python3-pytest-cov
BuildRequires: python3-pytest-runner
BuildRequires: /usr/bin/pathfix.py
# requirements for testing
BuildRequires: dejavu-fonts-all
BuildRequires: google-noto-emoji-fonts
BuildRequires: ghostscript
# https://doc.courtbouillon.org/weasyprint/latest/first_steps.html
BuildRequires: pango >= 1.44.0
BuildRequires: python3dist(pytest)
BuildRequires: python3dist(pytest-xdist)
BuildRequires: cairo >= 1.15.4
BuildRequires: dejavu-sans-fonts
BuildRequires: gdk-pixbuf2 >= 2.25.0
BuildRequires: gdk-pixbuf2-modules
# gdk-pixbuf2 does not require libjpeg directly but tests try to load jpg
# images via gdk-pixbuf2
BuildRequires: libjpeg-turbo
BuildRequires: pango >= 1.38.0
BuildRequires: python3-cairosvg >= 2.4.0
BuildRequires: python3-cssselect2 >= 0.1
BuildRequires: python3-cairocffi >= 0.9.0
BuildRequires: python3-html5lib >= 0.999999999
# upstream requires > 0.9.1 (actually >= 0.8, != 0.9.1), see
# https://github.com/Kozea/WeasyPrint/pull/989#issuecomment-551845041
# We need pyhen's hyphenation dicts (instead of system-wide dicts) otherwise
# there will be test failures.
BuildRequires: python3-pyphen > 0.9.1
BuildRequires: python3-tinycss2 >= 1.0
Requires: python3-weasyprint = %{version}-%{release}
@ -35,7 +57,9 @@ for printing.
%package -n python3-weasyprint
Summary: Python library to render HTML and CSS to PDF
Requires: pango >= 1.44.0
Requires: cairo >= 1.15.4
Requires: pango >= 1.38.0
Requires: gdk-pixbuf2 >= 2.25.0
# other Python dependencies will be picked up automatically
# Weasyprint will fail if no fonts are installed. There's no way to know
# what fonts the user would actually want, but require a few common ones
@ -49,19 +73,23 @@ The WeasyPrint Python library is a rendering engine for HTML and CSS that
can export to PDF. It aims to support web standards for printing.
%prep
%autosetup -p1 -n %{srcname}-%{version}
%generate_buildrequires
%pyproject_buildrequires -r
%autosetup -p1 -n WeasyPrint-%{version}
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" .
%build
%pyproject_wheel
%py3_build
%install
%pyproject_install
%py3_install
%check
%pytest -n auto
# Some tests fail due to cairo 1.17.4 but upstream is not interested in fixing
# these as they are moving away from cairo. At the same time there was some
# indication on the WeasyPrint mailing list that the actual issue is already
# present with WeasyPrint 1.16 (just not in the test suite).
# I hope to fix this anyway but for now disable the failing tests.
# Upstream tracking issue: https://github.com/Kozea/WeasyPrint/issues/1291
pytest-3 -k "not test_text and not test_float and not test_table_vertical_align"
# do not ship tests
rm -rf %{buildroot}%{python3_sitelib}/%{modname}/tests
@ -73,179 +101,10 @@ rm -rf %{buildroot}%{python3_sitelib}/%{modname}/tests
%files -n python3-weasyprint
%license LICENSE
%doc README.rst
%{python3_sitelib}/%{modname}-%{version}.dist-info/
%{python3_sitelib}/%{srcname}-%{version}-*/
%{python3_sitelib}/%{modname}/
%changelog
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 69.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Thu Jun 11 2026 Felix Schwarz <fschwarz@fedoraproject.org> - 69.0-1
- update to 69.0
* Fri Jun 05 2026 Python Maint <python-maint@redhat.com> - 68.1-2
- Rebuilt for Python 3.15
* Sat Feb 07 2026 Felix Schwarz <fschwarz@fedoraproject.org> - 68.1-1
- update to 68.1
* Tue Jan 20 2026 Felix Schwarz <fschwarz@fedoraproject.org> - 68.0-1
- update to 68.0
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 67.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Wed Dec 03 2025 Felix Schwarz <fschwarz@fedoraproject.org> - 67.0-1
- update to 67.0
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 66.0-3
- Rebuilt for Python 3.14.0rc3 bytecode
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 66.0-2
- Rebuilt for Python 3.14.0rc2 bytecode
* Mon Jul 28 2025 Felix Schwarz <fschwarz@fedoraproject.org> - 66.0-1
- update to 66.0
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 65.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Tue Jun 03 2025 Python Maint <python-maint@redhat.com> - 65.1-2
- Rebuilt for Python 3.14
* Mon Apr 14 2025 Felix Schwarz <fschwarz@fedoraproject.org> - 65.1-1
- update to 65.1
* Sun Mar 23 2025 Felix Schwarz <fschwarz@fedoraproject.org> - 65.0-1
- update to 65.0
* Wed Mar 05 2025 Felix Schwarz <fschwarz@fedoraproject.org> - 64.1-1
- update to 64.1
* Thu Jan 30 2025 Felix Schwarz <fschwarz@fedoraproject.org> - 64.0-1
- update to 64.0
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 63.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Sat Jan 11 2025 Felix Schwarz <fschwarz@fedoraproject.org> - 63.1-1
- update to 63.1
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 62.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jun 24 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 62.3-1
- update to 62.3
* Sat Jun 08 2024 Python Maint <python-maint@redhat.com> - 62.2-2
- Rebuilt for Python 3.13
* Tue Jun 04 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 62.2-1
- update to 62.2
* Mon May 06 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 62.1-1
- update to 62.1
* Thu May 02 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 62.0-1
- update to 62.0
* Sat Mar 09 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 61.2-1
- update to 61.2
* Mon Feb 26 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 61.1-1
- update to 61.1
* Mon Feb 12 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 61.0-1
- update to 61.0
* Thu Jan 25 2024 Felix Schwarz <fschwarz@fedoraproject.org> - 60.2-2
- use just flit-core as build dependency
* Tue Dec 12 2023 Felix Schwarz <fschwarz@fedoraproject.org> - 60.2-1
- update to 60.2
* Thu Oct 05 2023 Felix Schwarz <fschwarz@fedoraproject.org> - 60.1-1
- update to 60.1
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 59.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sun Jul 09 2023 Felix Schwarz <fschwarz@fedoraproject.org> - 59.0-2
- add patch so the test suite passes for Python 3.12
* Thu May 11 2023 Felix Schwarz <fschwarz@fedoraproject.org> - 59.0-1
- update to 59.0
* Sat Apr 15 2023 Felix Schwarz <fschwarz@fedoraproject.org> - 58.1-2
- SPDX migration
- make tests pass with pydyf 0.6
* Tue Mar 07 2023 Felix Schwarz <fschwarz@fedoraproject.org> - 58.1-1
- update to 58.1
* Fri Feb 17 2023 Felix Schwarz <fschwarz@fedoraproject.org> - 58.0-1
- update to 58.0
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 57.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Dec 27 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 57.2-1
- update to 57.2
* Sat Nov 05 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 57.1-1
- update to 57.1
* Mon Jul 25 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 56.1-1
- update to 56.1
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 56.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jul 07 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 56.0-1
- update to 56.0
* Mon Jun 20 2022 Python Maint <python-maint@redhat.com> - 55.0-2
- Rebuilt for Python 3.11
* Thu May 12 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 55.0-1
- update to 55.0
* Mon Apr 04 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 54.3-1
- update to 54.3
* Tue Mar 01 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 54.2-1
- update to 54.2
* Mon Jan 31 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 54.1-1
- update to 54.1
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 54.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Sat Jan 08 2022 Felix Schwarz <fschwarz@fedoraproject.org> - 54.0-1
- update to 54.0
* Sun Nov 14 2021 Felix Schwarz <fschwarz@fedoraproject.org> - 53.4-1
- update to 53.4
* Fri Sep 10 2021 Felix Schwarz <fschwarz@fedoraproject.org> - 53.3-1
- update to 53.3
* Fri Aug 27 2021 Felix Schwarz <fschwarz@fedoraproject.org> - 53.2-1
- update to 53.2
* Sun Aug 22 2021 Felix Schwarz <fschwarz@fedoraproject.org> - 53.1-1
- update to 53.1
* Sun Aug 01 2021 Felix Schwarz <fschwarz@fedoraproject.org> - 53.0-1
- update to 53.0
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 52.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 52.5-2
- Rebuilt for Python 3.10
* Sun Apr 18 2021 Felix Schwarz <fschwarz@fedoraproject.org> - 52.5-1
- update to 52.5