AtlatestRepositorysigil-xmpp
1# Changelog
2
3Versions are synced with Sigil releases. A missing entry indicates no changes for that version.
4
5All notable changes to this project will be documented in this file.
6
7The format is based on [Keep a Changelog](https://keepachangelog.com/),
8and this project adheres to [Semantic Versioning](https://semver.org/).
9
10## [0.7.0] - 2026-03-01
12### Added
14- Added procedure specifications with inline (: ...) syntax, optional runtime checking via sigil-checks feature, and predicate combinators (any-of, maybe, list-of, none-of).
15- Added procedure specs and docstrings to all exported procedures.
16- Added procedure specs and docstrings to all exported procedures.
17- Added define-native compiler form for declaring native C bindings in Scheme modules with optional specs and docstrings.
18- Added VM-level exception handler stack for tail-optimized guard semantics, replacing prompt-based exception handling.
19- Added multi-VM threading with share-nothing architecture, message passing, and parallel-map for data-parallel workloads.
20- Added preemptive yield points at loop back-edges to prevent CPU-bound tasks from starving the async scheduler.
21- Added procedure specifications with inline (: ...) syntax, optional runtime checking via sigil-checks feature, and predicate combinators (any-of, maybe, list-of, none-of).
22- Added procedure specs and docstrings to all exported procedures.
23- Added procedure specs and docstrings to all exported procedures.
24- Added procedure specs and docstrings to all exported procedures.
25- Added immediate-mode terminal UI toolkit with native C grid, layout system, component rendering, event parsing, text input, and chat demo application.
26- Added procedure specs and docstrings to all exported procedures.
27- Added procedure specs and docstrings to all exported procedures.
28- Added procedure specs and docstrings to all exported procedures.
29- Added procedure spec display in MCP search and exports tool output.
30- Added streaming HTTP download support with binary-safe reads and file serving with Range request support.
31- Added procedure specs and docstrings to all exported procedures.
32- Added procedure specs and docstrings to all exported procedures.
34### Changed
36- Changed I/O multiplexing to use epoll (Linux) and kqueue (macOS/BSD) instead of select(2) for better scalability.
37- Changed I/O multiplexing to use epoll (Linux) and kqueue (macOS/BSD) instead of select(2) for better scalability.
39### Fixed
41- Fixed false positive capture corruption check in serializer, Windows build issues with mingw macro collision and unix-connect, closure arity errors now catchable by guard, and exception handler double-pop segfault.
43## [0.6.0] - 2026-02-22
45### Added
47- Added package-provided MCP tools with dynamic discovery and nREPL describe/modules operations.
48- Added package documentation for web stack (SXML, CSS, and Web routing/UI).
49- Added higher-level UI components, css-sel compound selectors, Vinyl Vault demo application, and improved web API ergonomics including table actions, form loading, GET request handling, and error overlay fixes.
50- Add Org Mode parser producing SXML output with support for headlines, metadata, source blocks, inline markup, links, lists, and property drawers.
51- Added table parsing support to Org Mode parser.
52- Add rich error diagnostics with structured error type hierarchy, VM error kind mapping, and (sigil diagnostic) module with Levenshtein-based suggestions.
53- Added R7RS compliance features: dynamic-wind, do syntax, datum labels, let-syntax, letrec-syntax, include/include-ci, import set modifiers (only, except, prefix, rename), cond-expand, features, syntax-error, bytevector ports, write-shared with datum labels, char-ready?, u8-ready?, interaction-environment, and (scheme time/process-context/repl) libraries.
54- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
55- Added package documentation.
56- Add 7 new MCP tools for live browser control (web-morph, web-error, web-status, web-navigate, web-css-class, web-css-reload, web-exec) with supporting SSE events and dev helpers.
57- Added package documentation for web stack (SXML, CSS, and Web routing/UI).
58- Added higher-level UI components, css-sel compound selectors, Vinyl Vault demo application, and improved web API ergonomics including table actions, form loading, GET request handling, and error overlay fixes.
59- Added live-coding support via nREPL and SSE reload for real-time browser updates.
60- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
61- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
62- Added package documentation for socket and websocket APIs.
63- Added package documentation for socket and websocket APIs.
64- Add rich error diagnostics with structured error type hierarchy, VM error kind mapping, and (sigil diagnostic) module with Levenshtein-based suggestions.
65- Add 7 new MCP tools for live browser control (web-morph, web-error, web-status, web-navigate, web-css-class, web-css-reload, web-exec) with supporting SSE events and dev helpers.
66- Added live-coding support via nREPL and SSE reload for real-time browser updates.
67- Added package-provided MCP tools with dynamic discovery and nREPL describe/modules operations.
68- Add (sigil inspect) module for structured value introspection with nREPL and MCP integration.
69- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
71### Fixed
73- Fixed SIGIL_NATIVES_MAX limit by increasing to 2048.
74- Fixed MCP format tool crash with auto-fix support, binary-safe nREPL wire protocol, and SIGPIPE handling.
76### Other
78- Cache FNV-1a hash for string dict keys, avoiding repeated hash computation on dict lookups.
79- Collect docstrings for variable definitions and propagate native doc strings through re-exports.
80- Handle UTF-16 surrogate pairs in JSON unicode escapes. Reject bare low surrogates per RFC 8259.
81- Support multi-form eval via eval-string and add runtime doc fallback for undocumented exports.