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

Add CI check to ensure that cabal.project and stack.yaml stay in sync #66

Open
intricate opened this issue Sep 12, 2019 · 2 comments
Open
Assignees

Comments

@intricate
Copy link
Contributor

We might also consider adding a CI check to ensure that cabal.project and stack.yaml stay in sync. If people are building with cabal (I am now using it more than stack since it seems to screw up less frequently), it'd be good to support both. We can use cardano-repo-tool to do that.

Originally posted by @mhuesch in #65 (comment)

@mhuesch
Copy link
Contributor

mhuesch commented Sep 12, 2019

👍

@mark-stopka
Copy link

I can vouch for stack support, I am having great difficulties building cardano-node-1.13.0 with stack... The provided snapshot.yaml seems outdated.

When I try stack init --force --resolver lts-15.15 over cardano-node I get following set of errors:

Looking for .cabal or package.yaml files to use to init the project.
Using cabal packages:
- cardano-api/
- cardano-cli/
- cardano-config/
- cardano-node/

Selected resolver: lts-15.15
Resolver 'lts-15.15' does not have all the packages to match your requirements.
    base58-bytestring not found
        - cardano-cli requires -any
    canonical-json not found
        - cardano-cli requires >=0.6 && <0.7
        - cardano-config requires >=0.6 && <0.7
    cardano-binary not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
    cardano-crypto not found
        - cardano-cli requires -any
    cardano-crypto-class not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
    cardano-crypto-test not found
        - cardano-api requires -any
        - cardano-config requires -any
    cardano-crypto-wrapper not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
    cardano-ledger not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    cardano-ledger-test not found
        - cardano-api requires -any
    cardano-prelude not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    cardano-prelude-test not found
        - cardano-config requires -any
    cardano-shell not found
        - cardano-api requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    cardano-slotting not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    contra-tracer not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    io-sim-classes not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-node requires -any
    iohk-monitoring not found
        - cardano-api requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    lobemo-backend-aggregation not found
        - cardano-config requires -any
    lobemo-backend-ekg not found
        - cardano-config requires -any
    lobemo-backend-monitoring not found
        - cardano-config requires -any
    lobemo-backend-trace-forwarder not found
        - cardano-config requires -any
    network-mux not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    ouroboros-consensus not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    ouroboros-consensus-byron not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    ouroboros-consensus-cardano not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    ouroboros-consensus-mock not found
        - cardano-config requires -any
    ouroboros-consensus-shelley not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    ouroboros-network-framework not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    shelley-spec-ledger not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    shelley-spec-ledger-test not found
        - cardano-config requires -any
    text-ansi not found
        - cardano-cli requires -any
    tracer-transformers not found
        - cardano-node requires -any
    transformers-except not found
        - cardano-api requires -any
        - cardano-cli requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    typed-protocols not found
        - cardano-api requires -any
        - cardano-config requires -any
        - cardano-node requires -any
    typed-protocols-examples not found
        - cardano-api requires -any
    Using package flags:
        - cardano-cli: FlagName "unexpected_thunks" = False
        - cardano-config: FlagName "systemd" = False
        - cardano-node: FlagName "systemd" = True, FlagName "unexpected_thunks" = False

This may be resolved by:
    - Using '--omit-packages' to exclude mismatching package(s).
    - Using '--resolver' to specify a matching snapshot/resolver

These would be extra-deps present in Hackage, but missing in Stackage I assume... I will investigate more, but there seem to be no easy way to inject extra-deps without awful regexp magic...

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

No branches or pull requests

3 participants