Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
6725 | siemargl | 1 | ================================ |
2 | For UnZip 6.1/who knows: |
||
3 | ================================ |
||
4 | |||
5 | o add extraction support for other compression algorithms used by new |
||
6 | PKZIP, WinZIP, 7-Zip versions |
||
7 | - LZMA, compression type 14 (most important, because of its efficiency) |
||
8 | - PPMd, compression type 98 (maybe, less important) |
||
9 | - WavPacked, compression type 97 (maybe, less important) |
||
10 | |||
11 | LZMA is first-level priority for 6.1, other formats may be taken |
||
12 | into consideration |
||
13 | |||
14 | o add support for reading AES encrypted archives |
||
15 | - WinZIP format (priority 1) |
||
16 | - PKZip format (priority 2) |
||
17 | |||
18 | top level item for 6.1 |
||
19 | |||
20 | o add multi-part zipfile handling |
||
21 | |||
22 | major feature for 6.x! |
||
23 | |||
24 | could happen for 6.1 |
||
25 | |||
26 | o better support for multilingual uses and different codepages; |
||
27 | support unicode (UTF-8 coded) filenames and comment texts |
||
28 | |||
29 | a requested feature getting more and more important, |
||
30 | - partially done for the Windows port in 6.0 |
||
31 | (support restricted for chars of the current system codepage) |
||
32 | - partially done (beta state) for Unix |
||
33 | (requires native codepage to be UTF-8) |
||
34 | |||
35 | o complete support for UTF-8 coded entry names (and comments) |
||
36 | - add new "win32_wide" port to extend unicode support on Windows |
||
37 | beyond the restrictions of the current (ANSI) system codepage |
||
38 | - revise/extend the WinDLL interface to allow passing of "wide" |
||
39 | string argument data |
||
40 | - add simple built-in character translation between UTF-8 and the |
||
41 | old (ISO-8851-1 / IBM850) code pages to allow old systems without |
||
42 | standard UTF-8 support to read UTF-8 encoded archives. |
||
43 | - extend the built-in translation tables to support other language |
||
44 | regions besides "Western_Latin1" (e.g. Russian-kyrillic, Japanese, |
||
45 | Chinese) |
||
46 | - streamline the multilingual codepage and UTF-8 support for the UNIX |
||
47 | port (standard codepage translation facility?, like WideChar<->AnsiCP |
||
48 | translation functions under MS Windows) |
||
49 | |||
50 | should happen for 6.1 |
||
51 | (there is internal alpha-state code for better "wide" support on |
||
52 | Windows available at the time of the 6.0 release) |
||
53 | |||
54 | o revise the "extended charcodes" handling in decryption password to |
||
55 | support UTF-8 encoding on Unicode-aware systems where the "native" |
||
56 | character coding is NOT UTF-8 (e.g. Windows). |
||
57 | |||
58 | o revise the command line interface for more compatibility with Zip' |
||
59 | command parser |
||
60 | - implement the versatile command parser from Zip 3.0. |
||
61 | - add "long option" definitions for all existing options; revise |
||
62 | the UnZip user manual to document the long-option alternatives. |
||
63 | - add support for reading the "process these entries" and the "skip |
||
64 | these entries" pattern lists from a file (or from separate files ?). |
||
65 | - add a (long) option to switch off UnZip's internal pattern matching |
||
66 | on filename arguments. |
||
67 | |||
68 | probably in 6.1, |
||
69 | (first prototype of the revised command parser was available at the |
||
70 | time of the 6.0 release) |
||
71 | |||
72 | o add command line options for miscellaneous features requested by users |
||
73 | and/or development team members: |
||
74 | - display the Info-ZIP software license |
||
75 | - more fine-tuning for file attributes set/restored at extraction, like: |
||
76 | set/clear archive attribute on DOS/OS2/WIN32; |
||
77 | apply/skip standard or user-defined umask filter on UNIX (& Unix-alike) |
||
78 | - additional time-stamp related processing filters |
||
79 | - more listing display modifications |
||
80 | - overriding the default date-time display style |
||
81 | - ... |
||
82 | |||
83 | All these options are of minor importance and/or would collide with |
||
84 | existing "one-character" options. The current UnZip maintainer does not |
||
85 | want to reserve any of the few not-yet-occupied short option characters. |
||
86 | for one of these features. So, any implementation effort for items |
||
87 | of this feature wish-list has to be delayed until the "long option" |
||
88 | support of the revised command line parser becomes available. |
||
89 | |||
90 | some option may get implemented in 6.1 |
||
91 | |||
92 | o support for |
||
93 | and/or development team members: |
||
94 | |||
95 | o add new low-level, binary API; rewrite "normal" (command-line) UnZip |
||
96 | to use it |
||
97 | |||
98 | maybe soon (maybe 6.1) |
||
99 | |||
100 | o MSDOS/WIN32/others: detection of "reserved" names (= names of character |
||
101 | devices, or system extensions that look like a characters device driver) |
||
102 | at runtime; with the goal of emitting "meaningful" error messages and/or |
||
103 | rename queries. |
||
104 | (Currently, these reserved names are catched as "non-deletable files". |
||
105 | On MSDOS and WIN32, when the RTL stat() function allows to identify |
||
106 | character devices, the "reserved" names are automatically prefixed with |
||
107 | an underscore.) |
||
108 | |||
109 | o redesign "file exists -- is newer/older -- overwrite/skip/rename" |
||
110 | logic in extract.c and the corresponding system specific mapname() |
||
111 | services; to prevent superfluous decryption key prompts for entry |
||
112 | that will be skipped, later. |
||
113 | |||
114 | o rewrite to use fread/fseek/etc. [eventually: test |
||
115 | write(bytes) vs. fwrite(words), especially on Crays/Alphas] |
||
116 | |||
117 | soon (probably in conjunction with multi-part handling) |
||
118 | |||
119 | o incorporate new backfill version of inflate() |
||
120 | |||
121 | wait for zlib version |
||
122 | |||
123 | o check NEXTBYTE for EOF in crypt.c, funzip.c and explode.c, too |
||
124 | |||
125 | whenever |
||
126 | |||
127 | o add option to force completely non-interactive operation (no queries |
||
128 | for overwrite/rename, password, etc.); also allow some sort of non- |
||
129 | interactive password provision? (file? command-line? env. variable?) |
||
130 | |||
131 | someday? |
||
132 | |||
133 | o add testing of extra fields (if have CRC) |
||
134 | |||
135 | later |
||
136 | |||
137 | o rewrite to allow use as a filter |
||
138 | |||
139 | way, way later... |
||
140 | |||
141 | o add Unix hard-link support? |
||
142 | |||
143 | way, way later... |
||
144 | |||
145 | o add ".ini" file support as a (more elaborate) alternative to the presently |
||
146 | supported preconfiguring abilities via special environment variables |
||
147 | (UNZIP on many systems...)? |
||
148 | |||
149 | way, way later (if ever)... |
||
150 | |||
151 | o add option to search zipfile contents for a string and print the |
||
152 | results? ("zipgrep" option--e.g., unzip -g or unzip -S) (easy for |
||
153 | fixed strings, hard for wildcards/true regex's) |
||
154 | |||
155 | way, way later, if at all...probably use libregex |
||
156 | |||
157 | o add -y "display symlinks" option to zipinfo? various sorting options? |
||
158 | (-St date/time, -Sn name)? |
||
159 | |||
160 | who knows |
||
161 | |||
162 | o add "in-depth" option to zipinfo? (check local headers against |
||
163 | central, etc.)--make it a better debugging tool (or just create |
||
164 | zipfix) |
||
165 | |||
166 | who knows (zip -F, -FF already exist) |
||
167 | |||
168 | Some maintenance or OS specific topics for 6.0 release: |
||
169 | |||
170 | * add "unix-style-path -> partitioned-dataset filename" conversion |
||
171 | to MVS port |
||
172 | |||
173 | * should we add support for (null) entry names (empty entry name field), to |
||
174 | conform to the PKWARE specification? |
||
175 | |||
176 | |||
177 | ======================================= |
||
178 | |||
179 | Requested features: |
||
180 | |||
181 | - extract or exclude on basis of UID [Armin Bub, Armin.Bub@bk.bosch.de, 970904] |
||
182 | |||
183 | ======================================= |
||
184 | |||
185 | o miscellaneous little stuff: whenever |
||
186 | -------------------------- |
||
187 | |||
188 | - change DOS -f/-u stuff to use DOS API for getting filetimes, not stat() |
||
189 | |||
190 | - add (-N?) option to lose all user input and/or switch to "(*input)()" |
||
191 | function, replaceable by UzpAltMain() param |
||
192 | - add -@ option to read from stdin (zip) or from file (PKZIP)? (go32 built-in) |
||
193 | - add -oo option to overwrite OS/2 and DOS system and hidden files, too |
||
194 | - add option to compute MD5 checksum on files and/or on entire zipfile? |
||
195 | |||
196 | - decide whether to use WinGUI "skipping" diagnostics in extract.c |
||
197 | - combine "y/n/A/N" query/response stuff into unified section with query |
||
198 | function(s) (InputFn?) |
||
199 | - disable ^V code in remaining mapname() routines |
||
200 | |||
201 | - change filename-matching logic so case-insensitive if case-sensitive fails? |
||
202 | |||
203 | - allow multiple dir creation with -d option? [Bob Maynard] |
||
204 | |||
205 | - use gcc -pg, gprof to do profiling on unzip |
||
206 | |||
207 | - Doug Patriarche (doug.patriarche.bvdhp01@nt.com) Northern Telecom Canada Ltd. |
||
208 | "I need to do a port of zip/unzip for Wind River Systems' VxWorks OS" |
||
209 | [GRR: 15 March 95 -> "early June"] |
||
210 | |||
211 | |||
212 | Features from old BUGS file (mostly duplicates of other entries above): |
||
213 | |||
214 | - ignore case for internal filename match on non-Unix systems, unless file- |
||
215 | specs enclosed in single quotes |
||
216 | - modify to decompress input stream if part of a pipe, but continue using |
||
217 | central directory if not (BIG job!)--extended local header capability |
||
218 | - add zipinfo option(s) to sort alphabetically, by date/time, in reverse, etc. |
||
219 | - when listing filenames, use '?' for non-printables? [Thomas Wolff, 92.6.1] |
||
220 | - add zipinfo "in-depth" option? (check local vs. central filenames, etc.) |
||
221 | - create zipcat program to concatenate zipfiles |
||
222 | - add -oo option (overwrite and override)? no user queries (if bad password, |
||
223 | skip file; if disk full, take default action; if VMS special on non-VMS, |
||
224 | unpack anyway; etc.) |
||
225 | - add -Q[Q[Q]] option (quiet mode on comments, cautions, warnings and errors)? |
||
226 | forget -oo, or make synonym? Default level -Q?-> |