Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PQCP release workflow #302

Open
6 tasks
franziskuskiefer opened this issue Jun 10, 2024 · 6 comments
Open
6 tasks

PQCP release workflow #302

franziskuskiefer opened this issue Jun 10, 2024 · 6 comments
Assignees
Labels

Comments

@franziskuskiefer
Copy link
Member

franziskuskiefer commented Jun 10, 2024

@franziskuskiefer
Copy link
Member Author

  • APIs (pqcp feature?)
  • Update script

@jschneider-bensch
Copy link
Collaborator

  • libcrux-ml-kem's Cargo.toml should be made independent from the workspace
  • should the PQCP repo contain the necessary dependency crates (libcrux-intrinsics, libcrux-sha3, libcrux-platform) as well?

@jschneider-bensch
Copy link
Collaborator

The following Cargo.toml e.g. has the package metadata and release profile settings pulled down from the workspace, as well as replacing local path dependencies by the libcrux repo link. (This works as a first step, but in the code package there probably shouldn't be a dependency on libcrux-dev, right?)

[package]
name = "libcrux-ml-kem"
version = "0.0.2-pre.2"
authors = ["Cryspen"]
license = "Apache-2.0"
homepage = "https://github.com/cryspen/libcrux"
edition = "2021"
repository = "https://github.com/cryspen/libcrux"
readme = "Readme.md"
exclude = ["/tests", "/implementation_notes.pdf"]

[dependencies]
rand_core = { version = "0.6" }
libcrux-platform = { git = "https://github.com/cryspen/libcrux", version = "0.0.2-pre.2", branch = "dev" }
libcrux-sha3 = { git = "https://github.com/cryspen/libcrux", version = "0.0.2-pre.2", branch = "dev" }
libcrux-intrinsics = { git = "https://github.com/cryspen/libcrux", version = "0.0.2-pre.2", branch = "dev" }

# This is only required for verification.
# The hax config is set by the hax toolchain.
[target.'cfg(hax)'.dependencies]
hax-lib = { git = "https://github.com/hacspec/hax/" }

[features]
default = ["std"]
simd128 = ["libcrux-sha3/simd128"]
simd256 = ["libcrux-sha3/simd256"]
tests = []                         # Test utilities. DO NOT USE.
std = []

[dev-dependencies]
rand = { version = "0.8" }
serde_json = { version = "1.0" }
serde = { version = "1.0", features = ["derive"] }
hex = { version = "0.4.3", features = ["serde"] }
criterion = "0.5"
libcrux-ml-kem = { path = ".", features = ["tests"] }

[[bench]]
name = "ml-kem"
harness = false

[profile.release]
lto = "fat"
codegen-units = 1
panic = "abort"

@jschneider-bensch
Copy link
Collaborator

I have a PR for an update script at #323, just waiting for #324 to get merged so I can address any changes from that.

@franziskuskiefer franziskuskiefer changed the title Plan pqcp Initial pqcp release Jun 27, 2024
@jschneider-bensch jschneider-bensch changed the title Initial pqcp release PQCP release workflow Jul 10, 2024
@jschneider-bensch
Copy link
Collaborator

Originally, this issue tracked progress on the initial PQCP release. Now it tracks issues around the PQCP release workflow in general.

@franziskuskiefer franziskuskiefer added pqcp PQ Code Packages meta labels Jul 10, 2024
Copy link

This issue has been marked as stale due to a lack of activity for 60 days. If you believe this issue is still relevant, please provide an update or comment to keep it open. Otherwise, it will be closed in 7 days.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: 🆕 New
Development

No branches or pull requests

2 participants