Skip to content

Commit 77760d4

Browse files
authored
Merge branch 'develop' into test/refactor-commands
2 parents 5fe68db + 9789f0b commit 77760d4

File tree

106 files changed

+11112
-5522
lines changed

Some content is hidden

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

106 files changed

+11112
-5522
lines changed

.github/CODEOWNERS

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# These owners will be the default owners for everything in
2+
# the repo. Unless a later match takes precedence,
3+
#
4+
# require both blockchain-team-codeowners and blockchain-team to review all PR's not specifically matched below
5+
* @stacks-network/blockchain-team-codeowners @stacks-network/blockchain-team
6+
7+
8+
# Signer code
9+
# require both blockchain-team-codeowners and blockchain-team-signer to review PR's for the signer folder(s)
10+
libsigner/**/*.rs @stacks-network/blockchain-team-codeowners @stacks-network/blockchain-team-signer
11+
stacks-signer/**/*.rs @stacks-network/blockchain-team-codeowners @stacks-network/blockchain-team-signer
12+
13+
# CI workflows
14+
# require both blockchain-team and blockchain-team-ci teams to review PR's modifying CI workflows
15+
/.github/workflows/ @stacks-network/blockchain-team @stacks-network/blockchain-team-ci
16+
/.github/actions/ @stacks-network/blockchain-team @stacks-network/blockchain-team-ci

.github/workflows/ci.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ on:
1919
- opened
2020
- reopened
2121
- synchronize
22-
- ready_for_review
2322

2423
defaults:
2524
run:

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

Lines changed: 33 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,15 @@ name: Core build tests
44
# - PRs are (re)opened against develop branch
55
on:
66
workflow_call:
7-
7+
88
jobs:
99
check-consts:
1010
name: Check the constants from stacks-inspect
1111
runs-on: ubuntu-latest
12+
defaults:
13+
run:
14+
shell: bash
15+
1216
steps:
1317
- name: Checkout the latest code
1418
id: git_checkout
@@ -21,13 +25,35 @@ jobs:
2125
uses: actions-rust-lang/setup-rust-toolchain@11df97af8e8102fd60b60a77dfbf58d40cd843b8 # v1.10.1
2226
with:
2327
toolchain: ${{ env.RUST_TOOLCHAIN }}
24-
- name: Build the binaries
25-
id: build
28+
29+
## run cargo check steps
30+
- name: Cargo Check
31+
id: cargo_check
32+
run: |
33+
cargo check
34+
35+
- name: Cargo Check (monitoring_prom)
36+
id: cargo_check_prom
37+
run: |
38+
cargo check --features monitoring_prom
39+
40+
- name: Cargo Check (clarity)
41+
id: cargo_check_clarity
2642
run: |
27-
cargo build --bin stacks-inspect
43+
cargo check -p clarity --no-default-features
44+
45+
- name: Cargo Check (stacks-common)
46+
id: cargo_check_stacks-common
47+
run: |
48+
cargo check -p stacks-common --no-default-features
49+
2850
- name: Dump constants JSON
2951
id: consts-dump
30-
run: cargo run --bin stacks-inspect -- dump-consts | tee out.json
31-
- name: Set expected constants JSON
52+
run: |
53+
cargo run --bin stacks-inspect -- dump-consts | tee out.json
54+
55+
## output any diff to the github job summary
56+
- name: Compare expected constants JSON
3257
id: expects-json
33-
run: diff out.json ./sample/expected_consts.json
58+
run: |
59+
diff out.json ./sample/expected_consts.json >> $GITHUB_STEP_SUMMARY

.github/workflows/lock-threads.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
id: lock_threads
3030
uses: stacks-network/actions/lock-threads@main
3131
with:
32-
github-token: ${{ secrets.GH_TOKEN }}
32+
github-token: ${{ secrets.GITHUB_TOKEN }}
3333
issue-inactive-days: 7
3434
pr-inactive-days: 7
3535
discussion-inactive-days: 7

.github/workflows/workflow-cleanup.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,19 @@ on:
1212
workflow-ttl:
1313
description: "How many days to keep a successful workflow (default: 30)"
1414
required: false
15-
default: "30"
15+
default: "60"
1616
failed-workflow-ttl:
1717
description: "How many days to keep failed workflows (default: 15)"
1818
required: false
19-
default: "15"
19+
default: "60"
2020
schedule:
2121
## Run every day at 00:00:00
2222
- cron: "0 0 * * *"
2323

24+
permissions:
25+
actions: write # to delete workflow runs and caches
26+
contents: read # to access repo contents
27+
2428
## env vars are transferred to composite action steps
2529
env:
2630
CACHE_TTL: 7 ## number of days to keep a cache
@@ -41,7 +45,7 @@ jobs:
4145
id: cleanup
4246
uses: stacks-network/actions/cleanup/workflows@main
4347
with:
44-
token: ${{ secrets.GH_TOKEN }}
48+
token: ${{ secrets.GITHUB_TOKEN }}
4549
cache-ttl: ${{ inputs.cache-ttl || env.CACHE_TTL}}
4650
workflow-ttl: ${{ inputs.workflow-ttl || env.WORKFLOW_TTL}}
4751
failed-workflow-ttl: ${{ inputs.failed-workflow-ttl || env.FAILED_WORKFLOW_TTL }}

CHANGELOG.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,36 @@ 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.1.0.0.11]
9+
10+
- Hotfix for p2p stack misbehavior in mempool syncing conditions
11+
12+
## [3.1.0.0.10]
13+
14+
### Added
15+
- Persisted tracking of StackerDB slot versions for mining. This improves miner p2p performance.
16+
17+
## [3.1.0.0.9]
918

1019
### Added
1120

21+
- Added field `vm_error` to EventObserver transaction outputs
1222
- Added new `ValidateRejectCode` values to the `/v3/block_proposal` endpoint
1323
- Added `StateMachineUpdateContent::V1` to support a vector of `StacksTransaction` expected to be replayed in subsequent Stacks blocks
24+
- Include a reason string in the transaction receipt when a transaction is rolled back due to a post-condition. This should help users in understanding what went wrong.
25+
- Updated `StackerDBListener` to monitor signer state machine updates and store signer global state information, enabling miners to perform transaction replays.
26+
- Added a testnet `replay_transactions` flag to the miner configuration to feature-gate transaction replay. When enabled, the miner will construct a replay block if a threshold of signers signals that a transaction set requires replay.
1427

1528
### Changed
1629

1730
- Reduce the default `block_rejection_timeout_steps` configuration so that miners will retry faster when blocks fail to reach 70% approved or 30% rejected.
1831
- Added index for `next_ready_nakamoto_block()` which improves block processing performance.
1932
- Added a new field, `parent_burn_block_hash`, to the payload that is included in the `/new_burn_block` event observer payload.
2033

34+
### Fixed
35+
36+
- Fix regression in mock-mining, allowing the mock miner to continue mining blocks throughout a tenure instead of failing after mining the tenure change block.
37+
2138
## [3.1.0.0.8]
2239

2340
### Added

CODEOWNERS

Lines changed: 0 additions & 20 deletions
This file was deleted.

clarity/src/vm/analysis/mod.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,16 @@ use self::trait_checker::TraitChecker;
3434
use self::type_checker::v2_05::TypeChecker as TypeChecker2_05;
3535
use self::type_checker::v2_1::TypeChecker as TypeChecker2_1;
3636
pub use self::types::{AnalysisPass, ContractAnalysis};
37+
#[cfg(feature = "rusqlite")]
3738
use crate::vm::ast::{build_ast_with_rules, ASTRules};
3839
use crate::vm::costs::LimitedCostTracker;
3940
#[cfg(feature = "rusqlite")]
4041
use crate::vm::database::MemoryBackingStore;
4142
use crate::vm::database::STORE_CONTRACT_SRC_INTERFACE;
4243
use crate::vm::representations::SymbolicExpression;
43-
use crate::vm::types::{QualifiedContractIdentifier, TypeSignature};
44+
use crate::vm::types::QualifiedContractIdentifier;
45+
#[cfg(feature = "rusqlite")]
46+
use crate::vm::types::TypeSignature;
4447
use crate::vm::ClarityVersion;
4548

4649
/// Used by CLI tools like the docs generator. Not used in production

clarity/src/vm/analysis/type_checker/v2_05/natives/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ mod maps;
3434
mod options;
3535
mod sequences;
3636

37+
#[allow(clippy::large_enum_variant)]
3738
pub enum TypedNativeFunction {
3839
Special(SpecialNativeFunction),
3940
Simple(SimpleNativeFunction),

clarity/src/vm/analysis/type_checker/v2_1/natives/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ mod maps;
4242
mod options;
4343
mod sequences;
4444

45+
#[allow(clippy::large_enum_variant)]
4546
pub enum TypedNativeFunction {
4647
Special(SpecialNativeFunction),
4748
Simple(SimpleNativeFunction),

0 commit comments

Comments
 (0)