haskell / haskell/cabal

`cabal configure` shouldn't overwrite a `cabal.project.local` it hasn't written so

Open
#8,408 4 comments 2 reactions 0 assignees View on GitHub
cabal-install: cmd/configure
Dominant language
Haskell
Stars
1.7k
Forks
750
Avg merge
4d 3h
Merged PRs (30d)
28

Description

A `cabal.project.local` written or changed by the user should not be overwritten by `cabal configure`.

See `hpack` for a technical solution using hashes: When it creates a cabal-file, it also stores its hash. It then won't overwrite the cabal file if its hash is no longer correct. The user has to delete the cabal file then if they want it to be updated by `hpack`.

Contributor guide

Open the contributing guide

Research direction

Start at the `cabal configure` entry point and trace how it writes `cabal.project.local`. Compare that behavior with hpack's hash-based protection for generated files. Done means a user-written or user-changed `cabal.project.local` is preserved, while an unchanged file can still be updated.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.