update release notes in prep for 0.7.9 release
[musl] / WHATSNEW
index 2358d92..3b6680a 100644 (file)
--- a/WHATSNEW
+++ b/WHATSNEW
@@ -88,7 +88,8 @@ implemented POSIX timers.
 
 optimized and simplified many thread-related functions.
 
-eliminated resource leak races in thread cancellation.
+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.
@@ -104,3 +105,107 @@ 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
+
+
+
+0.7.7 - more bug fixes and program-compatibility improvements
+
+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.
+
+fixed breakage of statvfs on x86_64
+
+fixed crash in getmntent_r
+
+fixed bug in POSIX timers created with NULL sigevent argument
+
+improved semaphore performance, and sem_wait is now interruptable by
+signals, as required by POSIX.
+
+added many compatibility and system-level interfaces, increasing the
+proportion of busybox that works with musl.
+
+
+
+0.7.8 - more bug fixes and compatibility improvements
+
+fixed problems with ipv6 dns and address printing code that made ipv6
+support practically unusable, and some other getaddrinfo bugs.
+
+fixed broken sendmsg/recvmsg functions on x86_64 (caused by incorrect
+msghdr structure).
+
+fixed broken sigsetjmp asm on x86_64.
+
+worked around a problem with input buffering on terminals reblocking
+after getting a blank line, due to a bug in the linux readv syscall.
+
+various improvements to the "rsyscall" system used to implement
+threaded setuid, setgid, etc.
+
+exiting/cancelling the a timer handler thread no longer kills the
+timer.
+
+fixed incorrect trailing zeros on some %g conversions in printf.
+
+fixed buggy byte-swapping functions and moved them to inlines in
+byteswap.h.
+
+many small improvements to header/application compatibility, support
+for nonstandard macros, etc.
+
+
+
+0.7.9 - new cancellation, bug fixes, compatibility, optimization, cleanup
+
+major changes to pthread cancellation handling which simplify and
+reduce code size while ensuring no resource leaks or dangerous
+behavior with signals.
+
+better code factorization for smaller static binary sizes, especially
+in the presence of library code that is thread-aware but never
+actually creates any threads.
+
+optimizations for size and performance in many syscall wrappers and
+pthread functions.
+
+fixed fcntl locking on x86_64.
+
+fixed syslog implementation to work correctly with busybox syslogd and
+presumably all other syslogd implementations using /dev/log.
+
+fixed major problems, including wrong public struct definitions, in
+sysvipc interfaces.
+
+improved timers with thread delivery to avoid some issues with reusing
+the same thread for all expirations.