NatLabRockies / NatLabRockies/COMPASS

Decide when/where to use `--frozen` and `--locked`

Open
#316 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

breaking
Dominant language
Python
Stars
17
Forks
4
Avg merge
2d 7h
Merged PRs (30d)
17

Description

In the PR #315 we experienced an interesing edge case. We previously bump the tag, thus the version, without touching pyproject.toml. Therefore, --locked couldn't identify any change, and consider the outdated version (pip --editable) just fine. Together the GA cache with --locked would satisfy the requirements and run an old version so we woul be completely blind on errors caused by the current PR, i.e. tests would run an old version and succeed.

It's not clear the best option here, because we do want to prevent updating pyproject.toml without updating pixi.lock, so the --locked help with that, but what is the most convenient solution to still use cache but also track if we are indeed testing the latest version?

One thought is to run tests without --locked or --freeze, but add one new step in the publish workflow to verify that pixi.lock is sync and validate with git tags ....

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review PR #315 and the workflows using the GA cache, --locked, and --freeze; inspect pyproject.toml and pixi.lock to understand the version-checking edge case. Done means an agreed workflow that does not test an outdated editable version while retaining lock-file validation, including any publish-workflow check against git tags.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, python
Domain
build-system, ci-cd
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.