diff --git a/.github/workflows/core_testmodels.yml b/.github/workflows/core_testmodels.yml index 2c1328740..9679cbbf8 100644 --- a/.github/workflows/core_testmodels.yml +++ b/.github/workflows/core_testmodels.yml @@ -33,7 +33,7 @@ jobs: with: cache-compiled: "true" cache-registries: "true" - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/core_tests.yml b/.github/workflows/core_tests.yml index e687075e7..2ba330004 100644 --- a/.github/workflows/core_tests.yml +++ b/.github/workflows/core_tests.yml @@ -33,7 +33,7 @@ jobs: with: cache-compiled: "true" cache-registries: "true" - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index ae317c17f..ccd50d8e5 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -24,7 +24,7 @@ jobs: with: cache-compiled: "true" cache-registries: "true" - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/julia_auto_update.yml b/.github/workflows/julia_auto_update.yml index dd0050fef..3bfd87d37 100644 --- a/.github/workflows/julia_auto_update.yml +++ b/.github/workflows/julia_auto_update.yml @@ -14,7 +14,7 @@ jobs: - uses: actions/checkout@v4 with: ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Update Julia manifest file diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index dca14991d..e20da5c90 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -16,7 +16,7 @@ jobs: continue-on-error: true steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/pixi_auto_update.yml b/.github/workflows/pixi_auto_update.yml index 39a34c520..9c3ee9e42 100644 --- a/.github/workflows/pixi_auto_update.yml +++ b/.github/workflows/pixi_auto_update.yml @@ -14,7 +14,7 @@ jobs: - uses: actions/checkout@v4 with: ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" cache: false diff --git a/.github/workflows/python_codegen.yml b/.github/workflows/python_codegen.yml index 0062e307f..c14cbbd9f 100644 --- a/.github/workflows/python_codegen.yml +++ b/.github/workflows/python_codegen.yml @@ -16,7 +16,7 @@ jobs: continue-on-error: true steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/python_tests.yml b/.github/workflows/python_tests.yml index 485e2e834..6546b815f 100644 --- a/.github/workflows/python_tests.yml +++ b/.github/workflows/python_tests.yml @@ -26,7 +26,7 @@ jobs: - py310 steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Prepare pixi diff --git a/.github/workflows/qgis.yml b/.github/workflows/qgis.yml index 70429ed7e..6130f4dd5 100644 --- a/.github/workflows/qgis.yml +++ b/.github/workflows/qgis.yml @@ -22,7 +22,7 @@ jobs: - windows-latest steps: - uses: actions/checkout@v4 - - uses: prefix-dev/setup-pixi@v0.5.2 + - uses: prefix-dev/setup-pixi@v0.6.0 with: pixi-version: "latest" - name: Prepare pixi diff --git a/pixi.toml b/pixi.toml index 9db76f7c6..837fb5402 100644 --- a/pixi.toml +++ b/pixi.toml @@ -53,8 +53,18 @@ initialize-julia = { depends_on = [ # Docs build-julia-docs = { cmd = "julia --project docs/make.jl", depends_on = [ "initialize-julia", +], inputs = [ + "core", + "docs/make.jl", +], outputs = [ + "docs/build", +] } +quartodoc-build = { cmd = "quartodoc build && rm objects.json", cwd="docs", inputs = [ + "docs/_quarto.yml", + "python/ribasim", +], outputs = [ + "docs/python/reference", ] } -quartodoc-build = { cmd = "quartodoc build && rm objects.json", cwd = "docs" } quarto-preview = { cmd = "quarto preview docs", depends_on = [ "quartodoc-build", "generate-testmodels", @@ -99,11 +109,20 @@ test-ribasim-core = { cmd = "julia --project=core --eval 'using Pkg; Pkg.test()' test-ribasim-core-cov = { cmd = "julia --project=core --eval 'using Pkg; Pkg.test(coverage=true, julia_args=[\"--check-bounds=yes\"])'", depends_on = [ "generate-testmodels", ] } -generate-testmodels = "python utils/generate-testmodels.py" +generate-testmodels = { cmd = "python utils/generate-testmodels.py", inputs = [ + "python/ribasim", + "python/ribasim_testmodels", +], outputs = [ + "generated_testmodels", +] } tests = { depends_on = ["lint", "test-ribasim-python", "test-ribasim-core"] } # Codegen codegen = { cmd = "julia --project utils/gen_python.jl && ruff format python/ribasim/ribasim/schemas.py", depends_on = [ "initialize-julia", +], inputs = [ + "core", +], outputs = [ + "python/ribasim/ribasim/schemas.py", ] } # Publish build-ribasim-python-wheel = { cmd = "rm --recursive --force dist && python -m build && twine check dist/*", cwd = "python/ribasim" }