Releases: py-pdf/pypdf
Version 3.6.0, 2023-03-18
What's Changed
New Features (ENH)
- Extend PdfWriter.append() to PageObjects (#1704) by @pubpub-zz
- Support qualified names in update_page_form_field_values (#1695) by @xi
Robustness (ROB)
- Tolerate streams without length field (#1717) by @pubpub-zz
- Accept DictionaryObject in /D of NamedDestination (#1720) by @pubpub-zz
- Widths def in cmap calls IndirectObject (#1719) by @pubpub-zz
New Contributors
Full Changelog: 3.5.2...3.6.0
3.5.2
What's Changed
Bug Fixes (BUG)
- compress_content_stream not readable in Adobe Acrobat (#1698) by @pubpub-zz
- Pass logging parameters correctly in set_need_appearances_writer (#1697) by @rolisz
- Write /Root/AcroForm in set_need_appearances_writer (#1639) by @cryzed
Robustness (ROB)
- Allow more whitespaces within linearized file (#1701) by @pubpub-zz
New Contributors
Full Changelog: 3.5.1...3.5.2
Version 3.5.1, 2023-03-05
What's Changed
Robustness (ROB)
- Some attributes not copied in DictionaryObject._clone (#1635) by @pubpub-zz
- Allow merging multiple time pages with annots (#1624) by @pubpub-zz
Testing (TST)
- Replace pytest.mark.external by enable_socket (#1657)
Documentation (DOC)
- Fix misuse of the word 'operand' in the docs (#1684) by @joshuagerstein
New Contributors
- @joshuagerstein made their first contribution in #1684
Full Changelog: 3.5.0...3.5.1
Version 3.5.0, 2023-02-26
What's Changed
New Features (ENH)
- Add reader.attachments public interface (#1611, #1661) by @pubpub-zz
- Add PdfWriter.remove_objects_from_page(page: PageObject, to_delete: ObjectDeletionFlag) (#1648) by @pubpub-zz
- Allow free-text annotation to have transparent border/background (#1664)
Bug Fixes (BUG)
- Allow decryption with empty password for AlgV5 (#1663) by @christopher5106
- Let PdfWriter.pages return PageObject after calling
clone_document_from_reader()
(#1613) by @pubpub-zz - Invalid font pointed during merge_resources (#1641) by @pubpub-zz
Robustness (ROB)
- Cope with invalid objects in IndirectObject.clone (#1637) by @pubpub-zz
- Improve tolerance to invalid Names/Dests (#1658) by @pubpub-zz
- Decode encoded values in get_fields (#1636) by @pubpub-zz
- Let PdfWriter.merge cope with missing "/Fields" (#1628) by @pubpub-zz
Documentation (DOC)
- paramter -> parameter (#1634) by @engpetermwangi
- merge_transformed_page() (#1647) by @paternal
Tests (TST)
- Mark new external tests appropriately (#1632) by @dkg
- Add tests for page labels (#1642) by @pubpub-zz
New Contributors
- @engpetermwangi made their first contribution in #1634
- @paternal made their first contribution in #1647
- @christopher5106 made their first contribution in #1663
Full Changelog: 3.4.1...3.5.0
3.4.1
What's Changed
Bug Fixes (BUG)
- Switch from trimbox to cropbox when merging pages (#1622)
- Text extraction not working with one glyph to char sequence (#1620) by @pubpub-zz
Robustness (ROB)
- Fix 2 cases of "object has no attribute 'indirect_reference'" (#1616) by @pubpub-zz
Testing (TST)
- Add multiple retry on get_url for external PDF downloads (#1626) by @pubpub-zz
Documentation (DOC)
- Complete unfinished sentence (#1617) by @daankoning
New Contributors
- @daankoning made their first contribution in #1617
Full Changelog: 3.4.0...3.4.1
3.4.0
What's Changed
Version 3.4.0, 2023-02-05
NOTICE: pypdf changed the way it represents numbers parsed from PDF files.
pypdf<3.4.0 represented numbers as Decimal, pypdf>=3.4.0 represents them as
floats. Several other PDF libraries to this, as well as many PDF viewers.
We hope to fix issues with too high precision like this and get a speed boost.
In case your PDF documents rely on more than 18 decimals of precision you
should check if it still works as expected.
To clarify: This does not affect the text shown in PDF documents, even if the text are numbers.
It affects numbers used by the PDF document, e.g. when graphics are drawn on the PDF
or very exact positions are used. Typically, 5 decimals should be enough.
New Features (ENH)
- Enable merging forms with overlapping names (#1553) by @pubpub-zz
- Add 'over' parameter to merge_transformend_page & co (#1567) by @pubpub-zz
Bug Fixes (BUG)
- Fix getter of the PageObject.rotation property with an indirect object (#1602) by @mitchelljkotler
- Restore merge_transformed_page & co (#1567) by @pubpub-zz
- Replace decimal by float (#1563, #1608) by @pubpub-zz
Robustness (ROB)
- PdfWriter.remove_images: /Contents might not be in page_ref (#1598)
Developer Experience (DEV)
Tests (TST)
- Mark reader test as external (#1575) by @dkg
- Unlink test output once successfully written (#1579) by @dkg
New Contributors
- @mitchelljkotler made their first contribution in #1602
Full Changelog: 3.3.0...3.4.0
Version 3.3.0, 2023-01-22
What's Changed
New Features (ENH)
- Add page label support to PdfWriter (#1558) by @lorenzomanini
- Accept inline images with space before EI (#1552) by @pubpub-zz
- Add circle annotation support (#1556)
- Add polygon annotation support (#1557)
- Make merging pages produce a deterministic PDF (#1542, #1543) by @huonw
Bug Fixes (BUG)
- Fix error in cmap extraction (#1544) by @pubpub-zz
- Remove erroneous assertion check (#1564) by @pubpub-zz
- Fix dictionary access of optional page label keys (#1562)
Robustness (ROB)
Documentation (DOC)
- Document PaperSize class (#1550) by @SandroPanchame
Developer Experience (DEV)
New Contributors
- @lorenzomanini made their first contribution in #1558
- @rraval made their first contribution in #1521
- @huonw made their first contribution in #1543
Full Changelog: 3.2.1...3.3.0
Version 3.2.1, 2023-01-08
What's Changed
Bug Fixes (BUG)
- Accept hierarchical fields (#1529) by @pubpub-zz
Documentation (DOC)
- Use google style docstrings (#1534)
- Fix linked markdown documents (#1537) by @abyesilyurt
Developer Experience (DEV)
- Update docs config (#1535)
Version 3.2.0, 2022-12-31
What's Changed
Performance Improvement (PI)
- Help the specializing adpative interpreter (#1522)
New Features (ENH)
- Add support for page labels (#1519)
Bug Fixes (BUG)
- upgrade clone_document_root (#1520) by @pubpub-zz
Miscellaneous
- DOC: Fix migration guide link by @abyesilyurt in #1516
- MAINT: Minor Improvements by @robbiebusinessacc in #1523
New Contributors
- @abyesilyurt made their first contribution in #1516
- @robbiebusinessacc made their first contribution in #1523
Full Changelog: 3.1.0...3.2.0
Version 3.1.0, 2022-12-23
What's Changed
Move PyPDF2 to pypdf (#1513). This now it's all lowercase, no number in the
name. For installation and for import. PyPDF2 will no longer receive updates.
The community should move back to its roots (pydf).
Full Changelog: 3.0.0...3.1.0