=====================
== NuLib ChangeLog ==
=====================

NuLib v3.25 beta 3 (27 November 1996, Devin Reade <gdr@myrias.com>)

- Split off modification list into the "ChangeLog" file.
- Updated Andy's email address.
- Fixed an assert in nushk.c that was failing (unnecessarily) when extracting
  LZW-II files.
- Eliminated "comparison always true" warning in nusq.c
- Replaced gets() with fgets() in nuext.c [potential buffer overflow]
- Changed (again) the nudefs.h #elif for NetBSD/FreeBSD/BSDI systems.
- Updated man page, coalesced and cleaned up the documentation.
- Got the Orca/Shell version compiling.  fdopen(3) needs to be written.
- Some more GNO-specific changes.
- Added stack checking under Orca/C.
- Did a function rename from Quit-->QuitNulib to avoid name conflicts
  under Orca/C.

NuLib v3.25 beta 2 (18 October 1996, Devin Reade <gdr@myrias.com>)

- Added support for FreeBSD/NetBSD with gcc v1.42
- Added man page.
- Added "make file" for compiling under an unenhanced Orca/Shell
  (The Orca/Shell port is not yet done.)
- The GNO port is running, abeit without Orca/Shell style command
  line expansion.  (Not yet done.)

NuLib v3.25 beta 1 (September 1996, Devin Reade <gdr@myrias.com>)

- Fixed a bug that was causing nulib to dump core:
	There was a hardcoded limit of 256 files on the command line.
	Unfortunately, this limit was also applied as the maximum number
	of files in the archive.  Worse yet, there was a section (where
	one is recursing through subdirs) where the current file count
	is _not_ checked against the maximum.  The result was an array
	bound being overwritten and a subsequent core dump (or crash on
	systems without an MMU).

	This hard limit has been removed; instead, the file count is
	allowed to grow dynamically.
- Fixed some bugs where printf had missing args.
- Eliminated some extraneous static variables.  (Declared static in a header
  file, but not used in some files.)
- Changed the way the load segment is specified when compiling on the IIgs.
  Also changed all segment names to be 10 characters long.
- #ifdef'd out various unused variables.
- Unnested various comments.
- ANSIfied the files.  They still compile with a non-ANSI compiler,
  provided that compiler doesn't define __STDC__.
- Changed nudefs.h so that, as much as possible, the appropriate
  #defines are made automagically.
- Usage and help screens now only print out the base file name, not
  the full one.
- Added a describe(1) entry and an rversion resource.
- Verified compilation for the following systems.  This _may_ have broken
  compilations for some older systems:
	AIX 3.2.5 with cc v2, xlc v2, and gcc v2.7.2
	AIX 4.1 with cc v2, xlc v2, and gcc v2.7.2
	HAL Sparc-64 OS with hcc v1.0 and gcc v2.7.2
	HPUX with cc v10.10 and gcc v2.7.2
	Linux with gcc v2.6.3 and lcc v3.4b
	Solaris 2.4 with SunPro C v4.0 and gcc v2.7.2
	Solaris 2.5.1 with SunPro C v4.0 and gcc v2.7.2
	SunOS 4.3 with /usr/5bin/cc and gcc v2.7.2

NuLib v3.24 (January 1993)
- Improved MS-DOS filename fixing (now enforce "8 chars '.' 3 chars")
- Fixed bug in LZW decompressor

NuLib v3.23 (December 1992)
- Minor bug fixes for the MS-DOS version (Dale G. Shields)

NuLib v3.22 (September 1992)
- Added "compress file as if it were a disk" code (provided by somebody
  whose name I just lost).  Seems to work, but it's not 100% tested.
- Faster compression
- Updated filetype abbreviations

NuLib v3.21
- Minor fixes

NuLib v3.2 (April 1992)
- Lots of minor bug fixes.  (I was getting lost in the version numbers so
  I just upped it to 3.2).  Of importance are the bug fixes to the LZW-II
  decoder and making it compatible with SysV EFT (Expanded Fundamental
  Types).  The latter includes stuff like eight byte file offsets on lseeks.

NuLib v3.14 (November 1991)
- Finished fixing NeXT probs.  Really. (Chris Osborn w/push from Bruce Kahn)
- Fixed some minor bugs (Larry W. Virden)

NuLib v3.13
- Repaired XENIX directory stuff in "nuadd.c" (Morgan Davis)

NuLib v3.12
- Fixed problem with table clears on non-LZW blocks (Frank Petroski)

NuLib v3.11
- Added some stuff to make the NeXT happy (Chris Osborn)
- Added some stuff to allow it to compile with MS C 6.0.

NuLib v3.1 (October 1991)
- GS/ShrinkIt LZW-II uncompression (finally!)
- All ShrinkIt compression/uncompression routines are about 15% faster
- Better compatibility with System V, especially the AT&T 3B2
- Cleaned up code a bit and fixed minor bugs.

Nulib v3.03 (February 1991)
- Fixed XENIX problems with includes and libs (Ron Higgins).
- Fixed bug in directory expansion (Larry W. Virden).

NuLib v3.02
- Silenced screaming about bad dates (Larry W. Virden).
- Fixed glitches in nulib.lnk and nulib.mak (Bruce Kahn).

NuLib v3.01
- Fixed non-compression bug in ShrinkIt LZW (Scott Blackman).

NuLib v3.0 (September 1990)
- Added ShrinkIt LZW-I compression (replaces "fake" compression used
  previously).
- Added UNIX 12-bit and 16-bit compression.
- New archive listing format (similar to ARC and ZOO).
- Added "compress" parameter to NULIBOPT environment variable.
- Added M suboption for comment ("message") printing.

NuLib v2.3 (May 1990 - not released):
- Addition of UNIX compress.
- Threw in some benchmarks.

NuLib v2.2 - v2.22 (Apr 1990):
- Second release as NuLib (after a brief vacation).
- Fixed incompatibility problems with GS/ShrinkIt and ShrinkIt v3.0.
- Added some support for comments.
- Unpacks disk archives to files (good for the UNIX Apple ][+
  simulator).
- Fake compression correctly handles files that don't compress (it
  used to store them as compressed whether or not they got smaller).
- Various minor changes/improvements (more help screens, etc).

NuLib v2.1.1 (Nov 1989):
- First wide distribution as NuLib.
- Fixed command processing bugs.

NuLib v2.1 (Nov 1989):
- Yet another name change (thanks loads, L&L).
- ShrinkIt LZW uncompression added.
- MS-DOS code added.
- Shell variable used for defaults.
- CRLF translation.
- Added R, I, and F suboptions.

CShrink v2.08 (Oct 1989):
- Altered help screens, some commands.
- Added recognition of other kinds of files (compressed, shar, etc).
- Switched to table lookups for calculating CRC (much faster).

CShrink v2.07 (Sep 1989):
- Another name change (legal reasons).
- UNIX port completed.
- Binary II operations are fully functional.
- Some compression code added (unSQueeze, fake ShrinkIt pack).
- '+' suboption added.
- Text translation improved.
- Printing of archived files (P option) now works.

NuARC v2.03 (Aug 1989):
- First NuARC distribution (APW executable only).
- Added subdirectory expansion.
- Added suboption processing.
- Replaced buffered I/O (fopen(), fread(), etc) on files with
  lower-level read()/write() routines.
- Added automatic byte-order determination.
- Implemented move, extract all, and update/freshen.
- Added Print archived file option.
- Added Verbose, Text translation, and Uncompressed storage
  suboptions.
- Wrote this documentation.

NuARC v2.0 (Aug 1989):
- Added archive manipulation routines (EXtract, Add and Delete for
  uncompressed archived files).
- Added filename-only output format.
- Added CRC verification.
- Added byte order and data element size checks.
- Removed the LAMESEEK option.

NuView v1.2 (July 1989):
- Major overhaul of all source code to make it work under APW C.
- New //gs-specific routines added.
- Minor alterations to output format.

NuView v1.1 (June 1989):
- Major rewrite of the way archives are read (had problems with
  machines requiring word-alignment of data).
- Added thread file position storage to internal archive structure.
- Fixed non-(void) sprintf() bug.

NuView v1.0 (May 1989):
- Initial release.
- Works only on a Sun 3/50 running BSD UNIX.
