release notes for next bugfix release
[musl] / WHATSNEW
index 82cb2a2..da17d1c 100644 (file)
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -1,5 +1,7 @@
 0.5.0 - initial release
 
+
+
 0.5.9 - signal ABI bugfix, various cleanup and fixes:
 
 sigset_t was wrongly defined as 1024 bytes instead of 1024 bits,
@@ -23,11 +25,121 @@ respectively.
 many internal improvements have been made to the syscall-related code
 in preparation for porting to x86_64 and other archs.
 
-upcoming 0.6.0 - x86_64 port, header bugfixes
+
+
+0.6.0 - x86_64 port, various important bugs fixed
 
 new x86_64 (amd64) architecture port, contributed by Nicholas J. Kain,
 along with PORTING guide. source tree layout and build system have
 been improved to accommodate further ports.
 
 various bugs that were introduced while making the headers respect C
-and POSIX namespace standards have been fixed.
+and POSIX namespace standards have been fixed. conformance to the
+standards has been improved.
+
+fixed an inefficiency in qsort that triggered a bug (occasionaly
+internal compiler error) in some versions of gcc.
+
+fixed a major bug in the printf %n specifier that prevented it from
+working and caused memory corruption.
+
+
+
+0.7.0 - major improvements to posix conformance and completeness
+
+implemented posix shared memory and semaphore interfaces.
+
+implemented all remaining required pthread and clock interfaces.
+
+major fixes to signal semantics.
+
+greatly improved temporary file name generation for safety against
+denial of service due to intentional name collisions.
+
+added syscall wrappers for the linux inotify interface.
+
+malloc(0) now returns a non-null pointer.
+
+fixed printf %n specifier (again), pthread_once (it was always
+hanging), and non-default-type mutex behavior.
+
+added ucontext/sigcontext support in headers to facilitate building
+libgcc with dwarf2 unwind support, and possibly other low-level tools.
+
+improved musl-gcc compiler wrapper.
+
+implemented many small missing functions here and there, minor header
+fixes, etc.
+
+
+
+0.7.1 - improvements to completeness, bug fixes
+
+implemented flockfile, wprintf, and robust mutex functions.
+
+fixed stack corruption bug in times(), minor header bugs, and some
+error return value bugs in thread interfaces.
+
+
+
+0.7.5 - new features, major optimization, and robustness
+
+implemented POSIX timers.
+
+optimized and simplified many thread-related functions.
+
+eliminated resource leak races in thread cancellation. (almost all
+existing implementations, including glibc, have these leaks.)
+
+overhauled stdio implementation to take advantage of readv/writev for
+reduced syscall load, and improved stdio's handling of error status.
+
+added syscall header and interface for applications to use and
+greatly simplified internal system for making syscalls.
+
+strangthened tmpnam/tempnam/tmpfile filename generation and made the
+straight C functions not depend on POSIX symbols.
+
+fixed pthread cancellation ABI on i386 to match the LSB/glibc ABI
+
+better double-free handling in malloc
+
+various minor bug fixes
+
+
+
+0.7.6 - major bug fixes
+
+fixed rare but serious under-allocation bug in malloc.
+
+fixed signedness bug in strchr that prevented finding high bytes.
+
+fixed serious parsing bugs in strtold.
+
+fixed statvfs syscall (it was always failing with EINVAL).
+
+fixed race condition in set*id() functions with threads (possible
+deadlock). further audit still needed though.
+
+fseek no longer sets the stream error flag on failed seeks (this was
+wrong and broke some programs, notably GNU m4).
+
+nl_langinfo is no longer a dummy function. (the functionality was
+previously implemented but accidentally left unused).
+
+various small fixes have been made to the implementations and
+prototypes for nonstandard and obsolete functions
+
+
+
+next release - more bug fixes
+
+fixed floating point formatting and rounding bugs in printf.
+
+fixed broken %N$ positional argument specifiers in printf.
+
+fixed misaligned read/overread bug in strchr which could lead to
+crashes scanning tiny strings at the end of a page when the next page
+is not readable, or on archs (not yet supported) that forbid
+misaligned reads.
+