From c151747d014634193adaeb0b39c7be1fde9dee64 Mon Sep 17 00:00:00 2001 From: Marius1311 Date: Wed, 14 Oct 2026 16:19:29 +0200 Subject: [PATCH] Lock conflicts keep one side; environment changes beside main; current pixi in CI - `.gitattributes`: `pixi.lock merge=binary linguist-language=YAML linguist-generated=true` (pixi's default line, minus `-diff`, so lock diffs stay reviewable). A conflict keeps one side whole instead of writing markers into YAML. - `.claude/settings.json`: `permissions.additionalDirectories: ["../-lock"]`, the checkout beside main where a task changing the environment locks and installs it; worktree sessions copy its lock without a prompt. - CI: `setup-pixi@v0.11.1` with `pixi-version: latest`. pixi 0.60 cannot read lock format v7, which current pixi writes. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/test.yaml | 4 ++-- {{cookiecutter.project_name}}/.claude/settings.json | 1 + {{cookiecutter.project_name}}/.gitattributes | 1 + {{cookiecutter.project_name}}/.github/workflows/lint.yaml | 4 ++-- {{cookiecutter.project_name}}/.github/workflows/test.yaml | 4 ++-- 5 files changed, 8 insertions(+), 6 deletions(-) create mode 100644 {{cookiecutter.project_name}}/.gitattributes diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index fdccce0..b84a7ad 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -25,9 +25,9 @@ jobs: - name: Put it under git, as the README's create steps do working-directory: ${{ runner.temp }}/my-analysis run: git init -q -b main && git add -A - - uses: prefix-dev/setup-pixi@v0.8.0 + - uses: prefix-dev/setup-pixi@v0.11.1 with: - pixi-version: v0.60.0 + pixi-version: latest manifest-path: ${{ runner.temp }}/my-analysis/pixi.toml cache: false - name: Run tests diff --git a/{{cookiecutter.project_name}}/.claude/settings.json b/{{cookiecutter.project_name}}/.claude/settings.json index 71a5088..23d190b 100644 --- a/{{cookiecutter.project_name}}/.claude/settings.json +++ b/{{cookiecutter.project_name}}/.claude/settings.json @@ -11,6 +11,7 @@ "analysis-workflow@quadbio": true }, "permissions": { + "additionalDirectories": ["../{{ cookiecutter.project_name }}-lock"], "deny": [ "Bash(git add -A:*)", "Bash(git add --all:*)", diff --git a/{{cookiecutter.project_name}}/.gitattributes b/{{cookiecutter.project_name}}/.gitattributes new file mode 100644 index 0000000..ba44862 --- /dev/null +++ b/{{cookiecutter.project_name}}/.gitattributes @@ -0,0 +1 @@ +pixi.lock merge=binary linguist-language=YAML linguist-generated=true diff --git a/{{cookiecutter.project_name}}/.github/workflows/lint.yaml b/{{cookiecutter.project_name}}/.github/workflows/lint.yaml index db9a7d5..8bc33a7 100644 --- a/{{cookiecutter.project_name}}/.github/workflows/lint.yaml +++ b/{{cookiecutter.project_name}}/.github/workflows/lint.yaml @@ -19,9 +19,9 @@ jobs: with: filter: blob:none fetch-depth: 0 - - uses: prefix-dev/setup-pixi@v0.8.0 + - uses: prefix-dev/setup-pixi@v0.11.1 with: - pixi-version: v0.60.0 + pixi-version: latest cache: true frozen: true - name: Run pre-commit checks diff --git a/{{cookiecutter.project_name}}/.github/workflows/test.yaml b/{{cookiecutter.project_name}}/.github/workflows/test.yaml index 7485677..59283ef 100644 --- a/{{cookiecutter.project_name}}/.github/workflows/test.yaml +++ b/{{cookiecutter.project_name}}/.github/workflows/test.yaml @@ -22,9 +22,9 @@ jobs: with: filter: blob:none fetch-depth: 0 - - uses: prefix-dev/setup-pixi@v0.8.0 + - uses: prefix-dev/setup-pixi@v0.11.1 with: - pixi-version: v0.60.0 + pixi-version: latest cache: true frozen: true - name: Run tests