ciderpress/nufxlib/ChangeLog.txt

289 lines
9.6 KiB
Plaintext
Raw Normal View History

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-10 23:32:55 +00:00
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