1
Macintosh Port of Info-ZIP's Zip
2
By Dirk Haase, d_haase@sitec.net
3
Home page: www.sitec.net/maczip
5
www.haase-online.de/dirk/maczip
6
================================
11
Release MacZip ver1.04 beta 2
15
1) FIX: {unzip} added one more criteria to make the recognition
16
of macbinary more save.
18
2) FIX: {unzip} sometimes, archive entries without any extra field
19
caused problems; the default setting of the extra field
20
was not set back to 'unknown' properly.
22
3) FIX: {zip} Archive filename with invalid characters like '/' gets
23
renamed. However, I do not check the complete path - needs
26
4) FIX: {zip} Filename match was case sensitive.
28
6) CHG: {zip) switch to latest source level
29
unzip 2.30m beta release
31
7) CHG: {unzip) switch to latest source level
32
unzip 5.41b beta release
34
8) FIX: {zip/unzip 68k only) I have found a wrong compiler setting
35
for the 68k version. Because of this wrong setting the 68k
41
Release MacZip ver1.04 beta 1
45
1) CHG: {unzip) switch to latest source level
46
unzip 5.41a beta release
48
2) ADD: {all} Added message logging support for Syslogd
49
by Brian Bergstrand. Syslogd can be found at
50
http://www.classicalguitar.net/brian/apps/syslogd/
51
This feature is 'under construction'.
53
3) FIX: {all} many small fixes and code cleanups
58
Release MacZip ver1.03
62
1) CHG: {console} Like Stuffit Expander MacZip quits automatically when
63
used with drag'n drop or as Helper App (Web-Browser).
65
2) CHG: {console} Since Macintosh users are used to be guided by their
66
software in order not to do something stupid, I added a check
67
to post an extra warning if the options -m and data fork only
69
This behavior can be disabled: See Applescript example and
72
3) CHG: {zip} switch from immediate deletion to moving to the
73
trash. Immediate deletion is now an option in "maczip.env".
75
4) CHG: {zip} enhanced progress display.
77
5) CHG: {zip) switch to latest source level
80
6) CHG: {unzip} The zip archive contains file names greater than
81
31 characters. When MacZip tries to unzip the file, the
82
FSpCreate command fails because the filename length is to
83
long. MacZip correct this problem by trying to truncate
84
the file names to the 31 character limit.
86
7) FIX: {zip/console} A couple of minor fixes
88
8) CHG: {zip} Switched file-globbing to the Info-ZIP version.
93
Release MacZip ver1.02
97
1) CHG: {zip} Changed the rule of file inclusion if switch '-X'
98
is set. Following conditions are checked:
99
a) if length of resource-fork is equal zero *and* the
100
length of data-fork is equal zero include the file.
101
b) if length of resource-fork greater zero *and* the
102
length of data-fork is equal zero don't include the file.
103
c) if length of data-fork greater zero include the file.
105
2) CHG: {Console} Some users are very confused by the buttons "START PATH"
106
and "ZIP ARCHIVE". Somehow, it wasn't clear what the intended
107
meaning was. I changed the buttons to more clear labels on
108
them like: "file or folder to compress" and "location of
111
3) CHG: {Console} I changed the menu structure to be more intuitive.
113
4) FIX: {Console} Found a nasty bug which sometimes caused crashes
114
when the Zip / Unzip Dialogbox was used.
116
5) CHG: {Console} Handling of file dialog is now a bit more restricted:
117
e.g: it's not possible to select a file if you have to select
123
Release MacZip ver1.01
125
----------------------
127
1) CHG: {console} The use of the "Current App" mechanism was clumsy
128
and forces the user into the Zip or Unzip modes. This kind
129
of modality is not so good for the command line. It's now
130
neccessary to enter zip or unzip to choose the action.
132
2) FIX: {console} When Applescript sends quit to MacZip the script
133
that is running shows a spinning cursor and MacZip
136
3) FIX: {console} MacZip gots accidentally the wrong creator code
142
Final Release MacZip ver1.0
143
---------------------------
145
Released 21. January 1999
150
9. Beta release 06.December.1998
151
---------------------------------
153
1) CHG: {console} The checkbox of Filedialog (for extract path and file path)
154
"Show all files" is now selected by default.
156
2) CHG: {unzip/standalone} changed prototypes of mac[f]printf() to return
157
an int number (better ANSI conformance);
159
3) FIX: {unzip} repaired "stdout/stderr" mode of macwrite(). So func
160
MacMessagePrnt() is now obsolete and removed.
162
4) ADD: {zip/unzip} Compressed Mac3 extra-fields are now supported
163
(Thanks to Christian Spieler)
165
5) ADD: {unzip} Extraction of ZipIt archive are now supported. This support
166
is not complete: Filenames are correct but folder names are only
167
restored with the public directory names.
169
6) ADD: {zip/unzip} Improved documentation.
171
7) FIX: {unzip} Function isZipfile() is completely rewritten.
173
8) CHG: {zip/unzip) switch to latest source level
174
zip 2.3i beta and unzip 5.4 final release
176
9) ADD: Applescript event "do_cmd".
178
Unless there are big bugs found, this release will be the last
179
beta release. The final release will come out in January 1999.
184
8. Beta release 20.November.1998
185
---------------------------------
187
1) CHG: {zip/unzip) switch to latest source level
188
zip 2.3h beta and unzip 5.4 final release
190
2) ADD: {zip} Zip finds "namelocked" files also, if switch "-S"
193
3) FIX: {unzip} Function isZipfile() fails if the zip archive
196
4) CHG: {zip} added some small speed improvements to pattern matching and
197
isZipFile() function.
199
5) FIX: {unzip} Display of comments is fixed.
200
UzpMessagePrnt() is replaced by MacMessagePrnt(). I do not care
201
about ansi-bombs. I'm not sure, so this fix may be changed later.
203
6) RMV: {unzip} Buildin More capability is removed since it's already built
208
7. Beta release 09.November.1998
209
---------------------------------
211
1) CHG: {all} switched to Metrowerks Codewarrior Pro 4
213
2) FIX: {unzip} Display of comments stored in the zip-file is
216
3) FIX: {zip} Fixed display of the zip help-screen.
218
4) CHG: {zip/unzip} Changed special dir 'Re$0urce.Fk' to 'XtraStuf.mac'
219
(see entry at 13.June.1998 item 3). I found it more descriptive for
220
users outside the mac-community.
222
5) CHG: {all} switched to MoreFiles 1.4.9.
224
6) CHG: {console} changed behaivor of the file open dialog: The select
225
button is now always enabled.
227
7) ADD: {all} Environment variables are now supported.
228
Basically, it is possible to add timezone (= TZ environment variable)
229
support here, but it's not yet implemented.
230
See "MacZip.Env" for further info.
232
8) RMV: {console} Targets "zip only" and "unzip only" are removed.
236
6. Beta release 09.September.1998
237
---------------------------------
240
1) CHG: {Zip/Unzip} Metrowerks Standardlibrary time funktions are
241
rather broken and incomplete so I was forced to rewrite the
242
funktions: mktime(), localtime(), gmtime() and time().
244
2) ADD: {Console} Added Pause Funktion for screen output.
245
The Pause-Function is selfadjusting: Count of lines is depending
248
3) CHG: Extra-Field layout is changed: All datas are now in little-endian
251
4) ADD: {Console} Added an option to test the archive automatically
252
after zipping. This option is only via Zip-Dialogbox available
253
because it needs the unzip-module also.
255
5) CHG: {Zip} code is now up to date with the latest beta 2.3f.
257
6) ADD: {Console} Added (drag'n) drop support. Drop on the MacZip icon.
258
The following situations are supported:
259
1. drop of one or more zipfiles (action = unzip)
260
each archive will be extracted in a separate folder
261
2. drop of a folder (action = zip -r )
262
The complete folder (inclusive sub-folders)
264
Not (yet) supported is currently: dropping more than one file
265
to compress. Workaround: Put all your files in one folder and
266
drop that folder on MacZip.
267
MacZip recognize zip-archives automatically.
270
5. Beta release 21.Aug.1998
271
----------------------------
274
1) ADD: {Console} Userinterface has now a Statusbar to show the
277
2) ADD: {Console} It's now possible to stop the run of Zip/Unzip
278
with the well known shortcut [Command] + [.]
280
3) CHG: {Console} Improved user-entry routine.
282
4) ADD: {Zip/Unzip} Crypt-code added. It's now possible to
283
encrypt/decrypt archives.
285
5) RMV: {Unzip} Removed the warning of PKZip/Mac archive.
286
Unzip gets confused with the extra field of PKZip/Mac. So I assume
287
the extra field isn't compatible with Info-ZIP's definition.
289
6) CHG: switched to Metrowerks Codewarrior Pro 3
291
- new Universal Interfaces 3.1 Headers
292
- improved codegeneration
294
7) CHG: {Zip} code is now up to date with the latest beta 2.3e.
296
8) CHG: {Unzip} changed function names wprintf, wgets .. to macprintf, macgets ..
297
to avoid naming conflict standart library.
299
9) ADD: {Zip/Unzip} FXinfo, Mac-Pathname, file-dates and Finder-Comments
300
are now stored in the extra-field. Extra-field layout is
301
changed accordingly. Unzip uses now the filename stored in the
302
extra-field when unzipping.
304
10) CHG: {Unzip} code is now up to date with the latest beta 5.33g.
306
11) CHG: {Unzip} code is (again) up to date with the latest beta 5.33h.
308
12) ADD: {Unzip} following switches were added:
309
-J [MacOS only] ignore mac extra info. All macintosh
310
info are not restored. Datafork and resource-fork
311
are restored separatly.
313
-i [MacOS only] ignore filenames stored in mac extra
314
field. Use the most compatible filename stored in
317
-E [MacOS only] show mac extra field during restoring
319
13) ADD: {Zip/Unzip} Charset MacRoman to ISO8859 Latin and vice versa
321
14) RMV: {Zip} -N option removed. This MacZip crashes using this option.
325
I think I'm very close for a final release of "MacZip 1.0" :-)
329
4. Beta release 27.June.1998
330
----------------------------
335
1) FIX: {Zip} extra field size value was wrong.
342
1) CHG: {Zip} code is now up to date with the latest beta 2.3d.
343
So both modules, zip & unzip, uses now latest beta.
345
2) ADD: {Zip} added a UT extra-field for better compatibility.
347
3) CHG: {Unzip} changed the code to find the mac extra-field.
348
Unzip has to look for a mac extra-field because
349
mac-archives has now two extra-fields (UT + M3).
351
4) CHG: {Unzip} changed the method to move extra-field data to
352
the internal extra-structure.
353
Old method was just BlockMove of the ef_structptr to ef_memptr.
354
This method was dangerous because not all members of the
355
structure seamless aligned. There are may be some fill
356
bytes in the structure depending on the compiler setting.
358
5) ADD: {Unzip} added a warning if unzipping a ZipIt/PKZip archive.
359
ZipIt/PKZip archives are usually additionally coded somehow.
360
InfoZip's Unzip will *not* decode the files. So extracted
361
files are may be not decoded. (see also 6. and 7.)
363
6) ADD: ZipIt (the Shareware Tool) has now a new extra-field signature:
364
0x2705. Found in "ZipIt 1.3.8". I added a new macro: EF_ZIPIT2
366
7) ADD: Added PKWare's extra-field signature: 0xCF77.
367
Found in "PKZIP v2.03". I added a new macro: EF_PKMAC
369
8) ADD: {console} It's now possible to save all screen outputs
372
9) RMV: {console} this is the first beta without expire-date.
378
1) FIX: {Unzip/console} Extract path now defaults to current-dir if
381
2> CHG: {Unzip} creates now a extract-folder by default. This behavior
382
differs to the commandline tool of Unzip on other platforms.
383
However, for a mac-user is this behavior more convenient.
386
3. Beta release 15.June.1998
387
----------------------------
392
1) CHG: {unzip/zip} I changed the layout of the extra field
393
to support more data.
399
1) FIX: {Unzip} adjusted time_t value with an correct offset value.
401
2) FIX: {Unzip} removed all unused code based on unfinished ideas by
404
3) CHG: use of shared code izshr 032.
409
1) FIX: {Unzip} Filenames are only converted when needed. When zipping
410
with the switch 'datafork only' the filenames are shorted which
413
2) CHG: {Unzip} code is now up to date with the latest beta 5.33f.
415
3) CHG: {Zip} Changed the naming rule of filenames from old Johnny Lee's
416
to my implementation. Johnny Lee's idea is based on change of the
417
filenames which cases several problems when unziping on a non mac
418
plattform. My idea is to add a special directory: 'Re$0urce.Fk'.
419
For the future: Zip will create archives according the new nameing
420
rule. However unzip will be compatible with old nameing rule.
423
4} ADD: {Unzip} Added a new nameing rule for resource forks filename.
424
Resource forks are now stored in a special directory: 'Re$0urce.Fk'.
425
This naming rule make it easier to for other platforms to use
432
1) FIX: {Zip} Internal file attribute is set to BINARY by default
433
when zipping resource forks otherwise Unzip will create
434
sometimes wrong resource-forks.
436
2) CHG: {Unzip} code is now up to date with the latest beta 5.33e.
441
2. Beta release 10.June.1998
442
--------------------------
444
1) FIX: {Unzip} Long pathname fix solved. Unzip is now able to extract
445
archives with path longer than 256 chars.
447
2) CHG: {Unzip} removed all conversion from c-style string to
448
pascal-string (see fix 1)
450
3) ADD: {Unzip} Finderinfo of folders are also restored.
452
4) ADD: {Console} Added info about current path in the command-line box.
454
5) FIX: {Console} Construction of the command-line of the unzip-dialog
459
First beta release 06.June.1998
460
-----------------------------
463
Just to many code was neccessary to build the first mac-port.
466
Start of the port MacZip
470
--------------------------------------------------------------------------------
474
CHG: inform about changed items.
478
{Unzip} -> only related to the Unzip-module
479
{Zip} -> only related to the Zip-module
480
These are just libraries and are linked into the console-app.
482
{Console} -> only related to the Userinterface (not SIOUX)
483
MacOS has no tool like a command-line. So it's neccessary
484
to write wrapper around the command-line tools.