-
Notifications
You must be signed in to change notification settings - Fork 21
/
CHANGELOG
91 lines (74 loc) · 3.14 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
New features:
- Added support for LZW stream filter.
Improvements:
- Uniformized --verbose and --debug options.
- Better debugging of stream filters.
---------------------
Version 0.3.1 (beta):
---------------------
New features:
- Added the 'ui' command, an interactive user interface in console based on
ncurses.
Bugfixes:
- Added sanity checks if a non-existing file or directory is given as argument.
-------------------
Version 0.3 (beta):
-------------------
Breaking changes:
- Strings containing non-ASCII characters are now printed in hexadecimal
format.
New features:
- Added support for encrypted files.
- Added validation of content streams.
- Added the 'findref' command to find all references to an object.
- Added the 'findname' command to find all occurrences of a PDF name.
- Added --merge-content-stream option to the 'cleanup' command to merge content
stream arrays in pages.
- Added --simplify-info option to the 'cleanup' command to remove non-standard
fields from the /Info dictionary.
- Added --remove-ptex option to the 'cleanup' command to recursively remove all
dictionary keys starting with '/PTEX.'.
- Added --allow-nonascii-in-names option to allow names to contain non-ASCII
characters instead of the corresponding escape sequence.
- Added --allow-overlaps option to allow several objects to overlap in a file.
- Added --xref-stream-default-zero option to use a default value of 0 when the
last field is not present in xref stream entries.
- When available, the 'stats' command also outputs main metadata from the /Info
dictionary (/Producer, /Creator, /CreationDate and /ModDate) and /Encrypt
dictionary (/V, /R, /U, /O, /ID).
Improvements:
- Added type checking of functions (see PDF reference 7.10).
Misc:
- Improved error handling.
- Improved implementation of --undefined-ref-as-null option.
-------------------
Version 0.2 (beta):
-------------------
Breaking changes:
- Removed the parameter --stream-errors from the 'extract' command. This
parameter was not used in the code.
- Changed the parameters of the 'object' command for easier extraction of
streams: removed --relax-streams and replaced --decode-streams by --raw-stream
and --decoded-stream.
API Changes:
- Split the PDFObject module into DirectObject and IndirectObject modules. This
design enforces the semantics of direct and indirect objects.
- Created the PDFStream module to encapsulate operations on streams and ensure
consistency between encoded and decoded data.
New features:
- Added support for ASCII85 and RunLength stream filters.
- Added --rencode-streams option to the 'cleanup' command to reencode all
streams with a chosen filter.
Bugfixes:
- Use open_in_bin and open_out_bin instead of open_in and open_out. Suggested by
Chimrod.
- Changed the minimum allowed integer to -2^31. Reported by Chimrod.
- Allowed to use indirect objects as stream parameters (/Length, /Filter or
/DecodeParms) with the relaxed parser. Suggested by Chimrod.
Misc:
- Use standard exception Exit where relevant.
- Use Buffer module instead of string concatenation to reduce complexity.
-------------------
Version 0.1 (beta):
-------------------
- Initial public release.