Mako v0.4.1
Mako v0.4.1
365 Mako tests + 81 Rust tests, 0 failures. 11/11 CI jobs green.
Runtime
- Zero-alloc
print(f"..."),log_*(f"..."),http_respond(f"...")— f-string bodies consumed directly from the stack buffer, no malloc/free writevprint on Unix — single syscall for data + newline- Stored hashes in string-keyed maps — skip
memcmpon hash mismatch during probing - Faster integer hash (splitmix64 replaces wyhash for int-keyed maps)
- Result/Option
= {0}aggregate init instead ofmemset - Fix memory leaks in
wrap_err,error_join,error_tag - Map probe
MAKO_LIKELYbranch hints
Codegen
len(f"...")computes length from stack buffer without materializing a string- Skip redundant old-pointer save on
s = append(s, v)self-append emit_fstring_as_view/emit_fstring_view_callhelpers for zero-alloc f-string consumers
Performance
- Inline introsort with corrected depth limit and linear sorted/reverse fast paths
- Map key ownership: avoid cloning fresh string keys (literals, interpolation, concatenation)
- Workload: ~23M req/s — tied with Rust, 2x faster than C and Go
Build
- Windows storage I/O: direct fd, mmap, WAL primitives
- Portable temp paths for Windows filesystem tests
- Fix Windows CI: skip plugin compilation test when cc is unavailable
- All 11 CI jobs pass: Ubuntu, macOS, Windows, ASan, UBSan, TSan, GCC, cross-compile, bench gates, claims
Install
# macOS / Linux
curl -fsSL https://github.com/loreste/mako/releases/latest/download/install-linux.sh | bash
# Or download the binary directly
curl -LO https://github.com/loreste/mako/releases/download/v0.4.1/mako-v0.4.1-darwin-arm64.tar.gzWhat's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1
What's Changed
- Prevent Windows debug stack overflows by @attahn in #11
- Add compiler scaling fixtures by @attahn in #12
- Preserve Windows task results by @attahn in #13
- Fix runtime optimization correctness regressions by @attahn in #14
- Make filesystem tests portable on Windows by @attahn in #15
- Support Windows storage I/O primitives by @attahn in #16
Full Changelog: v0.4.0...v0.4.1