Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: py-pdf/pypdf
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2.4.1
Choose a base ref
...
head repository: py-pdf/pypdf
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2.4.2
Choose a head ref
  • 14 commits
  • 18 files changed
  • 5 contributors

Commits on Jul 3, 2022

  1. Configuration menu
    Copy the full SHA
    4c43c0e View commit details
    Browse the repository at this point in the history
  2. ENH: Add PdfReader.xfa attribute (#1026)

    Closes #408
    
    Co-authored-by: George Alverson <George.Alverson@cern.ch>
    MartinThoma and georgealverson authored Jul 3, 2022
    Configuration menu
    Copy the full SHA
    0e18938 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3531603 View commit details
    Browse the repository at this point in the history
  4. TST: No pycryptodome (#1050)

    Co-authored-by: Matthew Peveler <matt.peveler@gmail.com>
    MartinThoma and MasterOdin authored Jul 3, 2022
    Configuration menu
    Copy the full SHA
    5d213ea View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4097db9 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    04d576c View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2022

  1. DEV: Added {posargs} to tox.ini (#1055)

    This allows adding options from command line. 
    
    For example, run only one test in py39 env using an option -k:
    $ tox -e py39 -- -k test_issue585
    
    For example, run only one test in all envs using an option -k:
    $ tox -- -k test_issue585
    
    Co-authored-by: Harry Karvonen <harry.karvonen@onebyte.fi>
    Hatell and Harry Karvonen authored Jul 4, 2022
    Configuration menu
    Copy the full SHA
    32ab2a3 View commit details
    Browse the repository at this point in the history
  2. TST: Simplify pathlib PdfReader test (#1056)

    The Path constructor allows a variable amount of arguments to it which it joins together similar to os.path.join works, so it's not necessary to use os.path.join before passing the args to Path.
    MasterOdin authored Jul 4, 2022
    Configuration menu
    Copy the full SHA
    4a62a47 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    70605ae View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2022

  1. BUG: Resolve IndirectObject when it refers to a free entry (#1054)

    From the PDF 1.7 docs https://opensource.adobe.com/dc-acrobat-sdk-docs/standards/pdfstandards/pdf/PDF32000_2008.pdf:
    
    Section 7.3.10 Indirect Objects:
    An indirect reference to an undefined object shall not be considered an error by a conforming reader;
    it shall be treated as a reference to the null object.
    
    And section 7.5.4 Cross-Reference Table:
    There are two ways an entry may be a member of the free entries list. Using the basic mechanism the free
    entries in the cross-reference table may form a linked list, with each free entry containing the object number of
    the next. The first entry in the table (object number 0) shall always be free and shall have a generation number
    of 65,535; it is shall be the head of the linked list of free objects. The last free entry (the tail of the linked list)
    links back to object number 0. Using the second mechanism, the table may contain other free entries that link
    back to object number 0 and have a generation number of 65,535, even though these entries are not in the
    linked list itself.
    
    Those entries form a linked list. The correct way to handle this is to resolve the indirect reference to the NullObject.
    
    See "3.4.3 Cross-Reference Table" in the PDF 1.7 standard for free cross-reference entries in general.
    
    Co-authored-by: Harry Karvonen <harry.karvonen@onebyte.fi>
    
    Closes #521
    Closes #1034
    Hatell authored Jul 5, 2022
    Configuration menu
    Copy the full SHA
    02c601c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ffacabc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1e9c4dd View commit details
    Browse the repository at this point in the history
  4. BUG: Wrong page inserted when PdfMerger.merge is done (#1063)

    Caused-by: #207
    
    Why it wasn't detected by the tests: We don't have any tests that check
    for the correct result of a merge. We just check for exceptions
    
    How we prevent it in future: Unit test was added
    
    Risk of the fix:
    - We will have bigger file sizes again as #207 was effectively reverted
    - We will need to adjust this test if we change the way we write PDFs
    
    Closes: #1062
    MartinThoma authored Jul 5, 2022
    Configuration menu
    Copy the full SHA
    621a51f View commit details
    Browse the repository at this point in the history
  5. REL: 2.4.2

    New Features (ENH):
    -  Add PdfReader.xfa attribute (#1026)
    
    Bug Fixes (BUG):
    -  Wrong page inserted when PdfMerger.merge is done (#1063)
    -  Resolve IndirectObject when it refers to a free entry (#1054)
    
    Developer Experience (DEV):
    -  Added {posargs} to tox.ini (#1055)
    
    Maintenance (MAINT):
    -  Remove PyPDF2._utils.bytes_type (#1053)
    
    Testing (TST):
    -  Scale page (indirect rect object) (#1057)
    -  Simplify pathlib PdfReader test (#1056)
    -  IndexError of VirtualList (#1052)
    -  Invalid XML in xmp information (#1051)
    -  No pycryptodome (#1050)
    -  Increase test coverage (#1045)
    
    Code Style (STY):
    -  DOC of compress_content_streams (#1061)
    -  Minimize diff for #879 (#1049)
    
    Full Changelog: 2.4.1...2.4.2
    MartinThoma committed Jul 5, 2022
    Configuration menu
    Copy the full SHA
    a345690 View commit details
    Browse the repository at this point in the history
Loading