GithubHelp home page GithubHelp logo

Comments (2)

andreasabel avatar andreasabel commented on August 24, 2024 2

Oh, my apologies, my bad. I did not notice that the testsuite does not depend on map-syntax the library.
Of course, the new check is absolutely right about the complaint!

from cabal.

ffaf1 avatar ffaf1 commented on August 24, 2024 1

This is because build-depends for Testsuite does not import map-syntax (i.e. the library). Instead adding src to hs-source-dirs/, alongside with test/.

https://github.com/andreasabel/map-syntax/blob/1ca83570980dd3a3b7c114c1ce55af307b4babe5/map-syntax.cabal#L63-L70

As far as cabal is concerned, those are two separate entities.


I think it violates the semantics of bounds for testsuites: they should be inherited from the library.

There is no indication the testsuite is testing a specific library.
Adding a default inheritance in the age of multi-libraries for cabal leads to the question: β€œWhat library?”.

I am inclined to say asking the user to add a build-depends: my-library or missing that a bound is correct. Does this make sense?


How to solve this for map-syntax?

  • principled solution: add a map-syntax-internal library, expose everything in there; import it in Testsuite, import and re-export what appropriate in main library.
  • two-lines solution: in Testsuite import map-syntax, axe Data.Map.Syntax from other-modules.

from cabal.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.