Skip to content

Commit 7ee976d

Browse files
committed
Merge remote-tracking branch 'stacks-network/develop' into fix/bad-syntax-binding-error-variants
2 parents 5bc3312 + 799953e commit 7ee976d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+10738
-129
lines changed

.github/workflows/github-release.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ jobs:
9090
cpu: armv7
9191
- arch: macos # excludes macos-armv7
9292
cpu: armv7
93+
- arch: macos # excludes macos-x64
94+
cpu: x86_64
9395
steps:
9496
- name: Build Binary (${{ matrix.arch }}_${{ matrix.cpu }})
9597
uses: stacks-network/actions/stacks-core/release/create-source-binary@main

.github/workflows/stacks-core-tests.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,15 @@ jobs:
7171
validate: "true"
7272
redocly-version: "1.34"
7373

74+
## Generate and upload node configuration documentation
75+
node-config-docsgen:
76+
name: Node Configuration Documentation
77+
runs-on: ubuntu-latest
78+
steps:
79+
- name: Generate Node Configuration Documentation
80+
id: node_config_docsgen
81+
uses: stacks-network/actions/stacks-core/node-config-docsgen@main
82+
7483
## Disabled
7584
## - this test can take several hours to run
7685
nettest:
@@ -141,6 +150,7 @@ jobs:
141150
if: always()
142151
needs:
143152
- open-api-validation
153+
- node-config-docsgen
144154
- core-contracts-clarinet-test
145155
steps:
146156
- name: Check Tests Status

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,13 @@ 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 the versioning scheme outlined in the [README.md](README.md).
77

8-
## Unreleased
8+
## [3.2.0.0.0]
99

1010
### Added
1111

12+
- Added the `clarity-serialization` crate: A lightweight crate for serializing and deserializing Clarity values. This crate decouples core data types from the Clarity VM, making it easier to build off-chain tooling, and other applications that interact with Clarity data. It includes support for `wasm32-unknown-unknown` targets via the `wasm-web` and `wasm-deterministic` features.
1213
- Added `/v3/contracts/fast-call-read/:principal/:contract_name/:func_name` api endpoint. It allows to run read-only calls faster by disabling the cost and memory trackers. This endpoint requires authentication.
14+
- **SIP-031 consensus rules, activating in epoch 3.2 at block 907_740**
1315

1416
### Changed
1517

Cargo.lock

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

Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ members = [
1212
"stacks-node",
1313
"contrib/tools/config-docs-generator"]
1414

15+
exclude = ["contrib/clarity-serialization"]
16+
1517
# Dependencies we want to keep the same between workspace members
1618
[workspace.dependencies]
1719
ed25519-dalek = { version = "2.1.1", default-features = false }

clarity/Cargo.toml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ path = "./src/libclarity.rs"
2020
[dependencies]
2121
serde = "1"
2222
serde_derive = "1"
23-
serde_stacker = "0.1"
2423
regex = "1"
2524
lazy_static = "1.4.0"
2625
integer-sqrt = "0.1.3"
@@ -44,6 +43,9 @@ rstest_reuse = { version = "0.5.0" }
4443
# but it isn't necessary for tests: only benchmarks. therefore, commenting out for now.
4544
# criterion = "0.3"
4645

46+
[target.'cfg(not(target_family = "wasm"))'.dependencies]
47+
serde_stacker = "0.1"
48+
4749
[features]
4850
default = ["rusqlite"]
4951
developer-mode = ["stacks_common/developer-mode"]

clarity/src/vm/database/structures.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ macro_rules! clarity_serializable {
5353
}
5454
}
5555
impl ClarityDeserializable<$Name> for $Name {
56+
#[cfg(not(target_family = "wasm"))]
5657
fn deserialize(json: &str) -> Result<Self> {
5758
let mut deserializer = serde_json::Deserializer::from_str(&json);
5859
// serde's default 128 depth limit can be exhausted
@@ -65,6 +66,12 @@ macro_rules! clarity_serializable {
6566
InterpreterError::Expect("Failed to deserialize vm.Value".into()).into()
6667
})
6768
}
69+
#[cfg(target_family = "wasm")]
70+
fn deserialize(json: &str) -> Result<Self> {
71+
serde_json::from_str(json).map_err(|_| {
72+
InterpreterError::Expect("Failed to deserialize vm.Value".into()).into()
73+
})
74+
}
6875
}
6976
};
7077
}

0 commit comments

Comments
 (0)