Skip to content

Commit 0416b3c

Browse files
committed
chore: prepare 0.1.2 release
1 parent 4505642 commit 0416b3c

7 files changed

Lines changed: 55 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,23 @@ All notable changes to this project are documented in this file.
44

55
This project uses semantic versioning after `0.1.0`.
66

7+
## 0.1.2 - 2026-05-28
8+
9+
### Added
10+
11+
- Rust template source with Cargo-based project discovery, configuration, discovery, scan, doctor, and stable JSON output.
12+
- Rust Creator identity options for CLI name, config directory name, crate name, and binary target name.
13+
- Rust template verification and Creator smoke checks in the root check suite.
14+
15+
### Changed
16+
17+
- Creator manifest validation rejects prefix-overlapping tokens and identity references that are not declared by the manifest.
18+
- Rust template initialization reports overwrite and created-path JSON fields from actual filesystem state.
19+
20+
### Removed
21+
22+
- Removed the obsolete `.gitkeep` file from the non-empty Rust template source.
23+
724
## 0.1.1 - 2026-05-27
825

926
### Added

README.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ The contract fixes the behavior that long-lived project tools repeatedly need:
3333
|---|---:|---|
3434
| TypeScript | Specified reference implementation | Node 24, Commander, Zod, smol-toml, globby, Vitest, Biome |
3535
| Python | Specified implementation | uv, Typer, Pydantic v2, tomlkit, wcmatch, pathspec, pytest, Ruff, ty |
36-
| Rust | Specified implementation | clap derive, serde, toml, ignore, thiserror, camino, assert_cmd, assert_fs, insta |
36+
| Rust | Specified implementation | clap derive, serde, toml, ignore, globset, thiserror, camino, assert_cmd, assert_fs |
3737
| Go | Specified implementation | Cobra, go-toml/v2, gobwas/glob, go-git gitignore, standard testing |
3838

3939
## Create A CLI
@@ -44,6 +44,12 @@ Create a TypeScript Rootward CLI:
4444
pnpm create rootward typescript my-tool --cli-name my-tool --package-name my-tool
4545
```
4646

47+
Create a Rust Rootward CLI:
48+
49+
```bash
50+
pnpm create rootward rust my-tool --cli-name my-tool --crate-name my_tool_core --bin-name my-tool
51+
```
52+
4753
Equivalent npm entry points:
4854

4955
```bash
@@ -62,7 +68,17 @@ pnpm dev -- init
6268
pnpm dev -- discover --json
6369
```
6470

65-
The TypeScript template is implemented. Python, Rust, and Go template IDs are reserved and return `TEMPLATE_NOT_IMPLEMENTED` until their template sources satisfy the Rootward contract.
71+
For a generated Rust project:
72+
73+
```bash
74+
cd my-tool
75+
cargo test
76+
cargo build
77+
cargo run -- init
78+
cargo run -- discover --json
79+
```
80+
81+
The TypeScript and Rust templates are implemented. Python and Go template IDs are reserved and return `TEMPLATE_NOT_IMPLEMENTED` until their template sources satisfy the Rootward contract.
6682

6783
## Documentation
6884

@@ -125,6 +141,7 @@ Useful focused commands:
125141
```bash
126142
pnpm --filter create-rootward test
127143
pnpm --filter create-rootward pack:check
144+
pnpm templates:rust:check
128145
pnpm --dir docs build
129146
```
130147

docs/books/06-rootward-project-cli-contract/book.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
= Rootward 项目型 CLI 契约
22
弥澄亮 <t103ooooo@stu.mju.edu.cn>
3-
v0.1.1, 2026-05
3+
v0.1.2, 2026-05
44
:doctype: book
55
:toc: left
66
:toclevels: 3

docs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "rootward-cli-templates",
33
"private": true,
4-
"version": "0.1.1",
4+
"version": "0.1.2",
55
"license": "Apache-2.0",
66
"type": "module",
77
"scripts": {

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "rootward",
3-
"version": "0.1.1",
3+
"version": "0.1.2",
44
"private": true,
55
"license": "Apache-2.0",
66
"type": "module",

packages/create-rootward/README.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ Rootward templates create CLIs that know how to initialize a project context, di
1515
pnpm create rootward typescript my-tool --cli-name my-tool --package-name my-tool
1616
```
1717

18+
```bash
19+
pnpm create rootward rust my-tool --cli-name my-tool --crate-name my_tool_core --bin-name my-tool
20+
```
21+
1822
```bash
1923
npx create-rootward typescript my-tool --cli-name my-tool --package-name my-tool
2024
```
@@ -30,13 +34,23 @@ pnpm dev -- init
3034
pnpm dev -- discover --json
3135
```
3236

37+
For a generated Rust project:
38+
39+
```bash
40+
cd my-tool
41+
cargo test
42+
cargo build
43+
cargo run -- init
44+
cargo run -- discover --json
45+
```
46+
3347
## Templates
3448

3549
| Template | Status |
3650
|---|---|
3751
| `typescript` | implemented |
52+
| `rust` | implemented |
3853
| `python` | reserved |
39-
| `rust` | reserved |
4054
| `go` | reserved |
4155

4256
Reserved templates are declared by manifest and return `TEMPLATE_NOT_IMPLEMENTED`.

packages/create-rootward/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "create-rootward",
3-
"version": "0.1.1",
3+
"version": "0.1.2",
44
"description": "Create Rootward project-oriented CLI templates.",
55
"license": "Apache-2.0",
66
"author": {

0 commit comments

Comments
 (0)