Skip to content

Loading…

Upstream changes #4

Open
wants to merge 84 commits into from
@ghost
  • base >= 4
  • old-time -> time
merijn and others added some commits
@merijn merijn Fixed configure script location detection of autoconf.
The autoconf generated configure script tries to automatically determine the
location of the configure script. If the name (argv[0]) of the configure script
does not include a path separator autoconf will *first* scan the path for a
file named "configure" before defaulting to the current directory.

Cabal previously called configure by doing "sh configure" this will result in
it finding any files named "configure" in the path and using the location of
that file as the basedir to look for (amongst other things) C sources. The
result is that any C sources in the unpacked cabal directories are not found,
resulting in configure/build failures for all such packages (e.g. unix-time)
and all packages depending on those.

Changing cabal to call "sh ./configure" will avoid this behaviour, the presence
of a path separator causes autoconf to default to checking the current
directory *first*.
86c5462
@tuncer tuncer Update ZLIB_VER in bootstrap.sh for ghc-7.6 compatibility 0a98e4c
@tibbe tibbe Merge branch 'cabal-1.16' 68d403c
@hvr hvr Make compatible with `network-2.4` API
The specific API change in `relativeTo` this changeset
compensates for has been introduced in

 haskell/network@4a3fdef
39c31b0
@tibbe tibbe Merge pull request #1044 from hvr/network24
Make compatible with `network-2.4` API
e9c9b7a
@tibbe tibbe Merge branch 'cabal-1.16' 5166dbc
@tibbe tibbe Use standard function launch process in test code ff1c272
@dcoutts dcoutts Fall back to looking on the path for ghc-related tools
This fixes things for situations such as where hsc2hs is in /usr/bin
but ghc is in /usr/local/bin, where previously we'd get:
  cabal: The program hsc2hs is required but it could not be found
0e0fa75
@tibbe tibbe Make test failure reason more clear in output 2c842a0
@tibbe tibbe More test output tweaks 5aadbbb
@tibbe tibbe Fix test output of even more tests c812e17
@tibbe tibbe Give more info when unregister fails in a test 363165b
@igfoo igfoo Add a policy for which versions of GHC Cabal supports being built by 22228cf
@igfoo igfoo Supported GHC policy means that we always have base >= 4 75f9254
@igfoo igfoo Remove some CPPery for old, no-longer-supported versions of GHC 15fd935
@igfoo igfoo Merge branch 'master' of github.com:haskell/cabal 1d8ca45
@igfoo igfoo Use the time package rather than old-time e1d0d85
@dcoutts dcoutts On install, update the .cabal file with the one from the index
This allows us to make minor changes to packages after they have been
released, without changing the package .tar.gz file. We already keep
the .cabal file outsite the package in the index and use it for
dependency planning. This already lets us do fixes such as making
dependency constraints tighter. Currently we cannot make dep
constraints more relaxed however, since the original .cabal file is
the one used when we get to the actual configure step.

So with this change, we now use the updated .cabal file for the
configure and build too. So there's more fixes we can do post-release.
In particlar, in combination with easier editing on hackage, this
should help us address the problems around the PVP and open or closed
version constraints. It should allow a system of conservative upper
bounds, but allow editing them when new versions of deps are released
and we find that they happen to work fine.
b92cbb0
@dcoutts dcoutts Extend the unpack command for the .cabal file updating
By default, "cabal unpack blah" will also update the .cabal file with
the one from the index, so it's consistent with what you get via
cabal install. Also added a --pristine flag so you can get the original
tarball without the updated .cabal file.
b7565f9
@dcoutts dcoutts On install, update the .cabal file with the one from the index
(patch manually merged into the cabal-1.16 branch)

This allows us to make minor changes to packages after they have been
released, without changing the package .tar.gz file. We already keep
the .cabal file outsite the package in the index and use it for
dependency planning. This already lets us do fixes such as making
dependency constraints tighter. Currently we cannot make dep
constraints more relaxed however, since the original .cabal file is
the one used when we get to the actual configure step.

So with this change, we now use the updated .cabal file for the
configure and build too. So there's more fixes we can do post-release.
In particlar, in combination with easier editing on hackage, this
should help us address the problems around the PVP and open or closed
version constraints. It should allow a system of conservative upper
bounds, but allow editing them when new versions of deps are released
and we find that they happen to work fine.
22d3772
@dcoutts dcoutts Extend the unpack command for the .cabal file updating
By default, "cabal unpack blah" will also update the .cabal file with
the one from the index, so it's consistent with what you get via
cabal install. Also added a --pristine flag so you can get the original
tarball without the updated .cabal file.
68d7243
@tibbe tibbe Bump Cabal version number to 1.16.0.1 ebc9124
@tibbe tibbe Bump cabal-install version number to 1.16.0 5ea2203
@igfoo igfoo Always use either -static or -dynamic when compiling with GHC
-static is no longer necessarily the default
8c46dbf
@igfoo igfoo Merge branch 'master' of github.com:haskell/cabal e9a826a
@tibbe tibbe Update bug tracker location 7d6b527
@tibbe tibbe Merge with cabal-1.16 9c7314a
@dcoutts dcoutts Fix building cabal-install with ghc-6.12 and older
Fall back to using serial rather job control for base < 4.3.
So this means if you build caba-install with ghc-6.12 or older
then the -j flag will do nothing, it'll still run serially.

BTW, if anyone wants to build cabal-install using a Haskell impl
with no support for concurrency then they can use the same trick.
(The serial and parallel job control impls deliberately share the
same interface.)
ce2fc30
@igfoo igfoo Enable shared lib by default if using a compiler that does dynamic by…
… default
1f51441
@igfoo igfoo Merge branch 'master' of github.com:haskell/cabal 65fe28f
@tuncer tuncer Fix build as suggested by Ian Lynagh 3d39103
@igfoo igfoo Conditionally turn on dynamic-executable by default
If the compiler builds dynamic things by default, then so does Cabal.
09f9c47
@tibbe tibbe Test suite: make the location of ghc and ghc-pkg configurable ba91367
@tibbe tibbe Test suite: derive name of ghc-pkg from GHC 4fdf629
@tibbe tibbe Test suite: pass the configured GHC version to more commands c4f1ad3
@tibbe tibbe Test suite: fix compilation error 272472b
@tibbe tibbe Test suite: don't pass -w to Setup install, as it doesn't support it 9e6baf3
@tibbe tibbe Test suite: more helpful error messages when dynamic way test fails d81b805
@igfoo igfoo Merge branch 'master' of github.com:haskell/cabal 31c3f40
@dcoutts dcoutts Disable setting the jobs: $nprocs line in default ~/.cabal config
It breaks for fresh installs with users who have Cabal-1.6.0
rather than Cabal-1.6.0.1, ie users of ghc-7.6.1.
aa7d98f
@asr asr Fixed warnings on the generated Paths module.
The warnings are generated by the flag '-fwarn-missing-import-lists'.
df6fe40
@tibbe tibbe Bump version number to 1.17.0
Fixes #1055.
76d3d8f
@tibbe tibbe Fix compilation error 41e9d1e
@igfoo igfoo Build the right libs for Template Haskell
If GHC does dynamic by default, then it is the shared library that TH
needs, not the vanilla one.
f6d647e
@igfoo igfoo Merge branch 'master' of github.com:haskell/cabal 4dff0e4
@23Skidoo 23Skidoo Formatting. d797051
@23Skidoo 23Skidoo Rename 'getIndexFilePath' to 'tryGetIndexFilePath'. 6526f94
@23Skidoo 23Skidoo Add a dummy 'sandbox-init' command. f2a0ab9
@tibbe tibbe Bump network dependency in bootstrap.sh to 2.3.1.1
network-2.3.1.0 does not build on Windows with GHC 7.6.1.
5485579
@tibbe tibbe Merge branch 'cabal-1.16' of https://github.com/asr/cabal into cabal-…
…1.16
dcf5e03
@tibbe tibbe Bump Cabal version number to 1.16.0.2 2afcbb5
@tibbe tibbe Bump cabal-install version number to 1.16.0.1 e99e308
@tibbe tibbe Change bootstrap.sh to require Cabal >= 1.16 && < 1.18 6c5d844
@igfoo igfoo When dynamic-by-default, build the dynamic library first
This is particularly important when TH is being used, as we need the
dynamic library built before the other ways try to do TH.
26cbe6b
@snoyberg snoyberg Fix installing from custom folder on Linux (#1058) 48082b9
@23Skidoo 23Skidoo Add a dummy 'sandbox-delete' command. 0c8d697
@23Skidoo 23Skidoo Actually implement 'sandbox-delete'. 8a0839a
@23Skidoo 23Skidoo Rename the default package environment file. d1d1721
@23Skidoo 23Skidoo Comments. 04cf474
@23Skidoo 23Skidoo Support the optional 'cabal.config' package environment file. eb00439
@23Skidoo 23Skidoo Remove an unnecessary import. 5e2152c
@23Skidoo 23Skidoo Actually implement the 'sandbox-init' command.
Additionally, change the search location for the package environment file to the
project directory instead of the sandbox directory.
e3e09b4
@23Skidoo 23Skidoo Add a TODO. af72dff
@23Skidoo 23Skidoo Rename a variable. a600f66
@23Skidoo 23Skidoo Extend a comment. 8abadca
@23Skidoo 23Skidoo Refactor the code to make config priority clearer. d41e646
@23Skidoo 23Skidoo Improve the message printed by sandbox-delete. 086f075
@tibbe tibbe Merge branch 'cabal-sandbox' of https://github.com/23Skidoo/cabal 0f82cb9
@23Skidoo 23Skidoo Use 'putStr' for printing last 10 lines of the build log.
Fixes #1070.
48536df
@hvr hvr Replace fragile GHC manual section references by urls
This replaces the GHC/Hugs manual references in the Haddock comments
for the `Language.Haskell.Extension.Extension` enum constructors, as
in

```haskell
  -- | [GHC &#xa7; 7.6.3.4] Allow overlapping class instances,
  -- provided there is a unique most specific instance for each use.
  OverlappingInstances
```

which urls pointing directly to the section containing further
documentation (assuming the urls are more immune to section
reorderings), e.g.:

```haskell
  -- | Allow overlapping class instances, provided there is a unique
  -- most specific instance for each use.
  --
  -- * <http://www.haskell.org/ghc/docs/latest/html/users_guide/type-class-extensions.html#instance-overlap>
     OverlappingInstances
```
0457137
@dcoutts dcoutts Merge pull request #1072 from hvr/lang-ext
Replace fragile GHC manual section references by urls
7b0c2ce
@dcoutts dcoutts Merge pull request #1021 from merijn/master
Fix for autoconf misbehaviour caused by cabal
da984e1
@hvr hvr Add a couple of new language extension flags known by GHC 7.[46]
Specifically,

 - `CApiFFI`
 - `DataKinds`
 - `DefaultSignatures`
 - `DeriveGeneric`
 - `InstanceSigs`
 - `InterruptibleFFI`
 - `LambdaCase`
 - `MonadComprehensions`
 - `MultiWayIf`
 - `ParallelArrays`
 - `PolyKinds`
 - `TraditionalRecordSyntax`
 - `Unsafe`

This addresses #1050
4faa685
@dcoutts dcoutts Merge pull request #1073 from hvr/lang-exts-ghc76
Add a couple of new language extension flags known by GHC 7.[46]
13850ea
@23Skidoo 23Skidoo Force a recompile when updating the setup exe cache.
See the discussion in #1076.
dd4c118
@23Skidoo 23Skidoo Try harder to pick the correct version in cabalLibVersionToUse.
See the discussion in #1076.
a17491d
@tibbe tibbe Merge branch 'cached-cabal-version' of https://github.com/23Skidoo/cabal
0ad4fe7
@tibbe tibbe Have bootstrap.sh use Cabal-1.16.0.2 e1912a3
@tibbe tibbe Merge with cabal-1.16 5c0fa59
@kolmodin kolmodin cabal-install: put the Paths_cabal_install.hs and Paths_Cabal.hs in p…
…lace as expected
6704b1c
@kolmodin kolmodin Fix error messages with "cabal update" -> "hackport update" Same fix …
…as marty.rosenberg@gmail.com once did for cabal-install-0.8.2, which we now are replacing.
905e45f
@trofi trofi disable hackage's preferred-versions (as we don't use it when merge e…
…builds)

hackage.haskell.org/00-index.tar contains preferred-versions for some interesting
packages. For now it's 'base-3'.

Otherwise depends generated by hackport differ from ones pulled by ./Setup.hs.
31b4048
@trofi trofi cabal/cabal-install: renamed D.C.Exception -> D.C.ExceptionCI to avoi…
…d clash with Cabal's one

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
8a3d1f6
@Heather Heather repair IndexUtils with upstream changes 4aa2ece
@Heather
Gentoo Haskell Community User member

close it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Aug 30, 2012
  1. @merijn

    Fixed configure script location detection of autoconf.

    merijn committed
    The autoconf generated configure script tries to automatically determine the
    location of the configure script. If the name (argv[0]) of the configure script
    does not include a path separator autoconf will *first* scan the path for a
    file named "configure" before defaulting to the current directory.
    
    Cabal previously called configure by doing "sh configure" this will result in
    it finding any files named "configure" in the path and using the location of
    that file as the basedir to look for (amongst other things) C sources. The
    result is that any C sources in the unpacked cabal directories are not found,
    resulting in configure/build failures for all such packages (e.g. unix-time)
    and all packages depending on those.
    
    Changing cabal to call "sh ./configure" will avoid this behaviour, the presence
    of a path separator causes autoconf to default to checking the current
    directory *first*.
Commits on Sep 15, 2012
  1. @tuncer
  2. @tibbe

    Merge branch 'cabal-1.16'

    tibbe committed
Commits on Sep 19, 2012
  1. @hvr

    Make compatible with `network-2.4` API

    hvr committed
    The specific API change in `relativeTo` this changeset
    compensates for has been introduced in
    
     haskell/network@4a3fdef
  2. @tibbe

    Merge pull request #1044 from hvr/network24

    tibbe committed
    Make compatible with `network-2.4` API
Commits on Sep 20, 2012
  1. @tibbe

    Merge branch 'cabal-1.16'

    tibbe committed
  2. @tibbe
Commits on Sep 25, 2012
  1. @dcoutts

    Fall back to looking on the path for ghc-related tools

    dcoutts committed
    This fixes things for situations such as where hsc2hs is in /usr/bin
    but ghc is in /usr/local/bin, where previously we'd get:
      cabal: The program hsc2hs is required but it could not be found
Commits on Sep 26, 2012
  1. @tibbe
  2. @tibbe

    More test output tweaks

    tibbe committed
  3. @tibbe

    Fix test output of even more tests

    tibbe committed
  4. @tibbe
  5. @igfoo
  6. @igfoo
  7. @igfoo
  8. @igfoo
  9. @igfoo
Commits on Sep 29, 2012
  1. @dcoutts

    On install, update the .cabal file with the one from the index

    dcoutts committed
    This allows us to make minor changes to packages after they have been
    released, without changing the package .tar.gz file. We already keep
    the .cabal file outsite the package in the index and use it for
    dependency planning. This already lets us do fixes such as making
    dependency constraints tighter. Currently we cannot make dep
    constraints more relaxed however, since the original .cabal file is
    the one used when we get to the actual configure step.
    
    So with this change, we now use the updated .cabal file for the
    configure and build too. So there's more fixes we can do post-release.
    In particlar, in combination with easier editing on hackage, this
    should help us address the problems around the PVP and open or closed
    version constraints. It should allow a system of conservative upper
    bounds, but allow editing them when new versions of deps are released
    and we find that they happen to work fine.
  2. @dcoutts

    Extend the unpack command for the .cabal file updating

    dcoutts committed
    By default, "cabal unpack blah" will also update the .cabal file with
    the one from the index, so it's consistent with what you get via
    cabal install. Also added a --pristine flag so you can get the original
    tarball without the updated .cabal file.
  3. @dcoutts

    On install, update the .cabal file with the one from the index

    dcoutts committed
    (patch manually merged into the cabal-1.16 branch)
    
    This allows us to make minor changes to packages after they have been
    released, without changing the package .tar.gz file. We already keep
    the .cabal file outsite the package in the index and use it for
    dependency planning. This already lets us do fixes such as making
    dependency constraints tighter. Currently we cannot make dep
    constraints more relaxed however, since the original .cabal file is
    the one used when we get to the actual configure step.
    
    So with this change, we now use the updated .cabal file for the
    configure and build too. So there's more fixes we can do post-release.
    In particlar, in combination with easier editing on hackage, this
    should help us address the problems around the PVP and open or closed
    version constraints. It should allow a system of conservative upper
    bounds, but allow editing them when new versions of deps are released
    and we find that they happen to work fine.
  4. @dcoutts

    Extend the unpack command for the .cabal file updating

    dcoutts committed
    By default, "cabal unpack blah" will also update the .cabal file with
    the one from the index, so it's consistent with what you get via
    cabal install. Also added a --pristine flag so you can get the original
    tarball without the updated .cabal file.
Commits on Oct 2, 2012
  1. @tibbe
  2. @tibbe
Commits on Oct 3, 2012
  1. @igfoo

    Always use either -static or -dynamic when compiling with GHC

    igfoo committed
    -static is no longer necessarily the default
  2. @igfoo
  3. @tibbe

    Update bug tracker location

    tibbe committed
  4. @tibbe

    Merge with cabal-1.16

    tibbe committed
  5. @dcoutts

    Fix building cabal-install with ghc-6.12 and older

    dcoutts committed
    Fall back to using serial rather job control for base < 4.3.
    So this means if you build caba-install with ghc-6.12 or older
    then the -j flag will do nothing, it'll still run serially.
    
    BTW, if anyone wants to build cabal-install using a Haskell impl
    with no support for concurrency then they can use the same trick.
    (The serial and parallel job control impls deliberately share the
    same interface.)
Commits on Oct 4, 2012
  1. @igfoo
  2. @igfoo
  3. @tuncer
  4. @igfoo

    Conditionally turn on dynamic-executable by default

    igfoo committed
    If the compiler builds dynamic things by default, then so does Cabal.
  5. @tibbe
  6. @tibbe
  7. @tibbe
  8. @tibbe
  9. @tibbe
  10. @tibbe
Commits on Oct 5, 2012
  1. @igfoo
  2. @dcoutts

    Disable setting the jobs: $nprocs line in default ~/.cabal config

    dcoutts committed
    It breaks for fresh installs with users who have Cabal-1.6.0
    rather than Cabal-1.6.0.1, ie users of ghc-7.6.1.
  3. @asr

    Fixed warnings on the generated Paths module.

    asr committed
    The warnings are generated by the flag '-fwarn-missing-import-lists'.
  4. @tibbe

    Bump version number to 1.17.0

    tibbe committed
    Fixes #1055.
Commits on Oct 7, 2012
  1. @tibbe

    Fix compilation error

    tibbe committed
Commits on Oct 9, 2012
  1. @igfoo

    Build the right libs for Template Haskell

    igfoo committed
    If GHC does dynamic by default, then it is the shared library that TH
    needs, not the vanilla one.
  2. @igfoo
Commits on Oct 10, 2012
  1. @23Skidoo

    Formatting.

    23Skidoo committed
  2. @23Skidoo
  3. @23Skidoo
Commits on Oct 11, 2012
  1. @tibbe

    Bump network dependency in bootstrap.sh to 2.3.1.1

    tibbe committed
    network-2.3.1.0 does not build on Windows with GHC 7.6.1.
  2. @tibbe
  3. @tibbe
  4. @tibbe
  5. @tibbe
Commits on Oct 12, 2012
  1. @igfoo

    When dynamic-by-default, build the dynamic library first

    igfoo committed
    This is particularly important when TH is being used, as we need the
    dynamic library built before the other ways try to do TH.
Commits on Oct 13, 2012
  1. @snoyberg
Commits on Oct 14, 2012
  1. @23Skidoo
Commits on Oct 15, 2012
  1. @23Skidoo
  2. @23Skidoo
  3. @23Skidoo

    Comments.

    23Skidoo committed
  4. @23Skidoo
  5. @23Skidoo

    Remove an unnecessary import.

    23Skidoo committed
  6. @23Skidoo

    Actually implement the 'sandbox-init' command.

    23Skidoo committed
    Additionally, change the search location for the package environment file to the
    project directory instead of the sandbox directory.
  7. @23Skidoo

    Add a TODO.

    23Skidoo committed
  8. @23Skidoo

    Rename a variable.

    23Skidoo committed
  9. @23Skidoo

    Extend a comment.

    23Skidoo committed
  10. @23Skidoo
  11. @23Skidoo
Commits on Oct 16, 2012
  1. @tibbe
Commits on Oct 17, 2012
  1. @23Skidoo
Commits on Oct 18, 2012
  1. @hvr

    Replace fragile GHC manual section references by urls

    hvr committed
    This replaces the GHC/Hugs manual references in the Haddock comments
    for the `Language.Haskell.Extension.Extension` enum constructors, as
    in
    
    ```haskell
      -- | [GHC &#xa7; 7.6.3.4] Allow overlapping class instances,
      -- provided there is a unique most specific instance for each use.
      OverlappingInstances
    ```
    
    which urls pointing directly to the section containing further
    documentation (assuming the urls are more immune to section
    reorderings), e.g.:
    
    ```haskell
      -- | Allow overlapping class instances, provided there is a unique
      -- most specific instance for each use.
      --
      -- * <http://www.haskell.org/ghc/docs/latest/html/users_guide/type-class-extensions.html#instance-overlap>
         OverlappingInstances
    ```
  2. @dcoutts

    Merge pull request #1072 from hvr/lang-ext

    dcoutts committed
    Replace fragile GHC manual section references by urls
  3. @dcoutts

    Merge pull request #1021 from merijn/master

    dcoutts committed
    Fix for autoconf misbehaviour caused by cabal
Commits on Oct 19, 2012
  1. @hvr

    Add a couple of new language extension flags known by GHC 7.[46]

    hvr committed
    Specifically,
    
     - `CApiFFI`
     - `DataKinds`
     - `DefaultSignatures`
     - `DeriveGeneric`
     - `InstanceSigs`
     - `InterruptibleFFI`
     - `LambdaCase`
     - `MonadComprehensions`
     - `MultiWayIf`
     - `ParallelArrays`
     - `PolyKinds`
     - `TraditionalRecordSyntax`
     - `Unsafe`
    
    This addresses #1050
  2. @dcoutts

    Merge pull request #1073 from hvr/lang-exts-ghc76

    dcoutts committed
    Add a couple of new language extension flags known by GHC 7.[46]
Commits on Oct 23, 2012
  1. @23Skidoo

    Force a recompile when updating the setup exe cache.

    23Skidoo committed
    See the discussion in #1076.
  2. @23Skidoo

    Try harder to pick the correct version in cabalLibVersionToUse.

    23Skidoo committed
    See the discussion in #1076.
Commits on Oct 24, 2012
  1. @tibbe
  2. @tibbe
  3. @tibbe

    Merge with cabal-1.16

    tibbe committed
Commits on Oct 25, 2012
  1. @kolmodin @Heather
  2. @kolmodin @Heather

    Fix error messages with "cabal update" -> "hackport update" Same fix …

    kolmodin committed with Heather
    …as marty.rosenberg@gmail.com once did for cabal-install-0.8.2, which we now are replacing.
  3. @trofi @Heather

    disable hackage's preferred-versions (as we don't use it when merge e…

    trofi committed with Heather
    …builds)
    
    hackage.haskell.org/00-index.tar contains preferred-versions for some interesting
    packages. For now it's 'base-3'.
    
    Otherwise depends generated by hackport differ from ones pulled by ./Setup.hs.
  4. @trofi @Heather

    cabal/cabal-install: renamed D.C.Exception -> D.C.ExceptionCI to avoi…

    trofi committed with Heather
    …d clash with Cabal's one
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
  5. @Heather
Something went wrong with that request. Please try again.