Add support for downgrade and upgrade of packages with different heuristics
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 307
- Forks
- 30
- PR merge metrics
- No merged PRs in 30d
Description
Currently luet upgrade upgrades a system to the latest available packages, not taking care of downgrades of any sort. E.g. if a package is downgraded from a repository, the client will refuse to downgrade to that version, but will prefer the local installed one.
The idea is to implement a command like luet upgrade --purge/--sync for:
-
permit downgrade of packages related to a removed repository (example: foo-1.0@removed-repo and foo-0.2.0@active-repo)
-
permit downgrade of packages no more available from a specific repository for an error server side
-
permit to upgrade of packages with the same version but with different build date (an option could be
--sync-by-date)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the luet upgrade command and trace how installed and repository package versions are selected, including the proposed --purge/--sync and --sync-by-date heuristics. Reproduce the listed repository-removal and same-version/different-build-date cases, then verify that each requested downgrade or upgrade behavior is covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 32/100