You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#Step 1: Bump versions and create git tags (does not publish)
134
+
# Bump versions and create git tags using cargo-release
115
135
cargo make release
136
+
```
137
+
138
+
This will:
139
+
- Update version numbers in all `Cargo.toml` files
140
+
- Create git commits for version bumps
141
+
- Create git tags (e.g., `v0.8.0`)
142
+
-**Does NOT publish** (controlled by `--no-publish` flag)
116
143
117
-
# Step 2: Build and publish to crates.io and npm
144
+
#### 2. Build and Publish to All Registries
145
+
146
+
```bash
147
+
# Publish to crates.io, npm, and GitHub Container Registry
118
148
cargo make publish-all
119
149
```
120
150
151
+
This orchestrates:
152
+
1. ✅ Format check and tests (`check-all`)
153
+
2. ✅ Build CLI binary (`build-cli`)
154
+
3. ✅ Build WASM package for npm (`build-npm`)
155
+
4. ✅ Build Leptos web app (`build-web`)
156
+
5. ✅ Build WASM binary for OCI (`build-oci`)
157
+
6. ✅ Publish `kord` crate to **crates.io** (`publish-crates`)
158
+
7. ✅ Rename and publish to **npm** as `kordweb` (`publish-npm`)
159
+
8. ✅ Publish to **GitHub Container Registry** at `ghcr.io/twitchax/kord:latest` (`publish-oci`)
160
+
161
+
#### 3. Push Tags to GitHub
162
+
163
+
```bash
164
+
# Push the version tags created by cargo-release
165
+
git push --follow-tags
166
+
```
167
+
168
+
#### 4. Create GitHub Release
169
+
170
+
🎯 **Manual step**: Go to [GitHub Releases](https://github.com/twitchax/kord/releases) and:
171
+
- Click "Draft a new release"
172
+
- Select the tag you just pushed (e.g., `v0.8.0`)
173
+
- Generate release notes or write your own
174
+
- Attach platform binaries from CI artifacts if desired
175
+
- Publish the release
176
+
177
+
> **Note**: CI automatically builds platform binaries (Linux, Windows, macOS) and the WASM binary on every push to main, but **does not automatically publish** them. All publishing is manual via the steps above.
178
+
121
179
### Publish Without Version Changes
122
180
123
181
If you've already bumped versions manually or want to republish:
@@ -126,14 +184,6 @@ If you've already bumped versions manually or want to republish:
126
184
cargo make publish-all
127
185
```
128
186
129
-
**This orchestrates:**
130
-
1. Format check and tests (`check-all`)
131
-
2. Build CLI binary (`build-cli`)
132
-
3. Build WASM package (`build-npm`)
133
-
4. Build Leptos web app (`build-web`)
134
-
5. Publish `kord` crate to crates.io (`publish-crates`)
135
-
6. Rename npm package to `kordweb` and publish (`publish-npm`)
136
-
137
187
### Individual Tasks
138
188
139
189
```bash
@@ -159,7 +209,7 @@ cargo make publish-oci
159
209
160
210
> **Prerequisites**:
161
211
> - Install the `wasm32-wasip2` target: `rustup target add wasm32-wasip2`
0 commit comments