From 2ad8cfa98f8addabbe731a6669cb0b6fa6875393 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Fri, 29 Mar 2002 08:19:39 +0000 Subject: [PATCH] Updated. --- CHANGELOG | 125 ++++++++++++++++++++++++++++-------------------------- TODO | 13 ++---- 2 files changed, 68 insertions(+), 70 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 031986c6..5220a7d8 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -2,32 +2,44 @@ * CHANGELOG. */ -07282001 - Initial release. -08012001 - Added a safety memset in error setting, fixed URLs and email addr. -08062001 - Added CD-ROM detection code to the unix platform driver. -08072001 - Changed version to 0.1.1. -08232001 - Fixed a potential free()ing of a NULL pointer in - __PHYSFS_platformEnumerateFiles() in platform/unix.c. Added - platform/win32.c. Other cleanups to get this compiling with - Visual C and CygWin. Added BAIL_MACRO for times when we were doing - BAIL_IF_MACRO(1, ...). Abstracted mkdir() in the platform drivers. - Added GRP setting output to showcfg in the Makefile. Updated INSTALL - with license info and Win32 build instructions. Dependency on the - readline library in test_physfs.c is now optional. - Changed version to 0.1.2. -08282001 - win32.c now checks HOMEDRIVE, HOMEPATH, and HOME when calculating - the userdir. Added include files that make it a little closer to - compiling under Cygwin. Added a TODO file. Fixed unix.c's - __PHYSFS_platformCalcBaseDir() so that it actually works. Fixed - Makefile so that it links the test program properly. - Changed version to 0.1.3. -08292001 - win32.c calculates the base dir with GetModuleFileName() first, now, - and falls back to SearchPath() if there were problems. Changed an - occurence of _MAX_PATH to MAX_PATH, so both CygWin and Visual C can - handle it. -08312001 - Built PhysicsFS on Mandrake 8.0 for the PowerPC. Compiles clean, - but there's at least one byte-ordering issue in zip.c that needs - to be fixed. +03292002 - Fixed a potential problem in ZIP_realpath() and some byte order + issues in zip.c. Converted unzip.c to use physfs file i/o + abstractions. Converted CHANGELOG to list latest entries first. +03242002 - Added __PHYSFS_platformInit() and __PHYSFS_platformDeinit(). Win32 + improvements by Gregory S. Read. Added PHYSFS_[us]int(8|16|32) + types...this breaks binary compatibility with previous PhysicsFS + releases! Added platform specific i/o functions, so we don't have + to rely on stdio anymore. Updated TODO with my comments on the + physfs mailing list. 1.0, here we come! Removed race condition from + grp.c and converted to file i/o abstraction layer calls from stdio. + Tons of other fixes and enhancements. +03202002 - Patched platform/win32.c to compile. +03152002 - PHYSFS_setSaneConfig() now handles failure to set the write dir + better. Patched makefile to link the test program. Changed all the + "write" functions to get data from a "const" buffer. Added an + "extras" dir, which currently contains PhysFS->SDL_RWops glue code. +03052002 - Made unix.c's timeslice implementation more portable, and added a + Darwin-specific means to detect CDs (thanks to Patrick Stein). + Minor cleanup in win32.c (changed "for (; condition ;)" into + "while (condition)" ...) +11142001 - Removed a redundant error check in platform/win32.c +10092001 - Syntax fixes in dir.c, a FIXME in grp.c, and a "cat" command in + the test program. Apparently I had accidentally removed a rather + crucial line from dir.c a few revisions ago, and no one noticed. :( + Fixed. The win32 userdir will default to the base dir, now. +09252001 - Changed API: PHYSFS_setSaneConfig() takes an organization name, and + sets up less directories. Be warned. Fixes from David Hedbor: + make setSaneConfig() set write directory correctly if it had to + create the directory, and make sure that the writing functions + get used in dir.c when a file is opened for writing/appending. + Updated CREDITS. +09142001 - David Hedbor submitted a patch to handle a case where the + current working directory has been deleted out from under the + process (both in platform/unix.c and physfs.c itself). Thanks, + David! Added a CREDITS file. Changed the format of the author field + in PHYSFS_ArchiveInfo to put the email address between "<>" instead + of "()" chars. Updated TODO. make install now deletes previous + revisions of the library. Changed version to 0.1.4. 09012001 - Happy September. Moved the Visual C project files and the zlib source to a separate download. Look for it at http://icculus.org/physfs/downloads/physfs-win32-support.zip ... @@ -43,41 +55,32 @@ code somewhat). Haven't tried to compile the zipfile support, and I still can't link the library. Dunno what the hell I'm supposed to do there. Isn't Unix supposed to be hard compared to this? -09142001 - David Hedbor submitted a patch to handle a case where the - current working directory has been deleted out from under the - process (both in platform/unix.c and physfs.c itself). Thanks, - David! Added a CREDITS file. Changed the format of the author field - in PHYSFS_ArchiveInfo to put the email address between "<>" instead - of "()" chars. Updated TODO. make install now deletes previous - revisions of the library. Changed version to 0.1.4. -09252001 - Changed API: PHYSFS_setSaneConfig() takes an organization name, and - sets up less directories. Be warned. Fixes from David Hedbor: - make setSaneConfig() set write directory correctly if it had to - create the directory, and make sure that the writing functions - get used in dir.c when a file is opened for writing/appending. - Updated CREDITS. -10092001 - Syntax fixes in dir.c, a FIXME in grp.c, and a "cat" command in - the test program. Apparently I had accidentally removed a rather - crucial line from dir.c a few revisions ago, and no one noticed. :( - Fixed. The win32 userdir will default to the base dir, now. -11142001 - Removed a redundant error check in platform/win32.c -03052002 - Made unix.c's timeslice implementation more portable, and added a - Darwin-specific means to detect CDs (thanks to Patrick Stein). - Minor cleanup in win32.c (changed "for (; condition ;)" into - "while (condition)" ...) -03152002 - PHYSFS_setSaneConfig() now handles failure to set the write dir - better. Patched makefile to link the test program. Changed all the - "write" functions to get data from a "const" buffer. Added an - "extras" dir, which currently contains PhysFS->SDL_RWops glue code. -03202002 - Patched platform/win32.c to compile. -03242002 - Added __PHYSFS_platformInit() and __PHYSFS_platformDeinit(). Win32 - improvements by Gregory S. Read. Added PHYSFS_[us]int(8|16|32) - types...this breaks binary compatibility with previous PhysicsFS - releases! Added platform specific i/o functions, so we don't have - to rely on stdio anymore. Updated TODO with my comments on the - physfs mailing list. 1.0, here we come! Removed race condition from - grp.c and converted to file i/o abstraction layer calls from stdio. - Tons of other fixes and enhancements. +08312001 - Built PhysicsFS on Mandrake 8.0 for the PowerPC. Compiles clean, + but there's at least one byte-ordering issue in zip.c that needs + to be fixed. +08292001 - win32.c calculates the base dir with GetModuleFileName() first, now, + and falls back to SearchPath() if there were problems. Changed an + occurence of _MAX_PATH to MAX_PATH, so both CygWin and Visual C can + handle it. +08282001 - win32.c now checks HOMEDRIVE, HOMEPATH, and HOME when calculating + the userdir. Added include files that make it a little closer to + compiling under Cygwin. Added a TODO file. Fixed unix.c's + __PHYSFS_platformCalcBaseDir() so that it actually works. Fixed + Makefile so that it links the test program properly. + Changed version to 0.1.3. +08232001 - Fixed a potential free()ing of a NULL pointer in + __PHYSFS_platformEnumerateFiles() in platform/unix.c. Added + platform/win32.c. Other cleanups to get this compiling with + Visual C and CygWin. Added BAIL_MACRO for times when we were doing + BAIL_IF_MACRO(1, ...). Abstracted mkdir() in the platform drivers. + Added GRP setting output to showcfg in the Makefile. Updated INSTALL + with license info and Win32 build instructions. Dependency on the + readline library in test_physfs.c is now optional. + Changed version to 0.1.2. +08072001 - Changed version to 0.1.1. +08062001 - Added CD-ROM detection code to the unix platform driver. +08012001 - Added a safety memset in error setting, fixed URLs and email addr. +07282001 - Initial release. --ryan. (icculus@clutteredmind.org) diff --git a/TODO b/TODO index d46c96b1..597242aa 100644 --- a/TODO +++ b/TODO @@ -8,14 +8,12 @@ These are in no particular order. A 1.0 release is reliant on doing most of compiles under Cygwin otherwise. - Hmm...we can determine the actual CD-ROM drives under Win32, but how do you decide that there's no disc in the drive? -- MacOS (Classic and X) support. - Platform-specific functions/macros to handle byte ordering. - A PHYSFS_readUint32(), _readSint32(), etc API. - Patch the zlib used on win32 to 1.1.4. - Switch the CHANGELOG to list newest changes first. - Write manpages, preferrably generated from some javadoc-style solution so we can make HTML versions etc from the same data. -- Make internal code respect the new typedefs (PHYSFS_?int??). - Byte order API; just something simple like: __EXPORT__ PHYSFS_uint16 PHYSFS_swapBE16(PHYSFS_uint16 val); __EXPORT__ PHYSFS_uint16 PHYSFS_swapLE16(PHYSFS_uint16 val); @@ -26,15 +24,12 @@ These are in no particular order. A 1.0 release is reliant on doing most of - Make win32.c respect the more strict filesystem layout enforced by Win2000 and later. - Improve ZIP_seek() (archivers/zip.c) -- entry_is_symlink() and version_does_symlinks() in zip.c have byte-order bugs. +- Make the zipfile parse symlinks with relative paths. See the function + expand_symlink_path() in archivers/zip.c ... +- Make archivers/unzip.c use the new byte order API for a little more + efficiency (it gets 32-bit ints as four 1-byte reads; yuck.) - Actually, the zipfile driver could use a lot of tweaking. Please look through it. -- Abstract out the use of stdio. It's not as "std" as I would like, in my - experience. Add code to the platform drivers to open, read, write, seek, - tell, etc on an abstract data type that is opaque outside the individual - platform drivers, so that dir.c has a unified codebase that talks to this - internal abstraction layer. This opaque data type can be a FILE * on unix, - and a HANDLE on win32, etc... - Other archivers: perhaps tar(.gz|.bz2), RPM, etc. These are less important, since streaming archives aren't of much value to games (which is why zipfiles are king: random access), but it could have uses for, say,