Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make cabal sdist work for crucible-cli{,-llvm} #1210

Merged
merged 2 commits into from
Jun 7, 2024

Conversation

RyanGlScott
Copy link
Contributor

  • Neither package's .cabal file contains a README.md file, so remove mention of this file name from the extra-doc-files.

  • crucible-cli.cabal uses double-star syntax (test-data/**/*.cbl) in its extra-source-files, which requires a cabal-version or 2.4 or greater. Make sure that crucible-cli.cabal properly declares this version dependency.

Fixes #1209.

* Neither package's `.cabal` file contains a `README.md` file, so remove
  mention of this file name from the `extra-doc-files`.

* `crucible-cli.cabal` uses double-star syntax (`test-data/**/*.cbl`) in its
  `extra-source-files`, which requires a `cabal-version` or `2.4` or greater.
  Make sure that `crucible-cli.cabal` properly declares this version
  dependency.

Fixes #1209.
Copy link
Contributor

@langston-barrett langston-barrett left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing this! I wonder if there's a way we could catch such mistakes in CI?

@RyanGlScott
Copy link
Contributor Author

I wonder if there's a way we could catch such mistakes in CI?

The most direct way would be to run cabal sdist on each package, which should be relatively cheap to do. Let me see how difficult it would be to add that to the current CI setup...

It is possible to misconfigure a package's `.cabal` file in a way that is not
easily detectable unless you try to bundle the package into a source
distribution (e.g., through the `cabal sdist` or `cabal install` commands).
These sorts of misconfigurations have snuck into the `crucible`-related
packages in the past (see #1209 for one such example).

To prevent these sorts of issues from happening in the future, we now run
`cabal sdist` on each package in the CI as a sanity check.
@RyanGlScott RyanGlScott merged commit 976a16e into master Jun 7, 2024
32 checks passed
@RyanGlScott RyanGlScott deleted the T1209-fix-cabal-sdist branch June 7, 2024 14:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Error: cabal: sdist of crucible-cli-0.1: invalid file glob, Cannot install crux-mir
2 participants