From 0aa9348b1fe3144e7ab0f0846d33a7d0a0c97dc3 Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sun, 11 Oct 2009 14:42:40 +0000 Subject: reorganize git-svn-id: svn+q:///qpdf/trunk@791 71b93d88-0707-0410-a8cf-f5a4172ac649 --- TODO | 50 +++++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/TODO b/TODO index 092764b2..9ecc9972 100644 --- a/TODO +++ b/TODO @@ -1,15 +1,13 @@ 2.1 === - * For some reason, /MT with msvc and -static-libgcc with mingw both - produce lots of test suite failures. Why do some things work and - some things not work? Is it static data in PCRE or zlib? Is it - something in my code? - * Update documentation to reflect new command line flags and any other relevant changes. Should read through ChangeLog and the manual before releasing 2.1. + * Update release documentation to remember not to include debugging + in the Windows release. + * Add comments for the security functions that map them back to the items in Adobe's products. @@ -23,41 +21,42 @@ through all error messages to try to include all these fields as appropriate. Make sure invalid password is specifically detectable. I/O errors and so forth should also be - distinguishable. + distinguishable. Make sure all errors include information about + the most recent read location including byte offset and + object/generation number. - * Test DLL works on a fresh XP installation + * It might be nice to be able to trap I/O errors separately from + other errors; especially be able to separate errors that the user + can fix (like permission errors) from errors that they probably + can't fix like corrupted PDF files, unsupported filters, or + internal errors. However, only QPDF::processFile(), which does the + initial read, and QPDFWriter::QPDFWriter(), which does the initial + write, are at all likely to generate such errors for a case other + than a catastrophic failure. * "Delphi wrapper unit 'qpdf.pas' created by Zarko Gajic (http://delphi.about.com). .. use at your own risk and for whatever the purpose you want .. no support provided. Sample code provided." +2.2 +=== + * Add ability to create new streams or replace stream data. Consider stream data sources to include a file and offset, a buffer, or a some kind of callback mechanism. Find messages exchanged with Stefan Heinsen in August, 2009. He seems to like to send encrypted mail. (key 01FCC336) - * Improve the error message generated when processing the broken - files...ideally we should provide the object number currently being - read + * See whether we can do anything with /V > 3 in the encryption + dictionary. (V = 4 is Crypt Filters.) See + ~/Q/pdf-collection/R4-encrypt-PDF_Inside_and_Out.pdf + + * Look at page splitting. General ======= - * It might be nice to be able to trap I/O errors separately from - other errors; especially be able to separate errors that the user - can fix (like permission errors) from errors that they probably - can't fix like corrupted PDF files, unsupported filters, or - internal errors. However, only QPDF::processFile(), which does the - initial read, and QPDFWriter::QPDFWriter(), which does the initial - write, are at all likely to generate such errors for a case other - than a catastrophic failure. - - * See whether we can do anything with /V > 3 in the encryption - dictionary. (V = 4 is Crypt Filters.) See - ~/Q/pdf-collection/R4-encrypt-PDF_Inside_and_Out.pdf - * The second xref stream for linearized files has to be padded only because we need file_size as computed in pass 1 to be accurate. If we were not allowing writing to a pipe, we could seek back to the @@ -122,5 +121,6 @@ taking care not to traverse into the pages tree, and then to fabricate a new pages tree. Either way, care must be taken to handle other things such as -outlines, page labels, thumbnails, threads, etc. in a sensible way. -This may include simply omitting information other than page content. +outlines, page labels, thumbnails, threads, zones, etc. in a sensible +way. This may include simply omitting information other than page +content. -- cgit v1.2.3-54-g00ecf