Skip to content

Commit 112dbd3

Browse files
authored
Merge pull request #437 from pq-code-package/update-docs
Update documentation in preparation of the alpha release
2 parents b5f9627 + 61d5e18 commit 112dbd3

16 files changed

+243
-165
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 17 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,33 @@
11
---
22
name: Bug report
33
about: Create a report to help us improve
4-
title: ''
54
labels: bug
6-
assignees: ''
7-
85
---
96

7+
8+
<!--
9+
10+
Security reports
11+
12+
DO NOT report security issues through Github issues - instead use Github's [private vulnerability reporting](https://github.com/pq-code-package/mlkem-native/security).
13+
-->
14+
15+
1016
**Describe the bug**
1117
A clear and concise description of what the bug is.
1218

13-
**To Reproduce**
14-
Steps to reproduce the behavior:
15-
1. Go to '...'
16-
2. Click on '....'
17-
3. Scroll down to '....'
18-
4. See error
19+
**Platform**: e.g., x86_64 Linux
1920

20-
**Expected behavior**
21-
A clear and concise description of what you expected to happen.
21+
**Compiler**: e.g., gcc 13.2.0 (installed through nix)
2222

23-
**Screenshots**
24-
If applicable, add screenshots to help explain your problem.
23+
**How to reproduce**
24+
Steps to reproduce the behavior:
25+
```
2526
26-
**Desktop (please complete the following information):**
27-
- OS: [e.g. iOS]
28-
- Browser [e.g. chrome, safari]
29-
- Version [e.g. 22]
27+
```
3028

31-
**Smartphone (please complete the following information):**
32-
- Device: [e.g. iPhone6]
33-
- OS: [e.g. iOS8.1]
34-
- Browser [e.g. stock browser, safari]
35-
- Version [e.g. 22]
29+
**Expected behavior**
30+
A clear and concise description of what you expected to happen.
3631

3732
**Additional context**
3833
Add any other context about the problem here.
Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,31 @@
11
---
22
name: Feature request
33
about: Suggest an idea for this project
4-
title: ''
54
labels: enhancement
6-
assignees: ''
7-
85
---
96

10-
**Is your feature request related to a problem? Please describe.**
11-
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
7+
**Platform**:
8+
Which platform does this concern?
9+
- [ ] platform independent
10+
- [ ] aarch64
11+
- [ ] x86_64
12+
- [ ] rv64
13+
- [ ] other
14+
15+
**Issue category**:
16+
17+
Which part(s) of mlkem-native does this issue concern:
18+
19+
- [ ] core crypto: ML-KEM
20+
- [ ] core crypto: FIPS202
21+
- [ ] documentation
22+
- [ ] integration
23+
- [ ] CBMC
24+
- [ ] CI
25+
- [ ] Testing
1226

1327
**Describe the solution you'd like**
1428
A clear and concise description of what you want to happen.
1529

16-
**Describe alternatives you've considered**
17-
A clear and concise description of any alternative solutions or features you've considered.
18-
1930
**Additional context**
2031
Add any other context or screenshots about the feature request here.

.github/pull_request_template.md

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,21 @@
1-
[//]: # (SPDX-License-Identifier: CC-BY-4.0)
2-
<!-- Please give a brief explanation of the purpose of this pull request. -->
1+
<!--
2+
Security reports
33
4-
<!-- Does this PR resolve any issue? If so, please reference it using automatic-closing keywords like "Fixes #123." -->
4+
DO NOT submit pull requests related to security issues directly - instead use Github's [private vulnerability reporting](https://github.com/pq-code-package/mlkem-native/security).
5+
-->
56

6-
<!-- Any PR adding a new feature is expected to contain a test; the test should be part of CI testing, preferably within the ".github/workflows" directory tree. Please add an explanation to the PR if/when (why) this cannot be done. -->
7+
**Summary**:
8+
Provide a brief summary of your changes.
79

8-
<!-- Once your pull request is ready for review and passing continuous integration tests, please convert from a draft PR to a normal PR, and request a review. -->
10+
**Steps**:
11+
If your pull request consists of multiple sequential changes, please describe them here:
12+
13+
**Performed local tests**:
14+
- [ ] `lint` passing
15+
- [ ] `tests all` passing
16+
- [ ] `tests bench` passing
17+
- [ ] `tests cbmc` passing
18+
19+
**Do you expect this change to impact performance**: Yes/No
20+
21+
If yes, please provide local benchmarking results.

.github/settings.yml

Lines changed: 0 additions & 18 deletions
This file was deleted.

BUILDING.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
[//]: # (SPDX-License-Identifier: CC-BY-4.0)
2+
3+
# Building mlkem-native
4+
5+
### Prerequisites
6+
7+
To build **mlkem-native**, you need `make` and a C90 compiler. To use the test scripts, you need Python3 with
8+
dependencies as specified in [requirements.txt](requirements.txt). We recommend using a virtual environment, e.g.:
9+
10+
```bash
11+
python3 -m venv venv
12+
./venv/bin/python3 -m pip install -r requirements.txt
13+
source venv/bin/activate
14+
```
15+
16+
### Using `make`
17+
18+
You can build and test **mlkem-native** as follows:
19+
20+
```bash
21+
make quickcheck # With native code backend (if available)
22+
make OPT=0 quickcheck # With C backend
23+
```
24+
25+
To merely build test and benchmarking components, use the following `make` targets:
26+
27+
```bash
28+
make mlkem
29+
make bench
30+
make bench_components
31+
make nistkat
32+
make kat
33+
```
34+
35+
The resulting binaries can then be found in [test/build](test/build).
36+
37+
### Using `tests` script
38+
39+
We recommend compiling and running tests and benchmarks using the [`./scripts/tests`](scripts/tests) script. For
40+
example,
41+
42+
```bash
43+
./scripts/tests func
44+
```
45+
46+
will compile and run functionality tests. For detailed information on how to use the script, please refer to the
47+
`--help` option.
48+
49+
### Nix setup
50+
51+
All the development and build dependencies are also specified in [flake.nix](flake.nix). We recommend installing them
52+
using
53+
[nix](https://nixos.org/download/). To execute a bash shell with the development environment specified in
54+
[flake.nix](flake.nix), run
55+
```bash
56+
nix develop --experimental-features 'nix-command flakes'
57+
```
58+
59+
### Windows
60+
61+
You can also build **mlkem-native** on Windows using `nmake` and an MSVC compiler.
62+
63+
To build and run the tests (only support functional testing for non-opt implementation for now), use the following `nmake` targets:
64+
```powershell
65+
nmke /f .\Makefile.Microsoft_nmake quickcheck
66+
```

CODEOWNERS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# SPDX-License-Identifier: Apache-2.0
22
# Last matching pattern has precedence
33

4-
* @pq-code-package/pqcp-embedded-maintainers-aarch64
4+
* @pq-code-package/pqcp-native-maintainers

CODE_OF_CONDUCT.md

Lines changed: 0 additions & 6 deletions
This file was deleted.

CONTRIBUTING.md

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
[//]: # (SPDX-License-Identifier: CC-BY-4.0)
2-
[//]: # (TODO Add contributing guide)
32

43
# Contributing
54

6-
to be completed
5+
We welcome proposals to improve **mlkem-native**.
6+
In particular, we are interested to hear how you plan to use **mlkem-native** or what should be improved about **mlkem-native** allowing other projects to rely on it.
7+
If you have specific feature requests, please open an issue.
8+
9+
You can contact the **mlkem-native** team through the [PQCA Discord](https://discord.com/invite/xyVnwzfg5R).
10+
11+
## Call for contributors
12+
13+
We are actively seeking contributors who can help us build **mlkem-native**. If you are interested, please contact us,
14+
or volunteer for any of the open issues.
15+
16+
## Call for potential consumers
17+
18+
If you are a potential consumer of **mlkem-native**, please reach out: We're interested in hearing the way you want to
19+
use **mlkem-native**. If you have specific feature requests, please open an issue.

GOVERNANCE.md

Lines changed: 0 additions & 6 deletions
This file was deleted.

0 commit comments

Comments
 (0)