Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Copyright (c) The mldsa-native project authors
# SPDX-License-Identifier: Apache-2.0 OR ISC OR MIT

name: Bug report
description: Create a report to help us improve
labels: [bug]
body:
- type: markdown
attributes:
value: |
**Security reports**

DO NOT report security issues through GitHub issues - instead use GitHub's [private vulnerability reporting](https://github.com/pq-code-package/mldsa-native/security).
- type: input
id: platform
attributes:
label: Platform
placeholder: e.g., x86_64 Linux
validations:
required: true
- type: input
id: compiler
attributes:
label: Compiler
placeholder: e.g., gcc 13.2.0 (installed through nix)
validations:
required: true
- type: input
id: version
attributes:
label: mldsa-native version
placeholder: e.g., v1.0.0 or main-branch
validations:
required: true
- type: textarea
id: steps
attributes:
label: What did you do?
description: Steps to reproduce the behavior.
render: shell
validations:
required: true
- type: textarea
id: expected
attributes:
label: What did you expect to see?
validations:
required: true
- type: textarea
id: actual
attributes:
label: What did you actually see?
validations:
required: true
- type: textarea
id: context
attributes:
label: Additional context
description: Add any other context about the problem here.
43 changes: 43 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Copyright (c) The mldsa-native project authors
# SPDX-License-Identifier: Apache-2.0 OR ISC OR MIT

name: Feature request
description: Suggest an idea for this project
labels: [enhancement]
body:
- type: checkboxes
id: platform
attributes:
label: Platform
description: Which platform does this concern?
options:
- label: platform independent
- label: aarch64
- label: x86_64
- label: rv32
- label: other
- type: checkboxes
id: category
attributes:
label: Issue category
description: Which part(s) of mldsa-native does this issue concern?
options:
- label: "core crypto: ML-DSA"
- label: "core crypto: FIPS202"
- label: documentation
- label: integration
- label: verification
- label: CI
- label: testing
- type: textarea
id: feature
attributes:
label: Describe the feature
description: What would you like mldsa-native to support, and why?
validations:
required: true
- type: textarea
id: context
attributes:
label: Additional context
description: Add any other context or screenshots about the feature request here.
45 changes: 27 additions & 18 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -287,39 +287,42 @@ jobs:
darwin: True
opt: all
examples: true
# CPU flags are not correctly passed to the zig assembler
# https://github.com/ziglang/zig/issues/23576
# We therefore only test the C backend
#
# We omit all examples since there is currently no way to run
# only those examples not involving native code.
#
# zig 0.16 still appears affected on Linux (CPU-feature
# predefines look to be dropped in assembler-with-cpp mode).
# zig:
# - Up to 0.16, CPU feature flags are not passed to the assembler
# (https://github.com/ziglang/zig/issues/23576). We therefore
# only test the C backend and exclude the native examples.
# - 0.17 fixes this, so we test the native backends as well.
# - The ABI check is not supported with zig: on AArch64 it passes
# -march=armv8-a+simd and -march=armv8.4-a+sha3, which zig rejects
# since it parses -march as a CPU name.
- family: zig
version: "0.10"
shell: zig0_10
darwin: False
opt: no_opt
examples: False
- family: zig
version: "0.14"
shell: zig0_14
darwin: True
opt: no_opt
examples: False
examples: True
extra_args: "--exclude-example monolithic_build_native --exclude-example monolithic_build_multilevel_native --exclude-example multilevel_build_native"
- family: zig
version: "0.15"
shell: zig0_15
darwin: True
opt: no_opt
examples: False
examples: True
extra_args: "--exclude-example monolithic_build_native --exclude-example monolithic_build_multilevel_native --exclude-example multilevel_build_native"
- family: zig
version: "0.16"
shell: zig0_16
darwin: True
opt: no_opt
examples: False
examples: True
extra_args: "--exclude-example monolithic_build_native --exclude-example monolithic_build_multilevel_native --exclude-example multilevel_build_native"
- family: zig
version: "0.17"
shell: zig0_17
darwin: True
opt: all
examples: True
extra_args: "--no-abicheck"
runs-on: ${{ matrix.target.runner }}
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
Expand All @@ -338,6 +341,7 @@ jobs:
examples: ${{ matrix.compiler.examples }}
opt: ${{ matrix.compiler.opt }}
nix-shell: ${{ matrix.compiler.shell }}
extra_args: ${{ matrix.compiler.extra_args }}
cflags: "${{ matrix.cflags }}"
- name: native build+functest (C90)
if: ${{ matrix.compiler.darwin || matrix.target.runner != 'macos-latest' }}
Expand All @@ -352,6 +356,7 @@ jobs:
examples: ${{ matrix.compiler.examples }}
opt: ${{ matrix.compiler.opt }}
nix-shell: ${{ matrix.compiler.shell }}
extra_args: ${{ matrix.compiler.extra_args }}
cflags: "-std=c90 ${{ matrix.cflags }}"
- name: native build+functest (C99)
if: ${{ matrix.compiler.darwin || matrix.target.runner != 'macos-latest' }}
Expand All @@ -366,6 +371,7 @@ jobs:
examples: ${{ matrix.compiler.examples }}
opt: ${{ matrix.compiler.opt }}
nix-shell: ${{ matrix.compiler.shell }}
extra_args: ${{ matrix.compiler.extra_args }}
cflags: "-std=c99 ${{ matrix.cflags }}"
- name: native build+functest (C11)
if: ${{ matrix.compiler.darwin || matrix.target.runner != 'macos-latest' }}
Expand All @@ -380,6 +386,7 @@ jobs:
examples: ${{ matrix.compiler.examples }}
opt: ${{ matrix.compiler.opt }}
nix-shell: ${{ matrix.compiler.shell }}
extra_args: ${{ matrix.compiler.extra_args }}
cflags: "-std=c11 ${{ matrix.cflags }}"
- name: native build+functest (C17)
if: ${{ (matrix.compiler.darwin || matrix.target.runner != 'macos-latest') &&
Expand All @@ -395,6 +402,7 @@ jobs:
examples: ${{ matrix.compiler.examples }}
opt: ${{ matrix.compiler.opt }}
nix-shell: ${{ matrix.compiler.shell }}
extra_args: ${{ matrix.compiler.extra_args }}
cflags: "-std=c17 ${{ matrix.cflags }}"
- name: native build+functest (C23)
if: ${{ (matrix.compiler.darwin || matrix.target.runner != 'macos-latest') &&
Expand All @@ -410,6 +418,7 @@ jobs:
examples: ${{ matrix.compiler.examples }}
opt: ${{ matrix.compiler.opt }}
nix-shell: ${{ matrix.compiler.shell }}
extra_args: ${{ matrix.compiler.extra_args }}
cflags: "-std=c23 ${{ matrix.cflags }}"
stack_analysis:
name: Stack analysis (${{ matrix.target.name }}, ${{ matrix.cflags }})
Expand Down
Loading