Releases: py-pdf/pypdf
Releases · py-pdf/pypdf
Version 1.27.11, 2022-05-02
What's Changed
Bug Fixes (BUG)
- Incorrectly issued xref warning/exception (#855)
Full Changelog: 1.27.10...1.27.11
Version 1.27.10, 2022-05-01
What's Changed
Robustness (ROB)
- Handle missing destinations in reader (#840)
- warn-only in readStringFromStream (#837)
- Fix corruption in startxref or xref table (#788 and #830)
Documentation (DOC)
- Project Governance (#799)
- History of PyPDF2
- PDF feature/version support (#816)
- More details on text parsing issues (#815)
Developer Experience (DEV)
- Add benchmark command to Makefile
- Ignore IronPython parts for code coverage (#826)
Maintenance (MAINT)
Testing (TST)
- Use external repository for larger/more PDFs for testing (#820)
- Swap incorrect test names (#838)
- Add test for PdfFileReader and page properties (#835)
- Add tests for PyPDF2.generic (#831)
- Add tests for utils, form fields, PageRange (#827)
- Add test for ASCII85Decode (#825)
- Add test for FlateDecode (#823)
- Add test for filters.ASCIIHexDecode (#822)
Code Style (STY)
- Apply pre-commit (black, isort) + use snake_case variables (#832)
- Remove debug code (#828)
- Documentation, Variable names (#839)
New Contributors
- @pubpub-zz made their first contribution in #788
Full Changelog: 1.27.9...1.27.10
Version 1.27.9, 2022-04-24
What's Changed
A change I would like to highlight is the performance improvement for large PDF files (#808 by @dsk7) 🎉
New Features (ENH)
- Add papersizes (#800)
- Allow setting permission flags when encrypting (#803)
- Allow setting form field flags (#802)
Bug Fixes (BUG)
- TypeError in xmp._converter_date (#813)
- Improve spacing for text extraction (#806)
- Fix PDFDocEncoding Character Set (#809)
Robustness (ROB)
Documentation (DOC)
Developer Experience (DEV)
- Add Benchmark for Performance Testing (#781)
Maintenance (MAINT)
- Validate PDF magic byte in strict mode (#814)
- Make PdfFileMerger.addBookmark() behave life PdfFileWriters' (#339)
- Quadratic runtime while parsing reduced to linear (#808)
Testing (TST)
- Newlines in text extraction (#807)
New Contributors
Full Changelog: 1.27.8...1.27.9
Version 1.27.8, 2022-04-21
What's Changed
Bug Fixes (BUG)
- Use 1MB as offset for readNextEndLine (#321)
- 'PdfFileWriter' object has no attribute 'stream' (#787)
Robustness (ROB)
- Invalid float object; use 0 as fallback (#782)
Documentation (DOC)
- Robustness (#785)
New Contributors
- @akolpakov made their first contribution in #321
Full Changelog: 1.27.7...1.27.8
Version 1.27.7, 2022-04-19
What's Changed
Bug Fixes (BUG)
- Import exceptions from PyPDF2.errors in PyPDF2.utils (#780)
Code Style (STY)
- Naming in 'make_changelog.py'
Full Changelog: 1.27.6...1.27.7
Version 1.27.6, 2022-04-18
What changed
Deprecations (DEP)
- Remove support for Python 2.6 and older (#776)
New Features (ENH)
- Extract document permissions (#320)
Bug Fixes (BUG)
- Clip by trimBox when merging pages, which would otherwise be ignored (#240)
- Add overwriteWarnings parameter PdfFileMerger (#243)
- IndexError for getPage() of decryped file (#359)
- Handle cases where decodeParms is an ArrayObject (#405)
- Updated PDF fields don't show up when page is written (#412)
- Set Linked Form Value (#414)
- Fix zlib -5 error for corrupt files (#603)
- Fix reading more than last1K for EOF (#642)
- Acciental import
Robustness (ROB)
- Allow extra whitespace before "obj" in readObjectHeader (#567)
Documentation (DOC)
Developer Experience (DEV)
- Add issue templates (#765)
- Add tool to generate changelog
Maintenance (MAINT)
- Use grouped constants instead of string literals (#745)
- Add error module (#768)
- Use decorators for @staticmethod (#775)
- Split long functions (#777)
Testing (TST)
- Run tests in CI once with -OO Flags (#770)
- Filling out forms (#771)
- Add tests for Writer (#772)
- Error cases (#773)
- Check Error messages (#769)
- Regression test for issue #88
- Regression test for issue #327
Code Style (STY)
- Make variable naming more consistent in tests
New Contributors
- @denis-osipov made their first contribution in #359
- @malthejorgensen made their first contribution in #567
- @forrestv made their first contribution in #240
- @andrecp made their first contribution in #243
- @jc275 made their first contribution in #405
- @rltpoa made their first contribution in #642
- @vb64 made their first contribution in #628
- @thijsbrouwers made their first contribution in #603
- @malvidin made their first contribution in #414
- @mwhit74 made their first contribution in #412
Full Changelog: 1.27.5...1.27.6
Version 1.27.5, 2022-04-15
Security (SEC)
- ContentStream_readInlineImage had potential infinite loop (#740)
Bug fixes (BUG)
Robustness improvements (ROBUST)
- title sometimes None (#744)
Documentation (DOC)
- Adjust short description of the package
Tests and Test setup (TST)
- Rewrite JS tests from unittest to pytest (#746)
- Increase Test coverage, mainly with filters (#756)
- Add test for inline images (#758)
Developer Experience Improvements (DEV)
Miscellaneous
- STY: Closing file handles, explicit exports, ... (#743)
All changes: 1.27.4...1.27.5
Version 1.27.0
Features
- Add alpha channel support for png files in Script (#614)
Bug fixes (BUG)
- Fix formatWarning for filename without slash (#612)
- Add whitespace between words for extractText() (#569, #334)
- "invalid escape sequence" SyntaxError (#522)
- Avoid error when printing warning in pythonw (#486)
- Stream operations can be List or Dict (#665)
Documentation (DOC)
Tests and Test setup (TST)
- Add Github Action which automatically run unit tests via pytest and
static code analysis with Flake8 (#660) - Add several unit tests (#661, #663)
- Add .coveragerc to create coverage reports
Developer Experience Improvements (DEV)
- Pre commit: Developers can now
pre-commit install
to avoid tiny issues
like trailing whitespaces
Miscallenious
- Add the LICENSE file to the distributed packages (#288)
- Use setuptools instead of distutils (#599)
- Improvements for the PyPI page (#644)
- Python 3 changes (#504, #366)
You can see the full changelog at: 1.26.0...1.27.0
Version 1.26.0
Version 1.26.0
2016-05-18
- NOTE: Active maintenance on PyPDF2 is resuming after a hiatus
- Fixed a bug where image resources where incorrectly
overwritten when merging pages - Added dictionary for JavaScript actions to the root _(louib)_
- Added unit tests for the JS functionality _(louib)_
- Add more Python 3 compatibility when reading inline images _(im2703
and VyacheslavHashov)_ - Return NullObject instead of raising error when failing to resolve
object _(ctate)_ - Don't output warning for non-zeroed xref table when strict=False
_(BenRussert)_ - Remove extraneous zeroes from output formatting _(speedplane)_
- Fix bug where reading an inline image would cut off prematurely
in certain cases _(speedplane)_
Patch 1.25.1
Patch 1.25.1
2015-07-20
- Fix bug when parsing inline images. Occurred when merging
certain pages with inline images - Fixed type error when creating outlines by utilizing the
isString()
test