Skip to content

[nix-local-build] Recompilation avoidance ABA problem #3179

@ezyang

Description

@ezyang

Steps to reproduce:

  1. Build a project with new-build
  2. Modify a file in the project
  3. Trigger a recompilation, but before GHC is done executing, C^C it
  4. Revert the modified file to its old version
  5. Trigger a recompilation

Expected result: Cabal recompiles

Actual result: Cabal reports that there is nothing to do.

Ostensibly, the problem is that before we start a recompile, we need to invalidate the old cached entry until the recompile finishes, so that we can handle an interrupt.

Metadata

Metadata

Assignees

No one assigned

    Labels

    cabal-install: v2-build systemAffecting v2-build and related commands that use v2-architecture (aka "nix local builds").old-milestone: ⊥Moved from https://github.com/haskell/cabal/milestone/5type: bug

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions