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
8 changes: 6 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,14 @@
# smoke test: Fortran + MPI + NetCDF-4 compiled and run in the sandbox), nixpkgs-fmt,
# statix, deadnix, shellcheck, justfile parse, and the scripts' own self-tests. devShells
# are evaluated, not built, so ai-jail (a Rust compile) and ParMETIS never build here.
#
# No run on pull requests, to save runner time: the gate runs after the merge, on main.
# labs/ptbr-pdf compiles Typst from source, so it runs only on workflow_dispatch.
name: ci

on:
push:
branches: [main]
pull_request:
workflow_dispatch:

concurrency:
Expand All @@ -39,7 +41,9 @@ jobs:
strategy:
fail-fast: false
matrix:
lab: [pratico, publisher, ptbr-pdf, lint, paper, gleam-website, agentic, cuda, present, viz]
lab: ${{ fromJSON(github.event_name == 'workflow_dispatch'
&& '["pratico", "publisher", "ptbr-pdf", "lint", "paper", "gleam-website", "agentic", "cuda", "present", "viz"]'
|| '["pratico", "publisher", "lint", "paper", "gleam-website", "agentic", "cuda", "present", "viz"]') }}
defaults:
run:
working-directory: labs/${{ matrix.lab }}
Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/citation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
name: citation

on:
pull_request:
paths: [CITATION.cff, .zenodo.json, tools/citation/**]
push:
branches: [main]
paths: [CITATION.cff, .zenodo.json, tools/citation/**]
Expand Down
15 changes: 9 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,9 +122,10 @@ without a major bump (a minor bump before 1.0.0): the consumers break on their n

## CI

GitHub-hosted runners only. [`ci.yml`](.github/workflows/ci.yml) checks that the legacy root
evaluates; builds every lab (`nix flake check` with the lock required current, every `checks.*`
output built) and lints it (`nixpkgs-fmt`, `statix`, `deadnix`, `shellcheck`, justfile parse,
GitHub-hosted runners only. [`ci.yml`](.github/workflows/ci.yml) runs on a push to `main` and on
`workflow_dispatch`, not on pull requests: run the gate locally before a PR. It checks that the
legacy root evaluates; builds every lab (`nix flake check` with the lock required current, every
`checks.*` output built; `ptbr-pdf`, which compiles Typst, only on `workflow_dispatch`) and lints it (`nixpkgs-fmt`, `statix`, `deadnix`, `shellcheck`, justfile parse,
self-tests); runs the site rules (`just ci` in `site/`: format, tests, build and `site-check`);
parses every justfile with Ubuntu 24.04's `just` 1.21; runs `reuse lint`, `actionlint` and the
`citation` check. [`release.yml`](.github/workflows/release.yml) and
Expand Down Expand Up @@ -170,7 +171,9 @@ Each release from v0.1.1 is archived on [Zenodo](https://zenodo.org/), which giv
the concept DOI, [10.5281/zenodo.23311208](https://doi.org/10.5281/zenodo.23311208), which always resolves to the latest
version. GitHub's **Cite this repository** button exports APA and BibTeX from
[`CITATION.cff`](CITATION.cff). `just citation` makes that file and the block below from
[`.zenodo.json`](.zenodo.json).
[`.zenodo.json`](.zenodo.json). Each version also has its own DOI: v0.2.0 is
[10.5281/zenodo.23524112](https://doi.org/10.5281/zenodo.23524112), v0.1.1 is
[10.5281/zenodo.23311209](https://doi.org/10.5281/zenodo.23311209).

<!-- citation:start -->

Expand Down Expand Up @@ -247,9 +250,9 @@ picasso uses the same licences as the [ouroboric-dev](https://github.com/ourobor
[`REUSE.toml`](REUSE.toml) says which licence and which copyright holder apply to each file, so no
file carries a header; [`LICENSES/`](LICENSES) has every licence text, and CI runs `reuse lint`.

Releases up to and including v0.1.1 ([10.5281/zenodo.23311208](https://doi.org/10.5281/zenodo.23311208))
Releases up to and including v0.1.1 ([10.5281/zenodo.23311209](https://doi.org/10.5281/zenodo.23311209))
were published under MIT, and those copies stay under MIT. The AGPL-3.0 and CC BY 4.0 terms apply
from the next release. What is not mine, and under which terms:
from v0.2.0 ([10.5281/zenodo.23524112](https://doi.org/10.5281/zenodo.23524112)). What is not mine, and under which terms:

| What | Whose | Terms |
|---|---|---|
Expand Down
Loading
Loading