AtlatestRepositorysigil-peg
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.
33- Added procedure specs and docstrings to all exported procedures.
34- Added immediate-mode terminal UI toolkit with native C grid, layout system, component rendering, event parsing, text input, and chat demo application.
35- Added procedure specs and docstrings to all exported procedures.
36- Added procedure specs and docstrings to all exported procedures.
38### Changed
40- Changed I/O multiplexing to use epoll (Linux) and kqueue (macOS/BSD) instead of select(2) for better scalability.
41- Changed I/O multiplexing to use epoll (Linux) and kqueue (macOS/BSD) instead of select(2) for better scalability.
43### Fixed
45- 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.
46- Fixed sigil docs api command and added procedure spec signatures to generated API documentation.
48## [0.6.0] - 2026-02-22
50### Added
52- Added package-provided MCP tools with dynamic discovery and nREPL describe/modules operations.
53- Added package documentation for web stack (SXML, CSS, and Web routing/UI).
54- 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.
55- Add Org Mode parser producing SXML output with support for headlines, metadata, source blocks, inline markup, links, lists, and property drawers.
56- Added table parsing support to Org Mode parser.
57- Add rich error diagnostics with structured error type hierarchy, VM error kind mapping, and (sigil diagnostic) module with Levenshtein-based suggestions.
58- 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.
59- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
60- Added package documentation.
61- 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.
62- Added package documentation for web stack (SXML, CSS, and Web routing/UI).
63- 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.
64- Added live-coding support via nREPL and SSE reload for real-time browser updates.
65- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
66- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
67- Added package documentation for socket and websocket APIs.
68- Added package documentation for socket and websocket APIs.
69- Add rich error diagnostics with structured error type hierarchy, VM error kind mapping, and (sigil diagnostic) module with Levenshtein-based suggestions.
70- 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.
71- Added live-coding support via nREPL and SSE reload for real-time browser updates.
72- Added package-provided MCP tools with dynamic discovery and nREPL describe/modules operations.
73- Add (sigil inspect) module for structured value introspection with nREPL and MCP integration.
74- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
75- Add rich error diagnostics with structured error type hierarchy, VM error kind mapping, and (sigil diagnostic) module with Levenshtein-based suggestions.
76- Added live-coding support via nREPL and SSE reload for real-time browser updates.
77- Added package-provided MCP tools with dynamic discovery and nREPL describe/modules operations.
78- Add (sigil inspect) module for structured value introspection with nREPL and MCP integration.
79- 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.
80- Added live-coding support via nREPL and SSE reload for real-time browser updates.
81- Added package documentation for web stack (SXML, CSS, and Web routing/UI).
82- Add XMPP client library with STARTTLS, SASL (SCRAM-SHA-1/PLAIN), roster, presence, and MUC support.
83- Add PEG (Parsing Expression Grammar) library with S-expression pattern DSL, recursive interpreter with backtracking, and comprehensive capture system.
85### Fixed
87- Fixed SIGIL_NATIVES_MAX limit by increasing to 2048.
88- Fixed MCP format tool crash with auto-fix support, binary-safe nREPL wire protocol, and SIGPIPE handling.
89- Fixed MCP format tool crash with auto-fix support, binary-safe nREPL wire protocol, and SIGPIPE handling.
91### Other
93- Cache FNV-1a hash for string dict keys, avoiding repeated hash computation on dict lookups.
94- Collect docstrings for variable definitions and propagate native doc strings through re-exports.
95- Handle UTF-16 surrogate pairs in JSON unicode escapes. Reject bare low surrogates per RFC 8259.
96- Support multi-form eval via eval-string and add runtime doc fallback for undocumented exports.
97- Resolve re-export descriptions in search index from source module entries.