Releases
v0.1.1
Compare
Sorry, something went wrong.
No results found
[0.1.1] - 2026-08-08
π Bug Fixes
Prepend v to the tag semver.yml computes
Use a PAT to push the release tag, not the default token
Join the $server topic and render the rows that arrive on it
Clamp send_line's CRLF write to the buffer it actually filled
Decode Transfer-Encoding: chunked in HTTP client (fixes #6 )
Guard the zero-length memcpy in growbuf_append and the body copy
Refuse a topic that does not fit instead of joining a different one
Add registration deadline and connection cap (issue #7 )
Replace deprecated ATOMIC_VAR_INIT with direct initializer
Emit nick!user@host prefix for $server-window NOTICE rows (#24 )
(#18 ) Check json_escape_into return at all 33 connection.c call sites
Distinguish server hostname from user nick in server-window NOTICEs (#29 )
(test) Build the grappa image in prepare.sh before running it
(e2e) Drop include: directive; wire COMPOSE_FILE for multi-file merge
(e2e) Anchor project-directory to test/ and add RFC 1459 check
(e2e) Fix build context paths for compose project-dir resolution
(e2e) Fix volume paths relative to compose project directory
(e2e) Replace ping with nc in isolation.sh for CI compatibility
πΌ Other
Add SO_RCVTIMEO/SO_SNDTIMEO to bound all blocking I/O on the grappa leg
Reject IPv6 bind addresses at parse time, not mid-startup
Strip CR/LF/NUL in send_line before writing to client
Resolve conflict with develop (test_server_window vs test_render)
Develop into master
Develop into master
Resolve conflict with develop (caps.py step vs e2e job)
Develop into master
π Documentation
Remove dangling bicchierino#2/#3 references from code and README
π§ͺ Testing
Add unit suites for json, ws, jsonw, config, http and bridge
Cover the chunked decoder added in #19
Assert the $server-window prefix shape for both sender kinds
A sealed azzurra stack for end-to-end work
Cover the CR/LF/NUL guard merged in #32
Cover the connection cap and registration deadline from #20
Cover the socket timeouts added in #17
βοΈ Miscellaneous Tasks
Run make check in the build matrix and under ASan/UBSan
Ignore a local-only CLAUDE.md mirror
Run caps.py in the sanitizers job, and renumber its blocks
Wire the sealed azzurra e2e stack into the pipeline
You canβt perform that action at this time.