X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=WHATSNEW;h=63253343fb9aca00a2f1be960f0cb856c83bcdbe;hp=2358d929e81843205c921a4e2d424e3c928a926a;hb=db9915ee97670885f3f2302d8c41ac6c61f2d77e;hpb=c1f15004337f855eb681098a4f3fdc77f105577d diff --git a/WHATSNEW b/WHATSNEW index 2358d929..63253343 100644 --- 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,117 @@ 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 release notes + +new pthread cancellation implementation: +- safe against resource-leak/side-effect-leak race conditions +- safe against interruption by signal handlers +- reduced bloat in all cancellable functions +- reduced bloat for blocking cancellation + +new interfaces implemented: +- realpath (limited functionality) +- wordexp (limited functionality) +- flock (nonstandard) +- forkpty (nonstandard) +- posix_fadvise +- posix_fallocate + +general bug fixes: +- syslog function failure to communicate with syslogd +- bug in siginfo_t definition if wait.h was included before signal.h +- incorrect struct definitions for most of sysv ipc +- pthread_exit/cancel on timer handler wrongly destroying the timer +- linux dup2 ebusy workaround +- obscure issues in non-threaded programs using some pthread functions +- getopt_long allowed mismatch in last char of option name +- incorrect parsing of obscure ip address forms +- initgroups not working reliably (uninitialized var) +- shadow pass treating empty expiry field as pass-expired-in-1970 +- bogus longjmp if pthread_exit was called from cancellation handlers + +x86_64-specific bug fixes: +- fcntl file locking +- thread stack alignment +- broken select timeouts due to incorrect timeval definition