Skip to content

Commit ec506cb

Browse files
feat(codec): add canonical source and namespace identities (#8)
* feat(codec): encode canonical namespace v1 identities * test(codec): keep golden hex decoder lint clean * feat(codec): preserve canonical namespace binding radix bytes (#9)
1 parent dc5ec76 commit ec506cb

10 files changed

Lines changed: 1350 additions & 3 deletions

File tree

‎.github/workflows/codec.yml‎

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: Codec gates
2+
3+
on:
4+
pull_request:
5+
workflow_dispatch:
6+
7+
permissions:
8+
contents: read
9+
10+
concurrency:
11+
group: codec-${{ github.event.pull_request.number || github.ref }}
12+
cancel-in-progress: true
13+
14+
jobs:
15+
codec:
16+
name: ${{ matrix.os }} / ${{ matrix.profile }}
17+
runs-on: ${{ matrix.os }}
18+
timeout-minutes: 20
19+
strategy:
20+
fail-fast: false
21+
matrix:
22+
os: [ubuntu-latest, macos-latest, windows-latest]
23+
profile: [identity, zstd]
24+
steps:
25+
- uses: actions/checkout@v4
26+
- uses: dtolnay/rust-toolchain@stable
27+
with:
28+
components: rustfmt, clippy
29+
- uses: Swatinem/rust-cache@v2
30+
with:
31+
key: ${{ matrix.profile }}
32+
- name: Format
33+
run: cargo fmt --all --check
34+
- name: Build, lint and test
35+
shell: bash
36+
run: |
37+
set -euo pipefail
38+
codec_features=--no-default-features
39+
if [ '${{ matrix.profile }}' = zstd ]; then
40+
codec_features=--all-features
41+
fi
42+
cargo clippy --all-targets "$codec_features" --locked -- -D warnings
43+
cargo build "$codec_features" --locked
44+
cargo test "$codec_features" --locked

‎src/lib.rs‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
pub mod chunkmap;
88
pub mod descriptor;
99
pub mod metapage;
10+
pub mod namespace;
1011
pub mod treeframe;
1112
#[cfg(feature = "zstd")]
1213
pub mod zstd1;

0 commit comments

Comments
 (0)