Closed dmjio closed 8 years ago
It appears that this will indeed be problematic, since semigroups
was added to aeson
as of 0.11
and bloodhound
uses NonEmpty
:/
I'll have to figure something else out.
Unless you have an explicit reason to avoid versions 0.8 and 0.9 I don't see why we shouldn't allow them to be used (0.9 is currently on stackage)
Not avoiding, just legwork or API incompatibility (via CPP) I'm not keen on. If you can find a workable solution (no guarantees I'll agree with you on workable) then it'll go forward.
My only thought would be using CPP
flags in the cabal file, and then #ifdef
'ing the NonEmpty
instances. I assume aeson-0.11
will be on stackage soon enough though.
then #ifdef'ing the NonEmpty instances.
Wouldn't that cause there to be a split in the API based on the CPP output?
I assume aeson-0.11 will be on stackage soon enough though.
Month or two? it's whenever LTS 6.0 hits, but it hasn't mattered since everyone vendors or extra-deps it. Not that I want it to be harder to use - but nobody's complained and I'm not breaking the API just to get the library in LTS sooner.
My strategy has been to throw the advance-copy version of whatever library into extra-deps and at the same time create a calendar event for a week later to check and see if that can be dropped. If not, kick the can down the road another week. Its great if you can use only things in LTS but something not being in LTS shouldn't completely prevent you from moving forward.
One thing worth considering though is that LTS does insist on a GHC version, so people on older versions of GHC are likely going to use extra-deps anyways becuase I don't think stackage makes a habit of backporting new developments to old LTSes that often. It seems like their opinion is to keep the Haskell community in sync with the cadence of GHC releases.
Since the latest
aeson
isn't on stackage yet, can we loosen the lower bounds of bloodhound to account for all packages>= 0.8 && < 12
, excluding the problematic0.10.0.0
Unless you have an explicit reason to avoid versions
0.8
and0.9
I don't see why we shouldn't allow them to be used (0.9
is currently on stackage)Or, would you want to put
bloodhound
on stackage ? :)