Cosmopolitan v3.5.3
Your cosmocc toolchain now includes five new useful programs: ar.ape,
sha256sum.ape, resymbol, and cocmd. See ca4cf67 for further details.
This release fixes Android support. You can now run LLMs on your phone
using Cosmopolitan software like llamafile. See 78d3b86 for further
details. Thank you @aj47 (techfren.net) for bug
reports and and testing efforts.
We've worked out additional kinks in our new mmap() runtime, which now
has a more bulletproof locking strategy. See 1bf2d8e for details.
This release fixes a Windows regression that was introduced in the last
release, where programs that need a lot of thread_local
storage would
crash very early during initialization. See e437bed for details.
Newly discovered issues in Cosmo's POSIX threads runtime have been
addressed. It's now possible to cancel a thread that was created by a
canceled thread. Keys now destruct atomically within a thread, out of an
abundance of paranoia w.r.t. signal safety. Thread destructor function
names are also now logged to --strace. It's a boon for debuggability.
See 7695798 for further details.
We invented a new non-POSIX API named pthread_decimate_np() which forces
the runtime to garbage collect zombie threads. It can be used alongside
pthread_orphan_np() to block until detached threads have exited, so it's
safe to CheckForMemoryLeaks(). See 4cb5e21 for further details.
We've also added more preliminary content to the Cosmopolitan Templates
Library, which is an STL replacement that has 10x faster build times.