Compare commits
4 commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 352f8320c9 | |||
| 359781823b | |||
| 366260f46f | |||
| 4ceb21d0ca |
3 changed files with 189 additions and 4 deletions
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (weasyprint-57.2.tar.gz) = 11b9469d37820439b1d0dad0117dd1c9649011c71aabb0e27008b303e5c851215ce9f0b271da9a74d614e54cb23f9c6036b6e094016b5688f6b700fb7444338f
|
||||
SHA512 (weasyprint-58.1.tar.gz) = 75a3512ce02551c2e8247cf7982d3db683c8aef92215e5b4584ca20d5e3f6a4603c65f98e8fcf513b8aff82ebedf221da7dd243e344c9d3626eaa7907fdbd5c2
|
||||
|
|
|
|||
173
weasyprint-make-tests-pass-with-pydyf-06.patch
Normal file
173
weasyprint-make-tests-pass-with-pydyf-06.patch
Normal file
|
|
@ -0,0 +1,173 @@
|
|||
From e49d9555090ecec4f76b31f7beba18975f471211 Mon Sep 17 00:00:00 2001
|
||||
From: Guillaume Ayoub <guillaume@courtbouillon.org>
|
||||
Date: Tue, 21 Mar 2023 14:58:47 +0100
|
||||
Subject: [PATCH] Make tests pass with pydyf 0.6.0
|
||||
|
||||
---
|
||||
docs/first_steps.rst | 2 +-
|
||||
pyproject.toml | 2 +-
|
||||
tests/test_pdf.py | 40 ++++++++++++++++++++--------------------
|
||||
3 files changed, 22 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/docs/first_steps.rst b/docs/first_steps.rst
|
||||
index 85c3ec857..e2aacefe8 100644
|
||||
--- a/docs/first_steps.rst
|
||||
+++ b/docs/first_steps.rst
|
||||
@@ -11,7 +11,7 @@ WeasyPrint |version| depends on:
|
||||
|
||||
* Python_ ≥ 3.7.0
|
||||
* Pango_ ≥ 1.44.0
|
||||
-* pydyf_ ≥ 0.5.0
|
||||
+* pydyf_ ≥ 0.6.0
|
||||
* CFFI_ ≥ 0.6
|
||||
* html5lib_ ≥ 1.1
|
||||
* tinycss2_ ≥ 1.0.0
|
||||
diff --git a/pyproject.toml b/pyproject.toml
|
||||
index 1c1495473..570aef8af 100644
|
||||
--- a/pyproject.toml
|
||||
+++ b/pyproject.toml
|
||||
@@ -12,7 +12,7 @@ requires-python = '>=3.7'
|
||||
readme = {file = 'README.rst', content-type = 'text/x-rst'}
|
||||
license = {file = 'LICENSE'}
|
||||
dependencies = [
|
||||
- 'pydyf >=0.5.0',
|
||||
+ 'pydyf >=0.6.0',
|
||||
'cffi >=0.6',
|
||||
'html5lib >=1.1',
|
||||
'tinycss2 >=1.0.0',
|
||||
diff --git a/tests/test_pdf.py b/tests/test_pdf.py
|
||||
index 3bcc360ac..3d4dcdd0a 100644
|
||||
--- a/tests/test_pdf.py
|
||||
+++ b/tests/test_pdf.py
|
||||
@@ -26,7 +26,7 @@
|
||||
def test_page_size_zoom(zoom):
|
||||
pdf = FakeHTML(string='<style>@page{size:3in 4in').write_pdf(zoom=zoom)
|
||||
width, height = int(216 * zoom), int(288 * zoom)
|
||||
- assert f'/MediaBox [ 0 0 {width} {height} ]'.encode() in pdf
|
||||
+ assert f'/MediaBox [0 0 {width} {height}]'.encode() in pdf
|
||||
|
||||
|
||||
@assert_no_logs
|
||||
@@ -57,7 +57,7 @@ def test_bookmarks_2():
|
||||
@assert_no_logs
|
||||
def test_bookmarks_3():
|
||||
pdf = FakeHTML(string='<h1>a nbsp…</h1>').write_pdf()
|
||||
- assert re.findall(b'/Title <(.*)>', pdf) == [
|
||||
+ assert re.findall(b'/Title <(\\w*)>', pdf) == [
|
||||
b'feff006100a0006e0062007300702026']
|
||||
|
||||
|
||||
@@ -327,11 +327,11 @@ def test_links():
|
||||
''', base_url=resource_filename('<inline HTML>')).write_pdf()
|
||||
|
||||
uris = re.findall(b'/URI \\((.*)\\)', pdf)
|
||||
- types = re.findall(b'/S (.*)', pdf)
|
||||
- subtypes = re.findall(b'/Subtype (.*)', pdf)
|
||||
+ types = re.findall(b'/S (/\\w*)', pdf)
|
||||
+ subtypes = re.findall(b'/Subtype (/\\w*)', pdf)
|
||||
rects = [
|
||||
[float(number) for number in match.split()] for match in re.findall(
|
||||
- b'/Rect \\[ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+) \\]', pdf)]
|
||||
+ b'/Rect \\[([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+)\\]', pdf)]
|
||||
|
||||
# 30pt wide (like the image), 20pt high (like line-height)
|
||||
assert uris.pop(0) == b'https://weasyprint.org'
|
||||
@@ -349,7 +349,7 @@ def test_links():
|
||||
assert subtypes.pop(0) == b'/Link'
|
||||
assert b'/Dest (lipsum)' in pdf
|
||||
link = re.search(
|
||||
- b'\\(lipsum\\) \\[ \\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+) ]',
|
||||
+ b'\\(lipsum\\) \\[\\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+)]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in link.split()] == [0, TOP, 0]
|
||||
assert rects.pop(0) == [10, TOP - 100, 10 + 32, TOP - 100 - 20]
|
||||
@@ -362,7 +362,7 @@ def test_links():
|
||||
assert subtypes.pop(0) == b'/Link'
|
||||
assert b'/Dest (hello)' in pdf
|
||||
link = re.search(
|
||||
- b'\\(hello\\) \\[ \\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+) ]',
|
||||
+ b'\\(hello\\) \\[\\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+)]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in link.split()] == [0, TOP - 200, 0]
|
||||
assert rects.pop(0) == [0, TOP, RIGHT, TOP - 30]
|
||||
@@ -387,7 +387,7 @@ def test_relative_links_no_height():
|
||||
string='<a href="../lipsum" style="display: block"></a>a',
|
||||
base_url='https://weasyprint.org/foo/bar/').write_pdf()
|
||||
assert b'/S /URI\n/URI (https://weasyprint.org/foo/lipsum)'
|
||||
- assert f'/Rect [ 0 {TOP} {RIGHT} {TOP} ]'.encode() in pdf
|
||||
+ assert f'/Rect [0 {TOP} {RIGHT} {TOP}]'.encode() in pdf
|
||||
|
||||
|
||||
@assert_no_logs
|
||||
@@ -397,7 +397,7 @@ def test_relative_links_missing_base():
|
||||
string='<a href="../lipsum" style="display: block"></a>a',
|
||||
base_url=None).write_pdf()
|
||||
assert b'/S /URI\n/URI (../lipsum)'
|
||||
- assert f'/Rect [ 0 {TOP} {RIGHT} {TOP} ]'.encode() in pdf
|
||||
+ assert f'/Rect [0 {TOP} {RIGHT} {TOP}]'.encode() in pdf
|
||||
|
||||
|
||||
@assert_no_logs
|
||||
@@ -421,11 +421,11 @@ def test_relative_links_internal():
|
||||
base_url=None).write_pdf()
|
||||
assert b'/Dest (lipsum)' in pdf
|
||||
link = re.search(
|
||||
- b'\\(lipsum\\) \\[ \\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+) ]',
|
||||
+ b'\\(lipsum\\) \\[\\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+)]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in link.split()] == [0, TOP, 0]
|
||||
rect = re.search(
|
||||
- b'/Rect \\[ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+) \\]',
|
||||
+ b'/Rect \\[([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+)\\]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in rect.split()] == [0, TOP, RIGHT, TOP]
|
||||
|
||||
@@ -437,11 +437,11 @@ def test_relative_links_anchors():
|
||||
base_url=None).write_pdf()
|
||||
assert b'/Dest (lipsum)' in pdf
|
||||
link = re.search(
|
||||
- b'\\(lipsum\\) \\[ \\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+) ]',
|
||||
+ b'\\(lipsum\\) \\[\\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+)]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in link.split()] == [0, TOP, 0]
|
||||
rect = re.search(
|
||||
- b'/Rect \\[ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+) \\]',
|
||||
+ b'/Rect \\[([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+)\\]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in rect.split()] == [0, TOP, RIGHT, TOP]
|
||||
|
||||
@@ -474,11 +474,11 @@ def test_missing_links():
|
||||
assert b'/Dest (lipsum)' in pdf
|
||||
assert len(logs) == 1
|
||||
link = re.search(
|
||||
- b'\\(lipsum\\) \\[ \\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+) ]',
|
||||
+ b'\\(lipsum\\) \\[\\d+ 0 R /XYZ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+)]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in link.split()] == [0, TOP - 15, 0]
|
||||
rect = re.search(
|
||||
- b'/Rect \\[ ([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+) \\]',
|
||||
+ b'/Rect \\[([\\d\\.]+ [\\d\\.]+ [\\d\\.]+ [\\d\\.]+)\\]',
|
||||
pdf).group(1)
|
||||
assert [float(number) for number in rect.split()] == [
|
||||
0, TOP, RIGHT, TOP - 15]
|
||||
@@ -495,8 +495,8 @@ def test_anchor_multiple_pages():
|
||||
<a href="#lipsum"></a>
|
||||
</div>
|
||||
''', base_url=None).write_pdf()
|
||||
- first_page, = re.findall(b'/Kids \\[ (\\d+) 0 R', pdf)
|
||||
- assert b'/Names [ (lipsum) [ ' + first_page in pdf
|
||||
+ first_page, = re.findall(b'/Kids \\[(\\d+) 0 R', pdf)
|
||||
+ assert b'/Names [(lipsum) [' + first_page in pdf
|
||||
|
||||
|
||||
@assert_no_logs
|
||||
@@ -717,6 +717,6 @@ def test_bleed(style, media, bleed, trim):
|
||||
<style>@page { %s }</style>
|
||||
<body>test
|
||||
''' % style).write_pdf()
|
||||
- assert '/MediaBox [ {} {} {} {} ]'.format(*media).encode() in pdf
|
||||
- assert '/BleedBox [ {} {} {} {} ]'.format(*bleed).encode() in pdf
|
||||
- assert '/TrimBox [ {} {} {} {} ]'.format(*trim).encode() in pdf
|
||||
+ assert '/MediaBox [{} {} {} {}]'.format(*media).encode() in pdf
|
||||
+ assert '/BleedBox [{} {} {} {}]'.format(*bleed).encode() in pdf
|
||||
+ assert '/TrimBox [{} {} {} {}]'.format(*trim).encode() in pdf
|
||||
|
|
@ -2,13 +2,15 @@
|
|||
%global srcname weasyprint
|
||||
|
||||
Name: weasyprint
|
||||
Version: 57.2
|
||||
Version: 58.1
|
||||
Release: 2%{?dist}
|
||||
Summary: Utility to render HTML and CSS to PDF
|
||||
|
||||
License: BSD
|
||||
License: BSD-3-Clause
|
||||
URL: https://weasyprint.org/
|
||||
Source0: %pypi_source
|
||||
# commit present in upstream git for WeasyPrint 59+
|
||||
Patch0: %{name}-make-tests-pass-with-pydyf-06.patch
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
|
|
@ -58,7 +60,7 @@ can export to PDF. It aims to support web standards for printing.
|
|||
%pyproject_install
|
||||
|
||||
%check
|
||||
pytest-3
|
||||
%pytest
|
||||
# do not ship tests
|
||||
rm -rf %{buildroot}%{python3_sitelib}/%{modname}/tests
|
||||
|
||||
|
|
@ -74,6 +76,16 @@ rm -rf %{buildroot}%{python3_sitelib}/%{modname}/tests
|
|||
%{python3_sitelib}/%{modname}/
|
||||
|
||||
%changelog
|
||||
* 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
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue