Skip to content

Releases: roobie/chirp

chirp 0.4.0

Choose a tag to compare

@github-actions github-actions released this 28 Oct 00:59

chirp 0.4.0 is an unofficial build of Janet. It is not a Janet release and is not made by Janet's maintainers.

It bundles TLS (jsec with a static OpenSSL 3), spork, spork-https, SQLite (sqlite3, with FTS5), TOML (tomlin) YAML (yaml, on libyaml), Perl-style regular expressions (pcre2, on PCRE2), Markdown to HTML (md4c), HTML parsing with CSS selectors (lexbor) and an insertion-ordered map (omap) that json and yaml decode to and encode from, in one binary per target, plus offline help (chirp help). Each target's third-party license texts are in its NOTICES-<target>.txt.

Check a download before you run it, as described under "Verifying a download" in the README:

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo roobie/chirp

SHA256SUMS.sig is an Ed25519 signature of SHA256SUMS. chirp self-update checks it with the key built into chirp before installing a newer release.

On Windows, HTTPS needs SSL_CERT_FILE pointing at a PEM CA bundle for now.

Changes

Released 2026-10-28.

Added

  • pcre2, Perl-style regular expressions on PCRE2 10.49: pcre2/compile, pcre2/match, pcre2/find-all, pcre2/replace, pcre2/replace-all, pcre2/split and pcre2/version. Patterns are UTF-8 by default and support named groups; replacements take $1, ${name} and $$. Matching is bounded by :match-limit, :depth-limit and :heap-limit, all with defaults, so a runaway pattern fails with an error naming the limit instead of hanging.
  • md4c, Markdown to HTML on md4c 0.6.0: md4c/to-html and md4c/version. The default is plain CommonMark; :github turns on GitHub's dialect, and each extension (tables, footnotes, task lists and others) can be set on its own. :no-html drops raw HTML from the input.
  • lexbor, HTML parsing and CSS selectors on lexbor 3.0.1: lexbor/parse parses HTML as a browser does, lexbor/select and lexbor/select-first find elements by selector in document order, and lexbor/text, lexbor/attr, lexbor/attrs, lexbor/tag, lexbor/html and lexbor/inner-html read what was found. Nodes are handles that keep their document alive, compare equal when they are the same node, and can be searched in turn.

chirp 0.3.0

Choose a tag to compare

@github-actions github-actions released this 25 Oct 14:12

chirp 0.3.0 is an unofficial build of Janet. It is not a Janet release and is not made by Janet's maintainers.

It bundles TLS (jsec with a static OpenSSL 3), spork, spork-https, SQLite (sqlite3, with FTS5), TOML (tomlin) YAML (yaml, on libyaml) and an insertion-ordered map (omap) that json and yaml decode to and encode from, in one binary per target, plus offline help (chirp help). Each target's third-party license texts are in its NOTICES-<target>.txt.

Check a download before you run it, as described under "Verifying a download" in the README:

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo roobie/chirp

SHA256SUMS.sig is an Ed25519 signature of SHA256SUMS. chirp self-update checks it with the key built into chirp before installing a newer release.

On Windows, HTTPS needs SSL_CERT_FILE pointing at a PEM CA bundle for now.

Changes

Released 2026-10-25.

Added

  • chirp -h and chirp --help print chirp's own entry points (scripts, stdin, help, self-update, --changelog), then Janet's options.
  • yaml, YAML decoding and encoding on libyaml: yaml/decode, yaml/decode-all and yaml/encode, shaped like spork/json. Plain scalars follow the YAML 1.2 Core schema, so no and on stay strings. Anchors, aliases and << merge keys work, and an alias bomb fails with an error instead of exhausting memory.
  • omap, an insertion-ordered map: omap/new, omap/from-pairs, omap/pairs and omap/omap?. get, put, in, keys, values, pairs, eachp, length and printing work as on a table; putting a key again keeps its place and putting nil removes it. It is not a table, so table? is false for it.
  • json/decode, yaml/decode and yaml/decode-all take an optional ordered argument after nils; when truthy, objects and mappings come back as omaps in the order written. json/encode and yaml/encode write an omap in its own order, so a decode and encode round trip keeps the author's key order. Without the argument both behave as before: json/decode and json/encode still run spork's own code for anything that holds no omap.
  • chirp --changelog prints this file, and chirp help read changelog reads it from the help.
  • Release notes include the release's section of this file.

chirp 0.2.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 18:16

chirp 0.2.0 is an unofficial build of Janet. It is not a Janet release and is not made by Janet's maintainers.

It bundles TLS (jsec with a static OpenSSL 3), spork, spork-https, SQLite (sqlite3, with FTS5) and TOML (tomlin) in one binary per target, plus offline help (chirp help). Each target's third-party license texts are in its NOTICES-<target>.txt.

Check a download before you run it, as described under "Verifying a download" in the README:

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo roobie/chirp

SHA256SUMS.sig is an Ed25519 signature of SHA256SUMS. chirp self-update checks it with the key built into chirp before installing a newer release.

On Windows, HTTPS needs SSL_CERT_FILE pointing at a PEM CA bundle for now.

chirp 0.1.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 14:54

chirp 0.1.0 is an unofficial build of Janet. It is not a Janet release and is not made by Janet's maintainers.

It bundles TLS (jsec with a static OpenSSL 3), spork and spork-https in one binary per target. Each target's third-party license texts are in its NOTICES-<target>.txt.

Check a download before you run it, as described under "Verifying a download" in the README:

sha256sum -c SHA256SUMS --ignore-missing
gh attestation verify <file> --repo roobie/chirp

On Windows, HTTPS needs SSL_CERT_FILE pointing at a PEM CA bundle for now.