Logo white

OpenSystemsDevelopment / qpdf

Sign in
  • Sign in
  • Project
  • Files
  • Commits
  • Network
  • Graphs
  • Milestones
  • Issues 0
  • Merge Requests 0
  • Labels
  • Wiki
  • Commits 4,691
  • Compare
  • Branches 1
  • Tags 0
  • qpdf
  • qpdf
19 Jun, 2022
1 commit
  • Add more flexible funtions to qpdfjob C API
    daef4e8f
    Jay Berkenbilt authored
    2022-06-19 08:46:58 -0400  
    Browse Dir »

18 Jun, 2022
4 commits
  • Use the default logger for other writes to stdout/stderr ...
    e0720eaa
    When there is no context for writing output or error messages, use the
    default logger.
    Jay Berkenbilt authored
    2022-06-18 10:38:50 -0400  
    Browse Dir »
  • Use "save" logger when saving data to standard output ...
    83be2191
    This includes the output PDF, streams from --show-object and
    attachments from --save-attachment. This also enables --verbose and
    --progress to work with saving to stdout.
    Jay Berkenbilt authored
    2022-06-18 09:54:40 -0400  
    Browse Dir »
  • QPDF, QPDFJob: use QPDFLogger instead of custom output streams
    641e92c6
    Jay Berkenbilt authored
    2022-06-18 09:02:55 -0400  
    Browse Dir »
  • Add and test QPDFLogger class
    f1f71196
    Jay Berkenbilt authored
    2022-06-18 09:02:55 -0400  
    Browse Dir »

30 May, 2022
2 commits
  • In json mode, reveal recovered user password when otherwise unavailable
    b7bbf12e
    Jay Berkenbilt authored
    2022-05-30 20:03:08 -0400  
    Browse Dir »
  • Add additional information when listing attachments
    f049a77c
    Jay Berkenbilt authored
    2022-05-30 20:03:08 -0400  
    Browse Dir »

21 May, 2022
5 commits
  • Change default decode level to "none" with --json-output
    27a42c16
    Jay Berkenbilt authored
    2022-05-21 17:51:34 -0400  
    Browse Dir »
  • Add another binary utf8 to JSON test
    b0f15643
    Jay Berkenbilt authored
    2022-05-21 17:39:35 -0400  
    Browse Dir »
  • Allow empty b: binary JSON strings
    752f43d4
    Jay Berkenbilt authored
    2022-05-21 17:36:32 -0400  
    Browse Dir »
  • Code clean up: use range-style for loops wherever possible ...
    6c69a747
    Remove variables obsoleted by commit 4f24617.
    m-holger authored
    2022-05-21 16:06:29 -0400  
    Browse Dir »
  • Add json to large file test
    905f47a5
    Jay Berkenbilt authored
    2022-05-21 09:43:45 -0400  
    Browse Dir »

20 May, 2022
14 commits
  • Exercise object description in tests
    9b2eb01e
    Jay Berkenbilt authored
    2022-05-20 14:23:32 -0400  
    Browse Dir »
  • Add test for bad data and bad datafile
    6c2fb5b8
    Jay Berkenbilt authored
    2022-05-20 13:33:30 -0400  
    Browse Dir »
  • Test --update-from-json
    d0650980
    Jay Berkenbilt authored
    2022-05-20 11:10:12 -0400  
    Browse Dir »
  • Test (and fix) handling of dangling references
    6d4e3ba8
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Explicitly test ignoring unknown keys in JSON input
    35b1e1c4
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Make version default to latest for --json-output (like --json)
    dc8df962
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Round-trip tests with --json-stream-data=file
    907df2c8
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Tests with manually constructed qpdf json
    a83b7b06
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Add tests for --json-input
    7f8c4b18
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Add more names and strings in good13 ...
    1ec561da
    * native UTF-8 strings
    * names whose PDF and canonical syntax differ in both dictionary key
      positions and other positions
    
    For json, names are converted both as names and directly when used as
    dictionary keys.
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Rename all test files: _ to -
    6c5e5906
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Major rework -- see long comments ...
    6f43bf8d
    * Replace --create-from-json=file with --json-input, which causes the
      regular input to be treated as json.
    * Eliminate --to-json
    * In --json=2, bring back "objects" and eliminate "objectinfo". Stream
      data is never present.
    * In --json-output=2, write "qpdf-v2" with "objects" and include
      stream data.
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Back out fluent QPDFObjectHandle methods. Keep the andGet methods. ...
    56f1b411
    I decided these were confusing and inconsistent with how JSON works.
    They muddle the API rather than improving it.
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »
  • Parse objects; stream data is not yet handled
    7e7a9c43
    Jay Berkenbilt authored
    2022-05-20 09:16:25 -0400  
    Browse Dir »

16 May, 2022
2 commits
  • Implement top-level qpdf json parsing
    7fa5d177
    Jay Berkenbilt authored
    2022-05-16 13:41:40 -0400  
    Browse Dir »
  • Remove offset from missing /Root error ...
    9a0e9a1a
    The last offset is irrelevant to not being able to find /Root.
    Jay Berkenbilt authored
    2022-05-16 13:39:26 -0400  
    Browse Dir »

14 May, 2022
1 commit
  • Split qpdf.test into multiple test suites ...
    173b944e
    This makes it a lot easier to run parts of the test suite.
    Jay Berkenbilt authored
    2022-05-14 17:35:06 -0400  
    Browse Dir »

08 May, 2022
10 commits
  • Add maxobjectid to JSON
    2a2f7f1b
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Add --to-json option
    e9390aea
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Test inline stream data with different decode levels
    2e87d593
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Test json v2 with invalid stream data
    f08f3989
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Implement JSON v2 output
    c76536dd
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Apply script across future v2 test files ...
    bdfc4da5
    There is one unexpected pass in this commit. This script was applied
    to the files changed in this commit:
    
    ----------
    #!/usr/bin/env python3
    import json
    import sys
    
    def json_dumps(data):
        return json.dumps(data, ensure_ascii=False,
                          indent=2, separators=(',', ': '))
    
    for filename in sys.argv[1:]:
        with open(filename, 'r') as f:
            data = json.loads(f.read())
        data['version'] = 2
        objectinfo = {}
        if 'objectinfo' in data:
            objectinfo = data['objectinfo']
            del data['objectinfo']
        if 'objects' not in data:
            continue
        qpdf = {'jsonversion': 2, 'pdfversion': '1.3', 'objects': {}}
        for k, v in data['objects'].items():
            is_stream = objectinfo.get(k, {}).get('stream', {}).get('is', False)
            if k.endswith(' R'):
                k = 'obj:' + k
            if is_stream:
                v = {'stream': {'dict': v}}
            else:
                v = {'value': v}
            qpdf['objects'][k] = v
        data['qpdf'] = qpdf
        del data['objects']
    print(json_dumps(data))
    ----------
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Prepare test suite for json v2
    8d348974
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Fix typo in json output key name ...
    15272662
    moddify -> modify. Also carefully spell checked all remaining keys by
    splitting them into words and running a spell checker, not just
    relying on visual proofreading. That was the only one.
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Implement JSON v2 for Stream ...
    1bc8abfd
    Not fully exercised in this commit
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »
  • Implement JSON v2 for String ...
    3246923c
    Also refine the herustic for deciding whether to use hexadecimal
    notation for a string.
    Jay Berkenbilt authored
    2022-05-08 13:45:20 -0400  
    Browse Dir »

07 May, 2022
1 commit
  • Prepare code for JSON v2 ...
    16f4f94c
    Update getJSON() methods and calls to them
    Jay Berkenbilt authored
    2022-05-07 11:12:01 -0400  
    Browse Dir »