cannot add Database.HDBC.Sqlite3 to stack file

672 views Asked by At

I am trying to implement the database using both libs HDBC and HDBC-sqlite3, while I am getting error for adding HDBC-Sqlie3 and I have tried the below :

  • HDBC-Sqlite3
  • HDBC-Sqlite3 -any
  • HDBC-Sqlite3 >= 2.3.3.0 && < 2.3.3.1
  • HDBC-Sqlite3 >= 2.3.3.0

and none of the above works and getting the error, when try the - any I got the following error :

In the dependencies for blog-post-0.1.0.0:
HDBC-Sqlite3 must match -any, but the stack configuration has no specified version

edit :

stack.yaml file

cabal file

1

There are 1 answers

5
Jogger On BEST ANSWER

Your main error was the uppercase S in HDBC-sqlite3!

This should be the library section of your cabal file

library
  hs-source-dirs:      src
  exposed-modules:     Lib
  build-depends:       base >= 4.7 && < 5
                     , parsec >= 3.1.11 && < 4
                     , servant
                     , servant-client
                     , servant-server
                     , aeson >= 1.1
                     , mtl
                     , HDBC >=2.4 && <3.0
                     , HDBC-sqlite3 >= 2.3.3.0

and this should be the extra-deps section of your stack.yaml file:

# Dependency packages to be pulled from upstream that are not in the resolver
# (e.g., acme-missiles-0.3)
extra-deps:
- HDBC-sqlite3-2.3.3.0

You must add the package HDBC-sqlite3-2.3.3.0 to the extra-deps section of the stack.yaml file because it is missing in the set of packages of Stackage LTS-9.9.