Skip to content

Commit

Permalink
Set up CI for repo
Browse files Browse the repository at this point in the history
  • Loading branch information
str4d committed Dec 15, 2023
1 parent cf99307 commit a12018b
Show file tree
Hide file tree
Showing 8 changed files with 94 additions and 2 deletions.
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
timezone: Etc/UTC
open-pull-requests-limit: 10
reviewers:
- str4d
assignees:
- str4d
54 changes: 54 additions & 0 deletions .github/workflows/lints.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Lints

# We only run these lints on trial-merges of PRs to reduce noise.
on: pull_request

jobs:
clippy:
name: Clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Clippy check
uses: auguwu/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
all-features: true
deny: warnings
args: --all-targets

doc-links:
name: Intra-doc links
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- run: cargo fetch
# Requires #![deny(rustdoc::broken_intra_doc_links)] in crates.
- name: Check intra-doc links
run: cargo doc --workspace --all-features --document-private-items

fmt:
name: Rustfmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Check formatting
run: cargo fmt --all --check

hacspec:
name: hacspec syntax
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: DeterminateSystems/nix-installer-action@main
- uses: DeterminateSystems/magic-nix-cache-action@main
- name: Install hax
run: nix profile install github:hacspec/hax
- name: Check syntax
run: cargo hax json plonkish-relation
- name: Check compilation to Coq
run: cargo hax into coq plonkish-relation
- name: Check compilation to Easycrypt
run: cargo hax into easycrypt plonkish-relation
- name: Check compilation to F*
run: cargo hax into fstar plonkish-relation
19 changes: 19 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Tests

on: [push, pull_request]

jobs:
test:
name: Run on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]

steps:
- uses: actions/checkout@v3
- run: cargo fetch
- name: Build tests
run: cargo build --workspace --verbose --all-features --tests
- name: Run tests
run: cargo test --workspace --verbose --all-features
3 changes: 3 additions & 0 deletions plonkish-encoding/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,6 @@ description = "An encoding format for PLONKish arithmetic circuits"
license.workspace = true

[dependencies]

[dev-dependencies]
plonkish-relation = { path = "../plonkish-relation" }
2 changes: 1 addition & 1 deletion plonkish-encoding/src/lib.rs
Original file line number Diff line number Diff line change
@@ -1 +1 @@

#![deny(rustdoc::broken_intra_doc_links)]
1 change: 1 addition & 0 deletions plonkish-relation/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ description = "Specification of the PLONKish relation in hacspec"
license.workspace = true

[dependencies]
hacspec-lib = { git = "https://github.com/hacspec/hacspec.git", rev = "00601ff65cc9a745c5191282986721d0fcb5f4f7" }
2 changes: 1 addition & 1 deletion plonkish-relation/src/lib.rs
Original file line number Diff line number Diff line change
@@ -1 +1 @@

#![deny(rustdoc::broken_intra_doc_links)]
3 changes: 3 additions & 0 deletions rust-toolchain.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[toolchain]
channel = "nightly-2023-01-15"
components = ["clippy", "rustfmt"]

0 comments on commit a12018b

Please sign in to comment.