Releases: amterp/rad
Releases Β· amterp/rad
v0.10.1
v0.10.0
Changelog
- 5caffe8 ci: replace Dependabot with govulncheck for vulnerability scanning
- e454be5 feat: add 'transpose [expr]' directive to rad blocks
- fb6669b feat: add dim() text styling function
- ff29f1a feat: add shell autocompletion for rad CLI and scripts
- d8d6c03 feat: add strikethrough() text styling function
- b745339 feat: improve transpose behavior, support color modifies
- e7c7a30 fix: reject style attrs in rad block color modifiers
- 48da2ca style: fix up formatting
v0.9.2
Changelog
- 52791c9 feat: add end-to-end snapshot testing for radls
- 3aaff8f feat: add parse_date() built-in function
- 5840c0f fix: correctly capture defining scope in escaping closures
- a191108 fix: emit clean error when void value used in expression
- b7b910c fix: preserve float precision in alignment formatting
- c209834 fix: prevent cross-type map key collisions
- 8dd2a14 fix: produce clean error for null used as map key
- f633747 fix: return error when int() is called with Inf or NaN
- 8c59128 fix: support map in list for the in operator
- 9a05633 fix: support string comparison operators (< > <= >=)
- 3d80d0f fix: swap operands for list-in-list 'in' operator
- 47c1afe style: reformat code
v0.9.1
Changelog
- 212e690 Add llms.txt and llms-full.txt generation to docs site
- 5d82de7 Expand args docs with parsing model and edge cases
- 7205d79 Release VSCode extension v0.4.0
- 682c36c Release VSCode extension v0.5.0
- 9e1794e fix: use pipe delimiter in sed to avoid clash with URL slashes
- 3df330f refactor: rename lsp-server/ to radls/, update URLs to amterp.dev
v0.9.0
v0.9 is here!
Please note this version contains a higher number of breaking changes than usual.
I am trying to get them out of the way sooner rather than later, to minimize the overall pain.
I've done my best to make migrating really clear, including having error detection and clear messages that try and detect when you're doing something "the old ways".
See https://amterp.github.io/rad/migrations/v0.9/ for details about the breaking changes.
Changelog
- 4fa150c feat!: broaden ?? to null-coalesce, catchable null indexing
- 1ec9e5c feat!: make + operator strict about type matching
- 2a09c43 feat!: shorten parse_epoch unit parameter names
- 14a4b2c feat!: stop normalizing user data, add split_lines()
- 3d09b27 feat!: unify request/display into single rad keyword
- 18209b7 feat(funcs): make numeric functions type-preserving
- 52655ab feat: accept Enter as confirmation in confirm()
- 2a09807 feat: add "did you mean?" suggestions for undefined vars
- 4b6b4c4 feat: add 'rad explain list' to show available error codes
- f3c3ba8 feat: add --ast-tree and --cst-tree debug flags
- ec3185e feat: add CST-to-AST converter
- e2e06d4 feat: add Rust-style diagnostic renderer
- 322e9a2 feat: add TLS certificate verification bypass
- 338ffe3 feat: add call stack tracking and stack traces
- a7878a4 feat: add catch inline operator for error-only catching
- 5f4ee17 feat: add error testing framework and documentation
- 5d5a851 feat: add fill character and zero-pad to format specs
- 9b4d2e8 feat: add heuristics for ERROR node detection
- b33748f feat: add index_of() built-in for strings and lists
- 7372764 feat: add inline migration hint for + operator type error
- 539e566 feat: add limit param to split()
- cef9648 feat: add parse_duration and convert_duration functions
- 2f599d6 feat: add rad explain command for error documentation
- 790c615 feat: add semantic grammar checks for control flow
- f71e0dd feat: add source span tracking to RadValue
- 95ce0ff feat: add symbol table for tracking variable definitions
- a7225df feat: add trim_left and trim_right functions
- 7458ca7 feat: add unified diagnostic type system
- c518d3e feat: define AST node types, interfaces, and enums
- b7b95e2 feat: enable invocation logging by default
- 930212f feat: expand MISSING node messages with parent context
- 76983e2 feat: extract shared duration parser with day support
- 15e4995 feat: render markdown error docs with terminal styling
- 8861a11 feat: show [command] instead of [subcommand] in help
- c412221 feat: show per-severity diagnostic counts in check --from-logs
- 0f02eb1 fix!: align trim_prefix/trim_suffix semantics with their names
- 4c19a81 fix(deps): resolve Dependabot security alerts
- 3f514c9 fix: AST dump span padding now walks full tree
- e6ac0a1 fix: Levenshtein distance operates on bytes instead of runes
- 6837175 fix: TruthyFalsy crashes on RadError values
- bb9637d fix: add missing error codes to validation errors
- 3c4e5ad fix: bugs found in code review of AST foundation
- 1a97b79 fix: bump ra to v0.5.1
- 12c49b6 fix: clone target node in compound assign/incr-decr desugaring
- 21c218a fix: derive gutter width from displayed lines, not labels
- b245ca0 fix: diagnostic panics and lambda file name
- ea38df9 fix: diagnostic renderer byte-slices UTF-8 in truncation
- d7e964a fix: flaky truncate tests due to shared TerminalIsUtf8 state
- 902e00f fix: include response headers in http_* return value
- 3870211 fix: minor comment adjustments
- d81c49a fix: nil node panic in error emission functions
- 8f2dac0 fix: nil node safety and same-line label coloring
- f3d2a4c fix: panic on short non-JSON response body in RequestJson
- 39bed25 fix: preserve text attributes in trim, reverse, slice
- 66dcf7b fix: prevent hang on non-regular files like /dev/stdin
- 6093f5f fix: release notes workflow inserting into front matter
- 84382dc fix: remove invalid --latest flag from gh release view
- abce025 fix: shell catch nil pointer dereference
- 9f3dbb2 fix: split_lines strips trailing empty element
- a0af29c fix: string slicing now correctly handles multi-byte characters
- f62848d fix: truncate() now handles multi-byte characters correctly
- 27dc974 fix: unify equality semantics across == and Equals()
- da5efea fix: update go mod, add more details to AGENTS.md re: migrations
- 622026c fix: use pure Go DNS resolver for Linux static builds
- d082015 perf: fix IndexAt() to extract runes from segment directly
- 5fbaed2 perf: fix ToRuneList() O(nΒ²) complexity
- ea6c560 perf: short-circuit Plain() for single-segment strings
- 273beb2 perf: use strings.Builder in Plain() and Reverse()
- 3136be7 refactor: clarify diagnostic type hierarchy
- a258ce7 refactor: complete AST migration phases 5-8
- a0a26f3 refactor: migrate all errorf calls to new diagnostic system
- 14c797d refactor: migrate checker from CST to AST
- 9fcb675 refactor: migrate checker to AST, remove dead code
- 31eb894 refactor: migrate interpreter from CST to AST
- 531a112 refactor: migrate metadata extraction to AST
- 47acb87 refactor: move Span type from core/ to rts/rl/
- 7f93506 refactor: remove dead code from interpreter
- de5cdc7 refactor: remove unused SymbolTable, keep Levenshtein
- 2d3b92d refactor: seal CST from core/, add Children() to AST
- 0dc6c61 refactor: seal CST leaks from public interfaces
- 9ddc1bb refactor: simplify evalCatchingPanic, document error contract
- 7658ed3 refactor: unify dump tests into Go-based CST snapshot system
- ccb3bec refactor: unify error output to Rust-style format
- b820903 refactor: wire LSP to use AST-aware checker
- b8ed277 rename get_stash_dir to get_stash_path
- 162eb5a revert: remove RadValue span tracking (perf fix)
- 83a7ac9 style: minor adjustments
- 5328143 style: reformat
- 9f0e414 tests: improve snapshot failure diff output
- 9d57d24 tests: migrate common input->output assert tests to snapshot tests
v0.8.1
v0.8.0
Changelog
- 7bbad61 feat!: remove get_default function in favor of ?? operator
- 79b0103 feat(docs): redesign website with "Sunset Terminal" theme
- 7350604 feat: add ?? fallback support for list and string indexing
- d13e6d7 feat: add list support to reverse function
- c8373a2 feat: hyphenate command names for CLI invocation
- 7c450bf fix: use workflow_run trigger for release notes workflow
v0.7.1
Changelog
- 9443d85 Release VSCode extension v0.3.0
- 883a593 ci: add automated docs deployment and release notes
- e085011 ci: add cross-platform testing for macOS and Windows
- 4474ee3 ci: fix Windows build output filename in cross-platform tests
- 668a509 ci: treat all platforms as equal first-class citizens
- 5fdf8fd feat: add platform abstraction for Windows compatibility
- cf4af1a feat: add underscore to v0.7 for-loop migration hint detection
- 83c839e feat: complete platform normalization for Windows compatibility
- 0ee37ff fix: improve gen_fid collision resistance
v0.7.0
Changelog
- 9e4e595 docs(SYNTAX.md): add script commands
- e98f7fc feat!: redesign for-loop syntax with explicit context access
- See v0.7 migration guide for more information.
- 21976ec feat: add context support to rad block map/filter lambdas