initial commit
All checks were successful
CI / lint (push) Successful in 1m35s
CI / test-python (push) Successful in 1m46s
CI / test-zig (push) Successful in 1m37s
CI / test-wasm (push) Successful in 1m52s
CI / test (push) Successful in 14m22s
CI / miri (push) Successful in 13m57s
CI / build (push) Successful in 1m6s
CI / fuzz-regression (push) Successful in 9m4s
CI / publish-python (push) Successful in 1m46s
CI / publish (push) Successful in 1m52s
CI / publish-wasm (push) Successful in 1m55s

Signed-off-by: Kamal Tufekcic <kamal@lo.sh>
This commit is contained in:
Kamal Tufekcic 2026-04-03 22:42:26 +03:00
commit 18af877ef0
No known key found for this signature in database
12 changed files with 32 additions and 31 deletions

View file

@ -194,5 +194,6 @@ jobs:
- name: Publish to Forgejo npm registry
working-directory: soliton_wasm/pkg
run: |
echo '//git.lo.sh/api/packages/lo/npm/:_authToken=${{ secrets.BUN_TOKEN }}' > .npmrc
bun publish --access public --registry ${{ github.server_url }}/api/packages/lo/npm/
echo 'registry=https://git.lo.sh/api/packages/lo/npm/' > .npmrc
echo '//git.lo.sh/api/packages/lo/npm/:_authToken=${{ secrets.BUN_TOKEN }}' >> .npmrc
npm publish --access public

10
Cargo.lock generated
View file

@ -696,7 +696,7 @@ checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112"
[[package]]
name = "libsoliton"
version = "0.1.0"
version = "0.1.1"
dependencies = [
"argon2",
"chacha20poly1305",
@ -728,7 +728,7 @@ dependencies = [
[[package]]
name = "libsoliton_capi"
version = "0.1.0"
version = "0.1.1"
dependencies = [
"cbindgen",
"libsoliton",
@ -1258,7 +1258,7 @@ dependencies = [
[[package]]
name = "soliton-cli"
version = "0.1.0"
version = "0.1.1"
dependencies = [
"clap",
"hex",
@ -1269,7 +1269,7 @@ dependencies = [
[[package]]
name = "soliton-python"
version = "0.1.0"
version = "0.1.1"
dependencies = [
"libsoliton",
"pyo3",
@ -1278,7 +1278,7 @@ dependencies = [
[[package]]
name = "soliton-wasm"
version = "0.1.0"
version = "0.1.1"
dependencies = [
"js-sys",
"libsoliton",

View file

@ -14,7 +14,7 @@ default-members = [
]
[workspace.package]
version = "0.1.0"
version = "0.1.1"
edition = "2024"
rust-version = "1.85"
license = "AGPL-3.0-only"
@ -26,7 +26,7 @@ categories = ["cryptography"]
keywords = ["post-quantum", "hybrid-encryption", "x-wing", "ed25519", "double-ratchet"]
[workspace.dependencies]
libsoliton = { path = "soliton", version = "0.1.0" }
libsoliton = { path = "soliton", version = "0.1.1" }
zeroize = { version = "=1.8.2", features = ["derive"] }
thiserror = "=2.0.18"
subtle = "=2.6.1"

View file

@ -26,14 +26,14 @@ let sig = soliton::identity::hybrid_sign(&id.secret_key, b"hello").unwrap();
soliton::identity::hybrid_verify(&id.public_key, b"hello", &sig).unwrap();
```
See [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) for the full API reference.
See [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/master/CHEATSHEET.md) for the full API reference.
## Documentation
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Specification.md) — full cryptographic specification
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Abstract.md) — security analysis specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) — API quick reference
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Specification.md) — full cryptographic specification
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Abstract.md) — security analysis specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/master/CHEATSHEET.md) — API quick reference
## License
[AGPL-3.0-only](https://git.lo.sh/lo/libsoliton/src/branch/main/LICENSE.md)
[AGPL-3.0-only](https://git.lo.sh/lo/libsoliton/src/branch/master/LICENSE.md)

View file

@ -1,6 +1,6 @@
[package]
name = "soliton-cli"
version = "0.1.0"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true

View file

@ -1,6 +1,6 @@
[package]
name = "soliton-python"
version = "0.1.0"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true

View file

@ -159,9 +159,9 @@ with soliton.StorageKeyRing(1, key) as ring:
## Documentation
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Specification.md) — full cryptographic specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) — API quick reference
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Abstract.md) — formal security model
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Specification.md) — full cryptographic specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/master/CHEATSHEET.md) — API quick reference
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Abstract.md) — formal security model
## License

View file

@ -4,7 +4,7 @@ build-backend = "maturin"
[project]
name = "soliton-py"
version = "0.1.0"
version = "0.1.1"
description = "Python bindings for libsoliton — post-quantum cryptographic library"
license = { text = "AGPL-3.0-only" }
requires-python = ">=3.10"

View file

@ -1,6 +1,6 @@
[package]
name = "soliton-wasm"
version = "0.1.0"
version = "0.1.1"
edition.workspace = true
license.workspace = true
repository.workspace = true

View file

@ -91,7 +91,7 @@ const phrase = soliton.verificationPhrase(pkA, pkB);
Full TypeScript types are included. All byte parameters accept `Uint8Array`. All byte returns are `Uint8Array`. Opaque types (`Identity`, `Ratchet`, `StorageKeyRing`, `StreamEncryptor`, `StreamDecryptor`, `CallKeys`) must be `free()`'d when no longer needed to zeroize secret material.
See [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) for the full API reference with sizes, error codes, and protocol details.
See [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/master/CHEATSHEET.md) for the full API reference with sizes, error codes, and protocol details.
## CLI
@ -113,10 +113,10 @@ For better performance, use the native CLI: `cargo install soliton-cli` → `sol
## Documentation
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Specification.md) — full cryptographic specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) — API quick reference
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Abstract.md) — formal security model
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Specification.md) — full cryptographic specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/master/CHEATSHEET.md) — API quick reference
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Abstract.md) — formal security model
## License
[AGPL-3.0-only](https://git.lo.sh/lo/libsoliton/src/branch/main/LICENSE.md)
[AGPL-3.0-only](https://git.lo.sh/lo/libsoliton/src/branch/master/LICENSE.md)

View file

@ -24,7 +24,7 @@ Add as a Zig dependency in `build.zig.zon`:
```zig
.dependencies = .{
.soliton = .{
.url = "https://git.lo.sh/lo/libsoliton/archive/v0.1.0.tar.gz",
.url = "https://git.lo.sh/lo/libsoliton/archive/v0.1.1.tar.gz",
.hash = "...",
},
},
@ -129,9 +129,9 @@ All constants from `soliton.h` are re-exported (`PUBLIC_KEY_SIZE`, `SECRET_KEY_S
## Documentation
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Specification.md) — full cryptographic specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/main/CHEATSHEET.md) — API quick reference
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/main/Abstract.md) — formal security model
- [Specification.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Specification.md) — full cryptographic specification
- [CHEATSHEET.md](https://git.lo.sh/lo/libsoliton/src/branch/master/CHEATSHEET.md) — API quick reference
- [Abstract.md](https://git.lo.sh/lo/libsoliton/src/branch/master/Abstract.md) — formal security model
## License

View file

@ -1,6 +1,6 @@
.{
.name = .soliton_zig,
.version = "0.1.0",
.version = "0.1.1",
.fingerprint = 0x333e453f9c21f54c,
.minimum_zig_version = "0.14.0",
.paths = .{