Skip to content

Commit be53f84

Browse files
ZhiXiao-Linclaude
andauthored
chore(release): 3.6.1 — pin SDK build toolchain, refresh SDK locks (#70)
3.6.0 published a3s-code-core to crates.io but the native SDK builds failed: brotli 8.0.3 (transitive via tower-http under ahp/s3) no longer compiles on the newest stable Rust, so npm/PyPI/GH Release were skipped. This ships them. - Pin publish-{node,python}.yml to dtolnay/rust-toolchain@1.94.1 + maturin-action rust-toolchain: 1.94.1 (known-good; matches earlier releases) - Refresh sdk/{node,python}/Cargo.lock to a3s-code-core 3.6.1 (were stale at 3.5.0, forcing a dep re-resolution that pulled a duplicate alloc-no-stdlib) - Bump version surface 3.6.0 -> 3.6.1 - Verified locally: cargo check on both SDK manifests compiles on rustc 1.94.1 Co-authored-by: Claude <claude@anthropic.com>
1 parent 6b00802 commit be53f84

13 files changed

Lines changed: 61 additions & 33 deletions

File tree

.github/workflows/publish-node.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,10 @@ jobs:
4242
node-version: 20
4343

4444
- name: Install Rust
45-
uses: dtolnay/rust-toolchain@stable
45+
# Pinned: brotli 8.0.3 (transitive via tower-http, ahp/s3 features) fails
46+
# to compile on newer stable rustc; 1.94.1 is the known-good build that
47+
# shipped earlier releases. Revisit when the brotli/toolchain break clears.
48+
uses: dtolnay/rust-toolchain@1.94.1
4649
with:
4750
targets: ${{ matrix.settings.target }}
4851

.github/workflows/publish-python.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,10 @@ jobs:
6060
3.13
6161
6262
- name: Install Rust
63-
uses: dtolnay/rust-toolchain@stable
63+
# Pinned: brotli 8.0.3 (transitive via tower-http, ahp/s3 features) fails
64+
# to compile on newer stable rustc; 1.94.1 is the known-good build that
65+
# shipped earlier releases. Revisit when the brotli/toolchain break clears.
66+
uses: dtolnay/rust-toolchain@1.94.1
6467
with:
6568
targets: ${{ matrix.settings.target }}
6669

@@ -82,6 +85,9 @@ jobs:
8285
target: ${{ matrix.settings.target }}
8386
args: --release --out dist --manifest-path sdk/python/Cargo.toml -i python3.10 -i python3.11 -i python3.12 -i python3.13
8487
manylinux: ${{ matrix.settings.manylinux || 'auto' }}
88+
# Pin the toolchain maturin installs (incl. inside the manylinux
89+
# container) so brotli 8.0.3 compiles. See "Install Rust" note above.
90+
rust-toolchain: 1.94.1
8591

8692
- name: Upload wheels to GitHub Releases
8793
uses: actions/upload-artifact@v4

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,25 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [3.6.1] - 2026-06-14
9+
10+
Release-engineering fix for 3.6.0 (no library code changes). The 3.6.0 tag
11+
published `a3s-code-core` to crates.io, but the native SDK build jobs failed
12+
because **brotli 8.0.3** (pulled transitively via `tower-http` under the
13+
`ahp`/`s3` features) no longer compiles on the newest stable Rust — so the npm,
14+
PyPI, and GitHub Release artifacts were skipped. This release ships those.
15+
16+
### Fixed
17+
18+
- **Pin the SDK build toolchain**`publish-node.yml` / `publish-python.yml`
19+
now use `dtolnay/rust-toolchain@1.94.1` (and pass `rust-toolchain: 1.94.1` to
20+
`maturin-action`) instead of `@stable`, restoring the known-good build that
21+
shipped earlier releases. Revisit when the upstream brotli/toolchain break
22+
clears.
23+
- **Refresh the SDK lockfiles**`sdk/{node,python}/Cargo.lock` now pin
24+
`a3s-code-core` to the release version (previously left stale, which forced a
25+
dependency re-resolution that pulled a second `alloc-no-stdlib`).
26+
827
## [3.6.0] - 2026-06-14
928

1029
A system-prompt hardening pass plus framework-vs-host boundary tightening:

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

core/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "a3s-code-core"
3-
version = "3.6.0"
3+
version = "3.6.1"
44
edition = "2021"
55
authors = ["A3S Lab Team"]
66
license = "MIT"

sdk/node/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "a3s-code-node"
3-
version = "3.6.0"
3+
version = "3.6.1"
44
edition = "2021"
55
authors = ["A3S Lab Team"]
66
license = "MIT"
@@ -11,7 +11,7 @@ description = "A3S Code Node.js bindings - Native addon via napi-rs"
1111
crate-type = ["cdylib"]
1212

1313
[dependencies]
14-
a3s-code-core = { version = "3.6.0", path = "../../core", features = ["ahp", "s3"] }
14+
a3s-code-core = { version = "3.6.1", path = "../../core", features = ["ahp", "s3"] }
1515
napi = { version = "2", features = ["async", "napi6", "serde-json"] }
1616
napi-derive = "2"
1717
tokio = { version = "1.35", features = ["full"] }

sdk/node/examples/package-lock.json

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sdk/node/package-lock.json

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sdk/node/package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@a3s-lab/code",
3-
"version": "3.6.0",
3+
"version": "3.6.1",
44
"description": "A3S Code - Native Node.js bindings for the coding-agent runtime",
55
"main": "index.js",
66
"types": "index.d.ts",
@@ -43,11 +43,11 @@
4343
"test:helpers": "node test-helpers.mjs"
4444
},
4545
"optionalDependencies": {
46-
"@a3s-lab/code-darwin-arm64": "3.6.0",
47-
"@a3s-lab/code-linux-x64-gnu": "3.6.0",
48-
"@a3s-lab/code-linux-x64-musl": "3.6.0",
49-
"@a3s-lab/code-linux-arm64-gnu": "3.6.0",
50-
"@a3s-lab/code-linux-arm64-musl": "3.6.0",
51-
"@a3s-lab/code-win32-x64-msvc": "3.6.0"
46+
"@a3s-lab/code-darwin-arm64": "3.6.1",
47+
"@a3s-lab/code-linux-x64-gnu": "3.6.1",
48+
"@a3s-lab/code-linux-x64-musl": "3.6.1",
49+
"@a3s-lab/code-linux-arm64-gnu": "3.6.1",
50+
"@a3s-lab/code-linux-arm64-musl": "3.6.1",
51+
"@a3s-lab/code-win32-x64-msvc": "3.6.1"
5252
}
5353
}

sdk/python-bootstrap/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ name = "a3s-code"
77
# Keep in sync with crates/code core release. The bootstrap loader fetches
88
# the matching native wheel from `https://github.com/AI45Lab/Code/releases/tag/v<version>`
99
# at import time.
10-
version = "3.6.0"
10+
version = "3.6.1"
1111
description = "A3S Code Python SDK — pure-Python bootstrap that fetches the native wheel from GitHub Releases"
1212
readme = "README.md"
1313
license = {text = "MIT"}

0 commit comments

Comments
 (0)