[Haskell-cafe] Curious why "cabal upgrade parsec" not installing latest version

Thomas DuBuisson thomas.dubuisson at gmail.com
Wed Sep 15 23:00:33 EDT 2010


Parsec 3 is unloved by much of the community because it's evidently
slower than parsec 2.  For this reason the community remains divided
over the two versions and cabal has special "preferred versions" of
particular packages.  To force installation of parsec 3, over the
"preferred" parsec 2, you simply execute "cabal install 'parsec >= 3'"

Cheers,
Thomas

On Wed, Sep 15, 2010 at 7:47 PM, Peter Schmitz <ps.haskell at gmail.com> wrote:
> Not that I'm having any problem with parsec 2.1.0.1, but I guess I
> would like to install the latest (3.1.0), unless there is a reason
> not to.
>
> I can't seem to get Cabal to do so; thanks in advance for any help.
>
> I don't understand part of the output from "cabal install --dry-run
> --reinstall -v parsec" at the end below, which includes:
> "selecting parsec-2.1.0.1 (hackage) and discarding parsec-2.0,
> 2.1.0.0, 3.0.0, 3.0.1 and 3.1.0".
>
> (http://hackage.haskell.org/package/parsec seems to point to 3.1.0.)
>
>
> Under Windows XP:
>
>> H:\proc\dev\cmd>cabal update
>> Downloading the latest package list from hackage.haskell.org
>>
>> H:\proc\dev\cmd>cabal info parsec
>> * parsec           (library)
>>     Synopsis:      Monadic parser combinators
>>     Latest version available: 3.1.0
>>     Latest version installed: 2.1.0.1
>>     Homepage:      http://www.cs.uu.nl/~daan/parsec.html
>>     Bug reports:   [ Not specified ]
>>     Description:   Parsec is designed from scratch as an industrial-strength
>>                    parser library. It is simple, safe, well documented (on the
>>                    package homepage), has extensive libraries and good error
>>                    messages, and is also fast. It is defined as a monad
>>                    transformer that can be stacked on arbitrary monads, and it
>>                    is also parametric in the input stream type.
>>     Category:      Parsing
>>     License:       BSD3
>>     Author:        Daan Leijen <daan at microsoft.com>, Paolo Martini <paolo at nemail.it>
>>     Maintainer:    Derek Elkins <derek.a.elkins at gmail.com>
>>     Source repo:   [ Not specified ]
>>     Flags:         base4
>>     Dependencies:  mtl -any, bytestring -any, base >=4 && <5, syb -any,
>>                    base >=3.0.3 && <4
>>     Documentation: [ Not installed ]
>>     Cached:        No
>>     Modules:
>>         Text.ParserCombinators.Parsec
>>         Text.ParserCombinators.Parsec.Char
>>         Text.ParserCombinators.Parsec.Combinator
>>         Text.ParserCombinators.Parsec.Error
>>         Text.ParserCombinators.Parsec.Expr
>>         Text.ParserCombinators.Parsec.Language
>>         Text.ParserCombinators.Parsec.Perm
>>         Text.ParserCombinators.Parsec.Pos
>>         Text.ParserCombinators.Parsec.Prim
>>         Text.ParserCombinators.Parsec.Token
>>
>>
>> H:\proc\dev\cmd>cabal upgrade parsec
>> Resolving dependencies...
>> No packages to be installed. All the requested packages are already installed.
>> If you want to reinstall anyway then use the --reinstall flag.
>>
>>
>> H:\proc\dev\cmd>cabal install  --dry-run  --reinstall  parsec
>> Resolving dependencies...
>> In order, the following would be installed (use -v for more details):
>> parsec-2.1.0.1
>>
>>
>> H:\proc\dev\cmd>cabal install  --dry-run  --reinstall -v  parsec
>> H:\proc\tools\Haskell Platform\2010.1.0.0\bin\ghc.exe --numeric-version
>> looking for package tool: ghc-pkg near compiler in
>> H:\proc\tools\Haskell Platform\2010.1.0.0\bin
>> found package tool in
>> H:\proc\tools\Haskell Platform\2010.1.0.0\bin\ghc-pkg.exe
>> H:\proc\tools\Haskell Platform\2010.1.0.0\bin\ghc-pkg.exe --version
>> H:\proc\tools\Haskell Platform\2010.1.0.0\bin\ghc.exe --supported-languages
>> Reading installed packages...
>> H:\proc\tools\Haskell Platform\2010.1.0.0\bin\ghc-pkg.exe dump --global
>> H:\proc\tools\Haskell Platform\2010.1.0.0\bin\ghc-pkg.exe dump --user
>> Reading available packages...
>> Resolving dependencies...
>> selecting parsec-2.1.0.1 (hackage) and discarding parsec-2.0,
>> 2.1.0.0, 3.0.0, 3.0.1 and 3.1.0
>> selecting base-3.0.3.2 (installed) and 4.2.0.0 (installed) and discarding
>> syb-0.1.0.0, 0.1.0.1, 0.1.0.2, 0.1.0.3, 0.2 and 0.2.1
>> selecting ffi-1.0 (installed)
>> selecting ghc-prim-0.2.0.0 (installed)
>> selecting integer-gmp-0.2.0.0 (installed)
>> selecting rts-1.0 (installed)
>> selecting syb-0.1.0.2 (installed)
>> In order, the following would be installed:
>> parsec-2.1.0.1 (reinstall) changes: base-4.2.0.0 -> 3.0.3.2
>>
>> H:\proc\dev\cmd>
>
> --
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>


More information about the Haskell-Cafe mailing list