Prepare 0.1.2 release

This commit is contained in:
Keisuke Hirata 2026-07-09 03:12:09 +09:00
parent 2d06dc3277
commit 4142fcd46a
No known key found for this signature in database
8 changed files with 52 additions and 12 deletions

8
Cargo.lock generated
View File

@ -25,7 +25,7 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
[[package]] [[package]]
name = "decodal" name = "decodal"
version = "0.1.1" version = "0.1.2"
dependencies = [ dependencies = [
"decodal-derive", "decodal-derive",
"regex", "regex",
@ -33,14 +33,14 @@ dependencies = [
[[package]] [[package]]
name = "decodal-cli" name = "decodal-cli"
version = "0.1.1" version = "0.1.2"
dependencies = [ dependencies = [
"decodal", "decodal",
] ]
[[package]] [[package]]
name = "decodal-derive" name = "decodal-derive"
version = "0.1.1" version = "0.1.2"
dependencies = [ dependencies = [
"decodal", "decodal",
"proc-macro2", "proc-macro2",
@ -50,7 +50,7 @@ dependencies = [
[[package]] [[package]]
name = "decodal-wasm" name = "decodal-wasm"
version = "0.1.1" version = "0.1.2"
dependencies = [ dependencies = [
"decodal", "decodal",
"serde_json", "serde_json",

View File

@ -8,7 +8,7 @@ members = [
resolver = "2" resolver = "2"
[workspace.package] [workspace.package]
version = "0.1.1" version = "0.1.2"
edition = "2024" edition = "2024"
rust-version = "1.85" rust-version = "1.85"
license = "MIT OR Apache-2.0" license = "MIT OR Apache-2.0"

View File

@ -20,4 +20,4 @@ default = []
regex = ["decodal/regex"] regex = ["decodal/regex"]
[dependencies] [dependencies]
decodal = { version = "0.1.1", path = "../decodal-core" } decodal = { version = "0.1.2", path = "../decodal-core" }

View File

@ -15,7 +15,7 @@ publish = false
crate-type = ["cdylib", "rlib"] crate-type = ["cdylib", "rlib"]
[dependencies] [dependencies]
decodal = { version = "0.1.1", path = "../decodal-core" } decodal = { version = "0.1.2", path = "../decodal-core" }
serde_json.workspace = true serde_json.workspace = true
wasm-bindgen.workspace = true wasm-bindgen.workspace = true

View File

@ -23,25 +23,32 @@ cargo run -q -p decodal-cli --features regex -- examples/regex/main.dcdl
## crates.io release ## crates.io release
The primary crates.io package is `decodal`, which contains the embeddable library. The primary crates.io package is `decodal`, which contains the embeddable library.
`decodal-derive` provides optional derive macros for Rust struct integration. `decodal-derive` provides optional derive macros for Rust struct integration and is published only when the derive crate changes.
Workspace support crates such as `decodal-cli` and `decodal-wasm` are not published for 0.1.0. Workspace support crates such as `decodal-cli` and the Rust source crate `decodal-wasm` are not published to crates.io.
The generated WebAssembly package under `site/decodal-site/src/wasm/` is published to npm and JSR.
The project is dual licensed as `MIT OR Apache-2.0`. The project is dual licensed as `MIT OR Apache-2.0`.
```sh ```sh
cargo publish -p decodal-derive
cargo publish -p decodal cargo publish -p decodal
``` ```
Publish `decodal-derive` first only when that crate has a new version:
```sh
cargo publish -p decodal-derive
```
Before publishing, run: Before publishing, run:
```sh ```sh
cargo fmt --check cargo fmt --check
cargo test cargo test
cargo check -p decodal --no-default-features cargo check -p decodal --no-default-features
cargo publish -p decodal-derive --dry-run
cargo publish -p decodal --dry-run cargo publish -p decodal --dry-run
``` ```
If `decodal-derive` changed, also run `cargo publish -p decodal-derive --dry-run`.
## Web site and playground ## Web site and playground
The Astro documentation site and browser playground are kept in: The Astro documentation site and browser playground are kept in:
@ -85,6 +92,24 @@ site/decodal-site/src/wasm/
These generated files are committed so the site can be built without requiring every consumer to regenerate the wasm package first. These generated files are committed so the site can be built without requiring every consumer to regenerate the wasm package first.
Publish the generated WebAssembly package from its package directory:
```sh
cd site/decodal-site/src/wasm
npm publish
npx jsr publish
```
Run dry-runs first when preparing a release:
```sh
npm pack --dry-run
npx jsr publish --dry-run
```
The npm package name is `decodal-wasm`.
The JSR package name is `@hare/decodal-wasm`.
The playground editor uses CodeMirror 6 with the generated Lezer parser in `src/lib/codemirror/decodal-parser.js`. The playground editor uses CodeMirror 6 with the generated Lezer parser in `src/lib/codemirror/decodal-parser.js`.
The canonical grammar is documented in `doc/manual/souce/language/grammar.md`; regenerate the Lezer parser when that grammar or `editors/lezer-decodal/decodal.grammar` changes. The canonical grammar is documented in `doc/manual/souce/language/grammar.md`; regenerate the Lezer parser when that grammar or `editors/lezer-decodal/decodal.grammar` changes.
The documentation build still uses the lightweight JavaScript fallback highlighter so Astro can render Markdown without initializing WASM at build time. The documentation build still uses the lightweight JavaScript fallback highlighter so Astro can render Markdown without initializing WASM at build time.

View File

@ -0,0 +1,15 @@
{
"name": "@hare/decodal-wasm",
"version": "0.1.2",
"license": "MIT OR Apache-2.0",
"exports": "./decodal_wasm.js",
"publish": {
"include": [
"README.md",
"decodal_wasm.js",
"decodal_wasm.d.ts",
"decodal_wasm_bg.wasm",
"package.json"
]
}
}

View File

@ -2,7 +2,7 @@
"name": "decodal-wasm", "name": "decodal-wasm",
"type": "module", "type": "module",
"description": "WebAssembly wrapper for evaluating Decodal in browser playgrounds.", "description": "WebAssembly wrapper for evaluating Decodal in browser playgrounds.",
"version": "0.1.1", "version": "0.1.2",
"license": "MIT OR Apache-2.0", "license": "MIT OR Apache-2.0",
"repository": { "repository": {
"type": "git", "type": "git",