tectonic-bedrock-python 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. tectonic_bedrock_python-0.1.0/.github/workflows/manual-publish.yml +67 -0
  2. tectonic_bedrock_python-0.1.0/.github/workflows/python.yml +57 -0
  3. tectonic_bedrock_python-0.1.0/.github/workflows/rust.yml +61 -0
  4. tectonic_bedrock_python-0.1.0/.gitignore +25 -0
  5. tectonic_bedrock_python-0.1.0/CHANGELOG.md +10 -0
  6. tectonic_bedrock_python-0.1.0/Cargo.lock +1114 -0
  7. tectonic_bedrock_python-0.1.0/Cargo.toml +37 -0
  8. tectonic_bedrock_python-0.1.0/LICENSE +201 -0
  9. tectonic_bedrock_python-0.1.0/PKG-INFO +526 -0
  10. tectonic_bedrock_python-0.1.0/README.md +490 -0
  11. tectonic_bedrock_python-0.1.0/bedrock_python/__init__.py +13 -0
  12. tectonic_bedrock_python-0.1.0/bedrock_python/kats/__init__.py +5 -0
  13. tectonic_bedrock_python-0.1.0/bedrock_python/kats/__main__.py +9 -0
  14. tectonic_bedrock_python-0.1.0/bedrock_python/kats/cli.py +183 -0
  15. tectonic_bedrock_python-0.1.0/bedrock_python/kats/parser.py +129 -0
  16. tectonic_bedrock_python-0.1.0/bedrock_python/kats/runner.py +147 -0
  17. tectonic_bedrock_python-0.1.0/build.rs +9 -0
  18. tectonic_bedrock_python-0.1.0/pyproject.toml +64 -0
  19. tectonic_bedrock_python-0.1.0/src/falcon.rs +225 -0
  20. tectonic_bedrock_python-0.1.0/src/hhd.rs +153 -0
  21. tectonic_bedrock_python-0.1.0/src/lib.rs +76 -0
  22. tectonic_bedrock_python-0.1.0/src/ml_dsa.rs +225 -0
  23. tectonic_bedrock_python-0.1.0/test_vectors/ML-DSA-keyGen-FIPS204/expectedResults.json +399 -0
  24. tectonic_bedrock_python-0.1.0/test_vectors/ML-DSA-keyGen-FIPS204/internalProjection.json +555 -0
  25. tectonic_bedrock_python-0.1.0/test_vectors/ML-DSA-keyGen-FIPS204/prompt.json +330 -0
  26. tectonic_bedrock_python-0.1.0/test_vectors/ML-DSA-keyGen-FIPS204/registration.json +12 -0
  27. tectonic_bedrock_python-0.1.0/test_vectors/ML-DSA-keyGen-FIPS204/validation.json +306 -0
  28. tectonic_bedrock_python-0.1.0/tests/__init__.py +1 -0
  29. tectonic_bedrock_python-0.1.0/tests/conftest.py +12 -0
  30. tectonic_bedrock_python-0.1.0/tests/test_falcon.py +463 -0
  31. tectonic_bedrock_python-0.1.0/tests/test_hhd.py +434 -0
  32. tectonic_bedrock_python-0.1.0/tests/test_ml_dsa.py +463 -0
@@ -0,0 +1,67 @@
1
+ name: Manual Publish
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ inputs:
6
+ dry_run:
7
+ description: "Run with --dry-run?"
8
+ required: true
9
+ type: boolean
10
+ default: false
11
+
12
+ jobs:
13
+ publish:
14
+ name: Publish to PyPI
15
+ runs-on: ubuntu-latest
16
+ permissions:
17
+ id-token: write # Required for trusted publishing
18
+ contents: read
19
+
20
+ steps:
21
+ - name: Checkout selected tag
22
+ uses: actions/checkout@v5
23
+ with:
24
+ ref: ${{ github.ref }}
25
+
26
+ - name: Setup SSH Key
27
+ uses: webfactory/ssh-agent@v0.9.0
28
+ with:
29
+ ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
30
+
31
+ - name: Add GitHub to known hosts
32
+ run: ssh-keyscan github.com >> ~/.ssh/known_hosts
33
+
34
+ - name: Install Rust toolchain
35
+ uses: dtolnay/rust-toolchain@stable
36
+
37
+ - name: Install Python
38
+ uses: actions/setup-python@v4
39
+ with:
40
+ python-version: "3.11"
41
+
42
+ - name: Sync pyproject.toml to Tag Name
43
+ run: |
44
+ RAW_TAG=${{ github.ref_name }}
45
+ VERSION=$(echo "$RAW_TAG" | sed 's/^v//')
46
+ echo "Syncing pyproject.toml version to: $VERSION"
47
+ sed -i "s/^version = .*/version = \"$VERSION\"/" pyproject.toml
48
+ grep "^version =" pyproject.toml
49
+
50
+ - name: Dry run (build only)
51
+ if: ${{ github.event.inputs.dry_run == 'true' }}
52
+ uses: PyO3/maturin-action@v1
53
+ with:
54
+ command: build
55
+ manylinux: manylinux_2_28
56
+ before-script-linux: yum install -y clang-devel cmake3 && ln -sf /usr/bin/cmake3 /usr/bin/cmake || true
57
+
58
+ - name: Build and publish
59
+ if: ${{ github.event.inputs.dry_run != 'true' }}
60
+ uses: PyO3/maturin-action@v1
61
+ with:
62
+ command: publish
63
+ args: --skip-existing
64
+ manylinux: manylinux_2_28
65
+ before-script-linux: yum install -y clang-devel cmake3 && ln -sf /usr/bin/cmake3 /usr/bin/cmake || true
66
+ env:
67
+ MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
@@ -0,0 +1,57 @@
1
+ name: python
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ paths-ignore:
8
+ - '**/*.md'
9
+ - rustfmt.toml
10
+ pull_request:
11
+ branches:
12
+ - main
13
+ paths-ignore:
14
+ - '**/*.md'
15
+ - rustfmt.toml
16
+
17
+ env:
18
+ CARGO_INCREMENTAL: 0
19
+ CARGO_TERM_COLOR: always
20
+ RUST_LOG_STYLE: always
21
+
22
+ defaults:
23
+ run:
24
+ shell: bash
25
+
26
+ jobs:
27
+ python3:
28
+ runs-on: ubuntu-latest
29
+ steps:
30
+ - name: Checkout repository
31
+ uses: actions/checkout@v5
32
+
33
+ - name: Setup SSH Key
34
+ uses: webfactory/ssh-agent@v0.9.0
35
+ with:
36
+ ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
37
+
38
+ - name: Add GitHub to known hosts
39
+ run: ssh-keyscan github.com >> ~/.ssh/known_hosts
40
+
41
+ - name: Install Rust
42
+ uses: dtolnay/rust-toolchain@master
43
+ with:
44
+ toolchain: stable
45
+
46
+ - name: Install Python
47
+ uses: actions/setup-python@v4
48
+ with:
49
+ python-version: '3.11'
50
+
51
+ - name: Run tests
52
+ run: |
53
+ python3 -m venv .venv
54
+ source .venv/bin/activate
55
+ pip install maturin pytest
56
+ maturin develop
57
+ pytest tests -v
@@ -0,0 +1,61 @@
1
+ name: rust
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ paths-ignore:
8
+ - '**/*.md'
9
+ pull_request:
10
+ branches:
11
+ - main
12
+ paths-ignore:
13
+ - '**/*.md'
14
+
15
+ env:
16
+ CARGO_INCREMENTAL: 0
17
+ CARGO_TERM_COLOR: always
18
+ RUST_LOG_STYLE: always
19
+ RUSTFLAGS: "-Dwarnings"
20
+ RUSTDOCFLAGS: "-Dwarnings"
21
+
22
+ defaults:
23
+ run:
24
+ shell: bash
25
+
26
+ jobs:
27
+ rust:
28
+ runs-on: ubuntu-latest
29
+ steps:
30
+ - name: Checkout repository
31
+ uses: actions/checkout@v5
32
+
33
+ - name: Setup SSH Key
34
+ uses: webfactory/ssh-agent@v0.9.0
35
+ with:
36
+ ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
37
+
38
+ - name: Add GitHub to know hosts
39
+ run: ssh-keyscan github.com >> ~/.ssh/known_hosts
40
+
41
+ - uses: dtolnay/rust-toolchain@master
42
+ with:
43
+ toolchain: stable
44
+ components: rustfmt clippy
45
+
46
+ - name: Configure Cargo to use git CLI
47
+ run: |
48
+ mkdir -p ~/.cargo
49
+ echo '[net]' > ~/.cargo/config.toml
50
+ echo 'git-fetch-with-cli = true' >> ~/.cargo/config.toml
51
+
52
+ - name: Set git to fetch all refs (not shallow)
53
+ run: |
54
+ git config --global fetch.prune true
55
+ git config --global fetch.pruneTags true
56
+
57
+ - name: RustFmt
58
+ run: cargo fmt -- --check
59
+
60
+ - name: Clippy
61
+ run: cargo clippy --all-features -- -D warnings
@@ -0,0 +1,25 @@
1
+
2
+ # Python
3
+ __pycache__/
4
+ *.py[cod]
5
+ *$py.class
6
+ *.so
7
+ .Python
8
+ *.egg-info/
9
+ dist/
10
+ build/
11
+
12
+ # Rust
13
+ target/
14
+ Cargo.lock
15
+
16
+ # IDE
17
+ .vscode/
18
+ .idea/
19
+ *.swp
20
+ *.swo
21
+
22
+ # Environment
23
+ .venv/
24
+ venv/
25
+ env/
@@ -0,0 +1,10 @@
1
+ # Changelog
2
+
3
+ All notable changes to this crate will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## v0.1.0 - 2026-02-05
9
+
10
+ - Initial Release