mgsloan / store

Fast binary serialization in Haskell
MIT License
109 stars 36 forks source link

Remove testing dependencies from library dependencies #59

Open agrafix opened 8 years ago

agrafix commented 8 years ago

Thanks for this awesome library!

Are there any plans to remove hspec and friends from the library dependencies?

Blaisorblade commented 8 years ago

Yes please @mgsloan. Even installing stack requires hspec and related libs. And any client of store has to be built with the same version hspec as store, possibly requiring more recompilation for cabal-install users.

However, this is not so easy because of the use in Data.Store.TH, but that arguably belongs to a smaller store-hspec package. That's probably used in its own testsuite though, making the split a bit harder? https://github.com/fpco/store/blob/ad2af60f1f65132c2a5b069f938ca25423a4b3e8/src/Data/Store/TH.hs

mgsloan commented 8 years ago

I think it makes sense to split off a store-test package, which does the following:

1) Defines utilities for conveniently defining tests for store instances 2) Has the store test-suite

sol commented 7 years ago

@mgsloan As a first step, wouldn't it make sense to just move the test dependencies from top-level to the test suite (haven't looked at it).

sol commented 7 years ago

it also provides utilities for checking them via smallcheck and hspec

@mgsloan disregard what I said before, I just read your blog post. Makes sense now.

mgsloan commented 7 years ago

Cool! Though, I am willing to revisit this if it helps make store more useful to people.

Could split things out into a store-test package, as described above.