Comments (11)
And like issue #55, the real cause of this problem is the lack of upper bounds on HTTP-4000.0.7, not the presence of upper bounds on the current version of HTTP.
from http.
If you want to call that the real cause, that's fine. What's the real solution then?
from http.
I've fixed the mtl dep.
Is there anything more I can do about this general problem with the old versions in the HTTP package? Otherwise I guess the remaining issue is one for cabal/hackage, not HTTP.
Pinging @tibbe - do we understand why the version preference you added before isn't helping in this situation?
from http.
I filed a bug against cabal re the preference issue. I think it's due to a
misunderstanding of the desired behavior when the preference support was
implemented.
As for old http package version, you could release patched versions of old
http major releases. This would help a tiny bit as cabal has a soft
preference for newer version. However, today there exists no real mechanism
to fix build breakages due to omitting upper bound.
On May 8, 2014 8:55 AM, "Ganesh Sittampalam" [email protected]
wrote:
I've fixed the mtl dep.
Is there anything more I can do about this general problem with the old
versions in the HTTP package? Otherwise I guess the remaining issue is one
for cabal/hackage, not HTTP.Pinging @tibbe https://github.com/tibbe - do we understand why the
version preference you added before isn't helping in this situation?—
Reply to this email directly or view it on GitHubhttps://github.com//issues/64#issuecomment-42518631
.
from http.
@hsenag Thanks for getting the new version onto Hackage.
The reason the version preference doesn't work is documented here: haskell/cabal#1792. AFAICT, there are no plans to actually address that issue, which seems to mean that for the foreseeable future, every time a major version of an HTTP dependency is released, build plans will immediately start failing.
from http.
OK, thanks - sounds like it just needs someone to implement the idea in the thread, so if this continues to cause pain perhaps someone will do that.
I don't think I'm willing to be forever maintaining a 4000.0.7 branch of HTTP to keep up to date with the latest code in dependencies, and I don't really want people to be randomly ending up with that old version.
If I could retrospectively fix the upper bounds on hackage, that would be something that's worth the effort.
from http.
Changing version bounds after-the-fact is not currently supported by Hackage, and I think the reason is because it's unknown how that may cause breakage for others. But specifically adding stricter bounds seems like it's more likely to cause breakage with the current toolset, so I'd be cautious about moving ahead with that.
from http.
I guess if it is turned on then it would be because the toolset is thought to support it :-) If we'd had the stricter bounds all along the current situation would be much better.
from http.
After-the-fact updating of .cabal files (and thus bounds) on Hackage, was implemented by Duncan. Turns out that his implementation had a bug and he hasn't had time to fix it yet.
from http.
Btw, what's keeping us now from fixing up all old HTTP package version's known-to-be-wrong cabal meta-data?
(Fwiw, something similar was done for mtl
and template-haskell
as soon as after-the-fact updating of .cabal
files got enabled, as ancient mtl
/template-haskell
packages also didn't have upper bounds yet)
from http.
From my point of view,
(1) Figuring out the correct upper bounds for each release
(2) Deciding what I feel about the after-the-fact-editing, as it does seem a bit evil never mind, if it's in general use anyway and people think it works it's not worth worrying about :-)
from http.
Related Issues (20)
- Typo in documentation of Network.HTTP.getResponseCode
- Add warning for lack of HTTPS support HOT 6
- Commits missing on github? HOT 1
- Bump bounds on win32? HOT 3
- Support for network 2.8.x? HOT 5
- Extract Code that Creates http Headers and Body HOT 2
- findHeader is case-sensitive for custom headers HOT 2
- Support for GHC-9.0 HOT 5
- Upcoming breakage with transformers-0.6 / mtl-2.3 HOT 6
- Ik
- Compatibility with mtl-2.3 HOT 1
- Better error message when HTTP_PROXY is down.
- cabal install gets stuck at Recovering connection to hackage.haskell.org HOT 2
- Custom instances of HStream impossible to write
- urlEncodeVars does not properly encode arrays HOT 1
- Not building with ghc 7.8 HOT 3
- Remove dep on old-time? HOT 4
- simpleHTTP raises exception on connection refused HOT 1
- Mac OSX 10.11.2 HTTP Error HOT 7
- GHC 8.0.1 support HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from http.