[Hackage] #284: Cannot upload packages that require specific
cabal versions
Hackage
trac at galois.com
Mon Jun 9 16:19:30 EDT 2008
#284: Cannot upload packages that require specific cabal versions
--------------------------------+-------------------------------------------
Reporter: guest | Owner: duncan
Type: defect | Status: assigned
Priority: normal | Milestone:
Component: hackageDB website | Version:
Severity: normal | Resolution:
Keywords: | Difficulty: normal
Ghcversion: 6.8.2 | Platform:
--------------------------------+-------------------------------------------
Changes (by duncan):
* status: new => assigned
* owner: => duncan
Comment:
As it happens in this particular case you're ok. It does actually work
with Cabal-1.3.12.
In the general case this issue is this: we want to avoid people uploading
packages that require a version of Cabal greater than the one that hackage
itself is using because we could not reliably handle such packages. The
difficulty is in implementing that test. The cabal-version is almost an
opaque version predicate, it can have arbitrary unions and intersections
of version ranges. So testing if it requires later than a particular
version is tricky. It's easy to check if it allows the current version
that is used by hackage, so that is what we do at the moment. I accept
it's not right for packages that use a custom Setup.hs and that would fail
to compile with some future version of the Cabal library.
At the moment though we're ok because the Cabal-1.4 series should be
compatible with 1.2 for all existing Setup.hs scripts. We'll need to fix
this at some point however. Probably the solution is to be slightly
conservative, so if the current version is not in the version range and
does not match a very simple version range, like `>= x && < y` then we'd
keep the current behavior.
--
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/284#comment:1>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects
More information about the cabal-devel
mailing list