From 10ff631215775e1d89a639ad6312d03bc40839e1 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 5 Jul 2023 08:16:17 +0200 Subject: Merging upstream version 0.7.0. Signed-off-by: Daniel Baumann --- .github/workflows/tests.yml | 9 +++++++-- .gitignore | 1 + docs/changelog.rst | 35 +++++++++++++++++++++++++++++++++++ pydyf/__init__.py | 6 +++--- pyproject.toml | 1 + 5 files changed, 47 insertions(+), 5 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index d2057b0..89003af 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -8,9 +8,14 @@ jobs: strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] - python-version: ['3.7', '3.8', '3.9', '3.10', 'pypy-3.8'] + python-version: ['3.11'] + include: + - os: ubuntu-latest + python-version: '3.7' + - os: ubuntu-latest + python-version: 'pypy-3.8' steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 - uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} diff --git a/.gitignore b/.gitignore index 95a1136..ecd9e60 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ /docs/_build /tests/results +/dist/ __pycache__ .coverage diff --git a/docs/changelog.rst b/docs/changelog.rst index f652602..e116ac8 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -2,6 +2,41 @@ Changelog ========= +Version 0.7.0 +------------- + +Released on 2023-07-03. + +Dependencies: + +* Python 3.11 is supported and tested + +Bug fixes: + +* Fix size of fields for xref + +Backers and sponsors: + +* Castedo Ellerman +* Spacinov +* Kobalt +* Grip Angebotssoftware +* Crisp BV +* Manuel Barkhau +* SimonSoft +* Menutech +* KontextWork +* NCC Group +* René Fritz +* TrainingSparkle +* Healthchecks.io +* Moritz Mahringer +* Yanal-Yvez Fargialla +* Synapsium +* Piotr Horzycki +* Hammerbacher + + Version 0.6.0 ------------- diff --git a/pydyf/__init__.py b/pydyf/__init__.py index 2e589fe..3d0b122 100755 --- a/pydyf/__init__.py +++ b/pydyf/__init__.py @@ -9,7 +9,7 @@ from codecs import BOM_UTF16_BE from hashlib import md5 from math import ceil, log -VERSION = __version__ = '0.6.0' +VERSION = __version__ = '0.7.0' def _to_bytes(item): @@ -549,11 +549,11 @@ class PDF: object_.generation)) xref.append((1, self.current_position, 0)) - field2_size = ceil(log(self.current_position, 8)) + field2_size = ceil(log(self.current_position + 1, 256)) max_generation = max( object_.generation for object_ in self.objects) field3_size = ceil(log( - max(max_generation, len(compressed_objects)), 8)) + max(max_generation, len(compressed_objects)) + 1, 256)) xref_lengths = (1, field2_size, field3_size) xref_stream = b''.join( value.to_bytes(length, 'big') diff --git a/pyproject.toml b/pyproject.toml index a3dbea1..e26cbfe 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,6 +23,7 @@ classifiers = [ 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', + 'Programming Language :: Python :: 3.11', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', ] -- cgit v1.2.3