ciderpress/nufxlib/ChangeLog.txt
Andy McFadden 51b5f00f5c Large set of changes to restore CiderPress build.
CiderPress and MDC now compile, and execute far enough to open
their respective "about" boxes, but I doubt they'll do much
more than that.

* Switch from MBCS to UNICODE APIs

Microsoft switched to UTF-16 (by way of UCS-2) a long time ago,
and the support for MBCS seems to be getting phased out.  So it's
time to switch to wide strings.

This is a bit awkward for CiderPress because it works with disk
and file archives with 8-bit filenames, and I want NufxLib and
DiskImgLib to continue to work on Linux (which has largely taken
the UTF-8 approach to Unicode).  The libraries will continue to
work with 8-bit filenames, with CiderPress/MDC doing the
conversion at the appropriate point.

There were a couple of places where strings from a structure
handed back by one of the libraries were used directly in the UI,
or vice-versa, which is a problem because we have nowhere to
store the result of the conversion.  These currently have fixed
place-holder "xyzzy" strings.

All UI strings are now wide.

Various format strings now use "%ls" and "%hs" to explicitly
specify wide and narrow.  This doesn't play well with gcc, so
only the Windows-specific parts use those.

* Various updates to vcxproj files

The project-file conversion had some cruft that is now largely
gone.  The build now has a common output directory for the EXEs
and libraries, avoiding the old post-build copy steps.

* Added zlib 1.2.8 and nufxlib 2.2.2 source snapshots

The old "prebuilts" directory is now gone.  The libraries are now
built as part of building the apps.

I added a minimal set of files for zlib, and a full set for nufxlib.
The Linux-specific nufxlib goodies are included for the benefit of
the Linux utilities, which are currently broken (don't build).

* Replace symbols used for include guards

Symbols with a leading "__" are reserved.
2014-11-16 21:01:53 -08:00

289 lines
9.6 KiB
Plaintext

2014/10/30 ***** v2.2.2 shipped *****
2014/10/28 fadden
- Switched from CVS on sourceforge to github.
- Updated configure scripts and makefiles.
2007/02/19 ***** v2.2.0 shipped *****
2007/02/19 fadden
- Auto-detect and handle "bad Mac" archives.
- Switched from LGPL to BSD license.
2006/12/02 fadden
- Check for overrun when unpacking RLE.
2006/02/18 ***** v2.1.1 shipped *****
2006/02/18 fadden
- Correct a wayward assert. (Changing the filetype of a file from an
HFS disk, which has zero-length data fork, falsely triggered the
assert.)
2005/09/17 ***** v2.1.0 shipped *****
2005/09/17 fadden
- Added "kNuValIgnoreLZW2Len" flag, which enables NuLib2 to handle
archives created by an unknown but badly broken program.
- Fixed build for gcc v4.0.
2004/10/11 ***** v2.0.3 shipped *****
2004/09/25 fadden
- Fixed: attempting to add files after deleting *all* entries in an
archive would fail.
- Removed use of a "ushort" from NufxLib.h.
2004/09/20 fadden
- Corrected behavior after flush when original archive can't be
deleted.
2004/09/09 fadden
- Added header offset and junk offset to NuGetAttr.
2004/08/22 fadden
- Fixed obscure bug when recompressing a GSHK-added zero-length file
when "fake threads" is enabled.
2004/03/10 ***** v2.0.2 shipped *****
2004/03/09 fadden
- Set access permissions based on umask when extracting a "locked"
file. My thanks to Matthew Fischer for sending a patch.
- Reject archives with a MasterEOF == 48, not <= 48. There are
some otherwise valid archives created by an old version of ShrinkIt
that have MasterEOF==0.
2003/10/16 ***** v2.0.1 shipped *****
2003/10/16 fadden
- Added workaround for bad HFS option lists created by GSHK.
- Added junk-skipping feature. Up to 1024 bytes of crud (e.g.
MacBinary headers or HTTP remnants) will be searched for evidence
of an archive.
2003/06/19 sheppy
- Added support for resource forks and file and aux types when built
for Mac OS X.
2003/03/18 ***** v2.0.0 shipped *****
2003/03/10 fadden
- Added support for automatic high-ASCII text stripping.
2003/02/23 fadden
- Added test-twirl to samples.
2003/02/22 fadden
- Turn off EOL conversion when extracting disk images.
- Added NuTestRecord().
2003/02/18 fadden
- Added "original pathname" fields to NuFileDetails and NuErrorStatus.
- Changed callback setters to return NuCallback instead of NuError.
- Switched to case-sensitive filename comparisons.
2003/02/08 fadden
- Upped version to v2.0.0.
- Changed DataSource API. Removed "doClose" and added an optional
callback function that handles releasing of resources. Necessary
to make Win32 DLLs work right with unsuspecting apps.
- Changed DataSource "copy" function to use refcounting. Still
not quite right, but it'll do for now. Memory leaks in DataSource
handling appear to be fixed. (I love valgrind.)
2003/01/10 fadden
- Added version numbers to header.
- Added kNuValueMaskThreadless to control handling of "threadless"
records. Now records without threads can be silently "fixed" so
the application does need to handle them specially.
2002/12/06 fadden
- Made changes to allow NufxLib to be built as a Win32 DLL.
2002/10/20 ***** v1.1.0 shipped *****
2002/10/10 fadden
- changed behavior so that deleting all records is allowed
2002/10/09 fadden
- added support for "bzip2" compression via libbz2
- added ability to selectively disable compression methods
- added "-m" flag to samples/launder so you can specify compression
2002/09/30 fadden
- added support for "deflate" compression via zlib
2002/09/27 fadden
- added support for 12-bit and 16-bit LZC (UNIX compress)
2002/09/26 fadden
- added support for SQueezed files (both compress and expand)
2002/09/23 fadden
- ran the code through valgrind; found and fixed some minor bugs
2002/09/20 fadden
- pulled the sources out and started fiddling with them again
- changed hard tabs to spaces
2000/05/22 ***** v1.0.1 shipped *****
2000/05/22 fadden
- added workaround for buggy 140K DOS3.3 GSHK images
2000/05/18 ***** v1.0.0 shipped *****
2000/05/18 fadden
- updated version information to indicate final release
2000/03/25 ***** v0.6.1 shipped *****
2000/03/25 fadden
- Sheppy says Mac OS X PPC v1.02 and v1.2 work with minor SysDefs tweak
2000/03/05 ***** v0.6.0 (beta) shipped *****
2000/03/05 fadden
- modified NuOpenRW to call mktemp or mkstemp if tmpPath looks like
a template
- removed DEBUG_MSGS from default CFLAGS
- updated version information to indicate beta release
2000/02/24 ***** v0.5.1 shipped *****
2000/02/20 changes from Scott Blackman
- portability fixes for DJGPP under Win95
2000/02/17 changes from Devin Reade
- portability fixes for BSD, AIX, and others
2000/02/09 ***** v0.5.0 (alpha) shipped *****
2000/02/08 fadden
- tweaked the BeOS/PPC config around a little
- deleted some commas to make "gcc -pendantic" happy
2000/02/06 fadden
- include @CFLAGS@ in case somebody wants to override them
2000/02/06 ***** v0.4.0b shipped *****
2000/02/06 fadden
- added "install-shared" make target
- portability fixes for HP/UX
- configure.in test for presence of snprintf/vsnprintf declarations
2000/02/06 ***** v0.4.0a shipped *****
2000/02/06 fadden
- massaged configure.in for BeOS, and added some type casts for mwerks
2000/02/06 ***** v0.4.0 shipped *****
2000/02/06 fadden
- added value range checking to Nu_SetValue
2000/02/05 fadden
- finished "test-basic"
- added an "install" target to copy libnufx and NufxLib.h
- added "mkinstalldirs"
- fixed a memory leak in NuTest
- made several implicit typecasts explicit for Visual C++'s benefit
- renamed MiscStuff's replacement function to "Nu_function"
- use "rb" or "wb" as fopen arg in sample code for Win32
2000/02/04 fadden
- wrote a fair piece of "test-basic"
- added "stickyErr" to "toBuffer" data sink so we can catch overruns
2000/02/02 fadden
- minor changes to get it working under Win32 (Visual C++ 6.0)
- added --enable-dmalloc to configuration
- instead of constantly allocating 16K buffers, use pArchive->compBuf
- ignore DataSink convertEOL value when doExpand is false
2000/02/01 fadden
- added system-specific PATH_SEP define for samples (imgconv, exerciser)
- set the pathname in ErrorStatus for CRC failures
2000/01/31 fadden
- fixed a typo causing zero-byte GSHK-damaged files to report CRC errors
- added support for DOS-ordered 2MG images to "imgconv"
2000/01/29 ***** v0.3.0 shipped *****
2000/01/29 fadden
- renamed "tests" to "samples"
- changed library version to x.y.z format (major, minor, bug-fix)
- added DEBUG_VERBOSE define, took some stuff out of DEBUG_MSGS
2000/01/28 fadden
- make the Skip result work when an input file can't be opened
- don't allow leading fssep chars in AddRecord
- don't treat a multi-file BNY that happens to have a ShrinkIt archive
in the first slot as a BXY
- added "-t" flag (write to temp) to "launder"
- in OpenReadWrite, treat zero-length archive files as newly-created
- added workaround for GSHK's zero-byte data fork bug
2000/01/26 fadden
- added status result flags to NuFlush
- dropped kNuAbortAll and added kNuIgnore
- implemented kNuValueIgnoreCRC
- update the storageType whenever we change the record
2000/01/25 fadden
- don't remove the temp file if the rename fails
- Nu_ReportError now optionally uses a callback instead of stderr
- pass NuArchive* and all the trimmings into Nu_ReportError so we can
do the callback thing; required adding arguments to lots of places
- clearly labeled BailError output as debug-only, then replaced most
of the BailErrorQuiet calls with BailError
- added global error message for when pArchive doesn't exist (e.g. Open)
2000/01/24 fadden
- added args to "launder", and made it work right with 0-length threads
- reject disk image threads that aren't a valid size
- in NuFlush, recognize when a "copy" set hasn't had any changes made
- AddThread no longer makes a copy of the DataSource
2000/01/24 ***** v0.2 shipped *****
2000/01/23 fadden
- added "sec" (Set ErrorHandler Callback) to exerciser
- wrote "launder" test program
- made "doExpand" option on data sinks work
2000/01/22 fadden
- added OnlyUpdateOlder attribute and implemented for add and extract
- made HandleExisting work for AddFile/AddRecord
- AddThread's validation now blocks data and control threads in same
record
- AddFile and AddRecord now use same validation function as AddThread
2000/01/20 fadden
- added Eric Shepherd's BeOS shared lib stuff to configure.in
- restructed the progress updater, and made it work when adding files
2000/01/19 fadden
- normalized SysDefs.h, changing UNIX to UNIX_LIKE and defining for BeOS
- added "shared" target to makefile
- added BeOS stuff to autoconf setup
2000/01/17 fadden
- fixed Makefile issue preventing "tests" from working with old GNU make
- fixed Lzw.c problem fouling up SunOS gcc v2.5.8
- discovered "<" vs "<=" flapping in GSHK, which I can't Mimic
- fixed option list dump in debug print
- properly return from all Malloc errors; abort is now debug-only again
- lots of BeOS/Metrowerks "it's not gcc" changes from Eric Shepherd
2000/01/17 ***** v0.1 shipped *****
(much time passes)
mid-1998 fadden
- work begins