Conversation
Signed-off-by: Aaron Kaiser <a_kaiser@posteo.de>
Signed-off-by: Aaron Kaiser <a_kaiser@posteo.de>
Signed-off-by: Aaron Kaiser <a_kaiser@posteo.de>
978ec03 to
3587f8e
Compare
Signed-off-by: Aaron Kaiser <a_kaiser@posteo.de>
| # It is not intended for manual editing. | ||
| version = 4 | ||
|
|
||
| [[package]] |
There was a problem hiding this comment.
@Rixxc Can you comment on what all these packages are needed for?
There was a problem hiding this comment.
There are only a few dependencies in that that are actually used at build- and runtime. The dependencies are:
Runtime Dependencies
- kem: which contains interface definition that the mlkem-native crate implements. This is the same interface that the ml-kem crate from RustCrypto uses. This allows for the mlkem-native crate to be used in generic code that expects objects that implement this interface and can be used as an easy drop-in replacement for the already existing and quit popular ml-kem crate.
- crypto-common: Is a dependency from kem
- hybrid-array: Is needed to implement the kem interface
- typenum: pulled in by hybrid-array
- rand_core: This crate contains interface definitions for RNGs, similar to the kem crate
Build Dependencies
- cc: Is needed to compile the C code of mlkem-native during build time of this crate
- find-msvc-tools: pulled in by cc, needed to compile the C code under Windows
- shlex: pulled in by cc, used to escape strings for a POSIX shell
Other Dependencies
The rest of the dependencies are just dev dependencies. They are pulled in due to the getrandom feature of of the kem create. They are only used in the examples in the mlkem-native create.
| [package] | ||
| name = "mlkem-native" | ||
| version = "1.1.0-rc.1" | ||
| edition = "2021" |
There was a problem hiding this comment.
The edition field is used by the compiler. It specifies a set of features that the Rust compiler has to support to be able to compile the project.
There was a problem hiding this comment.
I've updated the edition to the latest one
There was a problem hiding this comment.
I've updated the edition to the latest one
…kem-native bindings automatically Signed-off-by: Aaron Kaiser <a_kaiser@posteo.de>
…ix and exclude Cargo.lock from copyright and license check Signed-off-by: Aaron Kaiser <a_kaiser@posteo.de>
…t, add metadata to package and update the rust edition Signed-off-by: Aaron Kaiser <a_kaiser@posteo.de>
|
I had to move the package definition to the root of the project as otherwise we most likely will encounter issues when trying to publish the crate |
|
Shall I squash the commits before this PR gets merged? Also is the crate name of mlkem-native fine or should it rather be mlkem-native-rs? |
This PR proposes a Rust binding for mlkem-native.
Some notes about the implementation:
Please let me know what you think about this approach.