Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump hackage version #435

Open
foxyseta opened this issue Oct 3, 2024 · 7 comments
Open

Bump hackage version #435

foxyseta opened this issue Oct 3, 2024 · 7 comments

Comments

@foxyseta
Copy link

foxyseta commented Oct 3, 2024

Would it be possible to make a new release on Hackage, please? My hoogle generate is still broken from #426, and the last available release is from January. I'd rather not clone and build from the git repository manually.

Sorry if this is a silly request.

@LaurentRDC
Copy link

Another reason to bump the hackage version: the most recent version only supports crypton-connection==0.3.2, which is rather restrictive

@hamishmack
Copy link

hamishmack commented Nov 4, 2024

It seems cabal is currently unable to build hoogle from hackage without allow-newer: hoogle:crypton-connection.

Without relaxing this constraint incompatible versions of data-default and data-default-class are picked in order to avoid using an older version of tls. Cabal has to choose between using tls <2 or data-default-class <0.2 and it decides to use the older data-default-class and not the new one that is compatible with data-default-0.8.

Adding a build-depends to data-default-0.8 requiring data-default-class >0.2 would perhaps help, however it would force the solver to use tls <2. Edit: That would be a circular reference.

@Bodigrim
Copy link

Bodigrim commented Nov 7, 2024

Thanks to recent releases of other packages, which helped to convince Cabal solver to do the right thing, cabal install hoogle now works again, even with rypton-connection == 0.3.2.

@foxyseta
Copy link
Author

foxyseta commented Nov 8, 2024

Personally, this is what I am getting now:

Resolving dependencies...
Build profile: -w ghc-9.4.8 -O1
In order, the following will be built (use -v for more details):
 - data-default-0.8.0.0 (lib) (requires download & build)
 - extra-1.8 (lib) (requires download & build)
 - warp-3.4.4 (lib) (requires build)
 - process-extras-0.7.4 (lib) (requires build)
 - crypton-x509-validation-1.6.13 (lib) (requires build)
 - tls-2.0.6 (lib) (requires build)
 - tls-session-manager-0.0.7 (lib) (requires build)
 - crypton-connection-0.3.2 (lib) (requires build)
 - warp-tls-3.4.9 (lib) (requires build)
 - http-client-tls-0.3.6.4 (lib) (requires build)
 - http-conduit-2.3.9.1 (lib) (requires build)
 - hoogle-5.0.18.4 (lib) (requires build)
 - hoogle-5.0.18.4 (exe:hoogle) (requires build)
Downloading  data-default-0.8.0.0
Starting     warp-3.4.4 (lib)
Downloaded   data-default-0.8.0.0
Downloading  extra-1.8
Starting     data-default-0.8.0.0 (lib)
Downloaded   extra-1.8
Starting     extra-1.8 (lib)
Building     warp-3.4.4 (lib)
Building     data-default-0.8.0.0 (lib)
Building     extra-1.8 (lib)
Installing   data-default-0.8.0.0 (lib)
Completed    data-default-0.8.0.0 (lib)
Starting     process-extras-0.7.4 (lib)
Starting     crypton-x509-validation-1.6.13 (lib)
Installing   extra-1.8 (lib)
Building     crypton-x509-validation-1.6.13 (lib)
Building     process-extras-0.7.4 (lib)
Completed    extra-1.8 (lib)
Installing   crypton-x509-validation-1.6.13 (lib)
Installing   process-extras-0.7.4 (lib)
Installing   warp-3.4.4 (lib)
Completed    crypton-x509-validation-1.6.13 (lib)
Starting     tls-2.0.6 (lib)
Completed    process-extras-0.7.4 (lib)
Completed    warp-3.4.4 (lib)
Building     tls-2.0.6 (lib)

Failed to build tls-2.0.6.
Build log (
/home/foxy/.cache/cabal/logs/ghc-9.4.8/tls-2.0.6-714a9bd3a14c045704175fa1a806ab0567a056ca2fb7db8759c4a5558fae4807.log
):
Configuring library for tls-2.0.6..
Preprocessing library for tls-2.0.6..
Building library for tls-2.0.6..
[ 1 of 76] Compiling Network.TLS.Crypto.Types ( Network/TLS/Crypto/Types.hs, dist/build/Network/TLS/Crypto/Types.o, dist/build/Network/TLS/Crypto/Types.dyn_o )
[ 2 of 76] Compiling Network.TLS.ErrT ( Network/TLS/ErrT.hs, dist/build/Network/TLS/ErrT.o, dist/build/Network/TLS/ErrT.dyn_o )
[ 3 of 76] Compiling Network.TLS.Imports ( Network/TLS/Imports.hs, dist/build/Network/TLS/Imports.o, dist/build/Network/TLS/Imports.dyn_o )
[ 4 of 76] Compiling Network.TLS.Backend ( Network/TLS/Backend.hs, dist/build/Network/TLS/Backend.o, dist/build/Network/TLS/Backend.dyn_o )
[ 5 of 76] Compiling Network.TLS.Measurement ( Network/TLS/Measurement.hs, dist/build/Network/TLS/Measurement.o, dist/build/Network/TLS/Measurement.dyn_o )
[ 6 of 76] Compiling Network.TLS.RNG  ( Network/TLS/RNG.hs, dist/build/Network/TLS/RNG.o, dist/build/Network/TLS/RNG.dyn_o )
[ 7 of 76] Compiling Network.TLS.Crypto.DH ( Network/TLS/Crypto/DH.hs, dist/build/Network/TLS/Crypto/DH.o, dist/build/Network/TLS/Crypto/DH.dyn_o )
[ 8 of 76] Compiling Network.TLS.Extra.FFDHE ( Network/TLS/Extra/FFDHE.hs, dist/build/Network/TLS/Extra/FFDHE.o, dist/build/Network/TLS/Extra/FFDHE.dyn_o )
[ 9 of 76] Compiling Network.TLS.Util ( Network/TLS/Util.hs, dist/build/Network/TLS/Util.o, dist/build/Network/TLS/Util.dyn_o )
[10 of 76] Compiling Network.TLS.Util.ASN1 ( Network/TLS/Util/ASN1.hs, dist/build/Network/TLS/Util/ASN1.o, dist/build/Network/TLS/Util/ASN1.dyn_o )
[11 of 76] Compiling Network.TLS.Util.Serialization ( Network/TLS/Util/Serialization.hs, dist/build/Network/TLS/Util/Serialization.o, dist/build/Network/TLS/Util/Serialization.dyn_o )
[12 of 76] Compiling Network.TLS.Crypto.IES ( Network/TLS/Crypto/IES.hs, dist/build/Network/TLS/Crypto/IES.o, dist/build/Network/TLS/Crypto/IES.dyn_o )
[13 of 76] Compiling Network.TLS.Crypto ( Network/TLS/Crypto.hs, dist/build/Network/TLS/Crypto.o, dist/build/Network/TLS/Crypto.dyn_o )
[14 of 76] Compiling Network.TLS.Types ( Network/TLS/Types.hs, dist/build/Network/TLS/Types.o, dist/build/Network/TLS/Types.dyn_o )
[15 of 76] Compiling Network.TLS.Session ( Network/TLS/Session.hs, dist/build/Network/TLS/Session.o, dist/build/Network/TLS/Session.dyn_o )
[16 of 76] Compiling Network.TLS.Compression ( Network/TLS/Compression.hs, dist/build/Network/TLS/Compression.o, dist/build/Network/TLS/Compression.dyn_o )
[17 of 76] Compiling Network.TLS.Struct ( Network/TLS/Struct.hs, dist/build/Network/TLS/Struct.o, dist/build/Network/TLS/Struct.dyn_o )
[18 of 76] Compiling Network.TLS.Struct13 ( Network/TLS/Struct13.hs, dist/build/Network/TLS/Struct13.o, dist/build/Network/TLS/Struct13.dyn_o )
[19 of 76] Compiling Network.TLS.MAC  ( Network/TLS/MAC.hs, dist/build/Network/TLS/MAC.o, dist/build/Network/TLS/MAC.dyn_o )
[20 of 76] Compiling Network.TLS.Cipher ( Network/TLS/Cipher.hs, dist/build/Network/TLS/Cipher.o, dist/build/Network/TLS/Cipher.dyn_o )
[21 of 76] Compiling Network.TLS.Handshake.Control ( Network/TLS/Handshake/Control.hs, dist/build/Network/TLS/Handshake/Control.o, dist/build/Network/TLS/Handshake/Control.dyn_o )
[22 of 76] Compiling Network.TLS.Extra.Cipher ( Network/TLS/Extra/Cipher.hs, dist/build/Network/TLS/Extra/Cipher.o, dist/build/Network/TLS/Extra/Cipher.dyn_o )
[23 of 76] Compiling Network.TLS.Extra ( Network/TLS/Extra.hs, dist/build/Network/TLS/Extra.o, dist/build/Network/TLS/Extra.dyn_o )
[24 of 76] Compiling Network.TLS.Wire ( Network/TLS/Wire.hs, dist/build/Network/TLS/Wire.o, dist/build/Network/TLS/Wire.dyn_o )
[25 of 76] Compiling Network.TLS.Packet ( Network/TLS/Packet.hs, dist/build/Network/TLS/Packet.o, dist/build/Network/TLS/Packet.dyn_o )
[26 of 76] Compiling Network.TLS.Record.State ( Network/TLS/Record/State.hs, dist/build/Network/TLS/Record/State.o, dist/build/Network/TLS/Record/State.dyn_o )
[27 of 76] Compiling Network.TLS.Record.Types ( Network/TLS/Record/Types.hs, dist/build/Network/TLS/Record/Types.o, dist/build/Network/TLS/Record/Types.dyn_o )
[28 of 76] Compiling Network.TLS.Record.Engage ( Network/TLS/Record/Engage.hs, dist/build/Network/TLS/Record/Engage.o, dist/build/Network/TLS/Record/Engage.dyn_o )
[29 of 76] Compiling Network.TLS.Record.Disengage ( Network/TLS/Record/Disengage.hs, dist/build/Network/TLS/Record/Disengage.o, dist/build/Network/TLS/Record/Disengage.dyn_o )
[30 of 76] Compiling Network.TLS.Record ( Network/TLS/Record.hs, dist/build/Network/TLS/Record.o, dist/build/Network/TLS/Record.dyn_o )
[31 of 76] Compiling Network.TLS.Packet13 ( Network/TLS/Packet13.hs, dist/build/Network/TLS/Packet13.o, dist/build/Network/TLS/Packet13.dyn_o )
[32 of 76] Compiling Network.TLS.Handshake.State ( Network/TLS/Handshake/State.hs, dist/build/Network/TLS/Handshake/State.o, dist/build/Network/TLS/Handshake/State.dyn_o )
[33 of 76] Compiling Network.TLS.KeySchedule ( Network/TLS/KeySchedule.hs, dist/build/Network/TLS/KeySchedule.o, dist/build/Network/TLS/KeySchedule.dyn_o )
[34 of 76] Compiling Network.TLS.Extension ( Network/TLS/Extension.hs, dist/build/Network/TLS/Extension.o, dist/build/Network/TLS/Extension.dyn_o )
[35 of 76] Compiling Network.TLS.State ( Network/TLS/State.hs, dist/build/Network/TLS/State.o, dist/build/Network/TLS/State.dyn_o )
[36 of 76] Compiling Network.TLS.X509 ( Network/TLS/X509.hs, dist/build/Network/TLS/X509.o, dist/build/Network/TLS/X509.dyn_o )
[37 of 76] Compiling Network.TLS.Hooks ( Network/TLS/Hooks.hs, dist/build/Network/TLS/Hooks.o, dist/build/Network/TLS/Hooks.dyn_o )
[38 of 76] Compiling Network.TLS.Credentials ( Network/TLS/Credentials.hs, dist/build/Network/TLS/Credentials.o, dist/build/Network/TLS/Credentials.dyn_o )
[39 of 76] Compiling Network.TLS.Parameters ( Network/TLS/Parameters.hs, dist/build/Network/TLS/Parameters.o, dist/build/Network/TLS/Parameters.dyn_o )

Network/TLS/Parameters.hs:404:39: error:
    • No instance for (Default ValidationCache)
        arising from a use of ‘def’
    • In the ‘sharedValidationCache’ field of a record
      In the expression:
        Shared
          {sharedCredentials = mempty,
           sharedSessionManager = noSessionManager, sharedCAStore = mempty,
           sharedValidationCache = def, sharedHelloExtensions = []}
      In an equation for ‘def’:
          def
            = Shared
                {sharedCredentials = mempty,
                 sharedSessionManager = noSessionManager, sharedCAStore = mempty,
                 sharedValidationCache = def, sharedHelloExtensions = []}
    |
404 |             , sharedValidationCache = def
    |                                       ^^^
Error: cabal: Failed to build tls-2.0.6 (which is required by exe:hoogle from
hoogle-5.0.18.4). See the build log above for details.

@Bodigrim
Copy link

Bodigrim commented Nov 8, 2024

@foxyseta did you run cabal update?

@foxyseta
Copy link
Author

foxyseta commented Nov 8, 2024

My bad! Here is the actual error message now:

Resolving dependencies...
Build profile: -w ghc-9.4.8 -O1
In order, the following will be built (use -v for more details):
 - data-default-class-0.2.0.0 (lib) (requires download & build)
 - tls-2.0.6 (lib) (requires build)
 - cookie-0.5.0 (lib) (requires build)
 - tls-session-manager-0.0.7 (lib) (requires build)
 - crypton-connection-0.3.2 (lib) (requires build)
 - http-client-0.7.17 (lib) (requires build)
 - warp-tls-3.4.9 (lib) (requires build)
 - http-client-tls-0.3.6.4 (lib) (requires build)
 - http-conduit-2.3.9.1 (lib) (requires build)
 - hoogle-5.0.18.4 (lib) (requires build)
 - hoogle-5.0.18.4 (exe:hoogle) (requires build)
Downloading  data-default-class-0.2.0.0
Downloaded   data-default-class-0.2.0.0
Starting     data-default-class-0.2.0.0 (lib)
Building     data-default-class-0.2.0.0 (lib)
Installing   data-default-class-0.2.0.0 (lib)
Completed    data-default-class-0.2.0.0 (lib)
Starting     cookie-0.5.0 (lib)
Starting     tls-2.0.6 (lib)
Building     cookie-0.5.0 (lib)
Building     tls-2.0.6 (lib)
Installing   cookie-0.5.0 (lib)
Completed    cookie-0.5.0 (lib)
Starting     http-client-0.7.17 (lib)
Building     http-client-0.7.17 (lib)
Installing   http-client-0.7.17 (lib)
Completed    http-client-0.7.17 (lib)
Installing   tls-2.0.6 (lib)
Completed    tls-2.0.6 (lib)
Starting     tls-session-manager-0.0.7 (lib)
Starting     crypton-connection-0.3.2 (lib)
Building     tls-session-manager-0.0.7 (lib)
Building     crypton-connection-0.3.2 (lib)
Installing   tls-session-manager-0.0.7 (lib)
Installing   crypton-connection-0.3.2 (lib)
Completed    tls-session-manager-0.0.7 (lib)
Starting     warp-tls-3.4.9 (lib)
Completed    crypton-connection-0.3.2 (lib)
Starting     http-client-tls-0.3.6.4 (lib)
Building     warp-tls-3.4.9 (lib)
Building     http-client-tls-0.3.6.4 (lib)
Installing   warp-tls-3.4.9 (lib)
Installing   http-client-tls-0.3.6.4 (lib)
Completed    warp-tls-3.4.9 (lib)
Completed    http-client-tls-0.3.6.4 (lib)
Starting     http-conduit-2.3.9.1 (lib)
Building     http-conduit-2.3.9.1 (lib)
Installing   http-conduit-2.3.9.1 (lib)
Completed    http-conduit-2.3.9.1 (lib)
Starting     hoogle-5.0.18.4 (lib)
Building     hoogle-5.0.18.4 (lib)

Failed to build hoogle-5.0.18.4.
Build log (
/home/foxy/.cache/cabal/logs/ghc-9.4.8/hoogle-5.0.18.4-a5306a7bc7e4aaaaedce053d1e44ace714a177609070a8f88ac402b2198d41de.log
):
Configuring library for hoogle-5.0.18.4..
Preprocessing library for hoogle-5.0.18.4..
Building library for hoogle-5.0.18.4..
[ 1 of 28] Compiling General.Str      ( src/General/Str.hs, dist/build/General/Str.o, dist/build/General/Str.dyn_o )
[ 2 of 28] Compiling General.IString  ( src/General/IString.hs, dist/build/General/IString.o, dist/build/General/IString.dyn_o )
[ 3 of 28] Compiling General.Conduit  ( src/General/Conduit.hs, dist/build/General/Conduit.o, dist/build/General/Conduit.dyn_o )
[ 4 of 28] Compiling General.Template ( src/General/Template.hs, dist/build/General/Template.o, dist/build/General/Template.dyn_o )
[ 5 of 28] Compiling General.Util     ( src/General/Util.hs, dist/build/General/Util.o, dist/build/General/Util.dyn_o )
[ 6 of 28] Compiling General.Timing   ( src/General/Timing.hs, dist/build/General/Timing.o, dist/build/General/Timing.dyn_o )
[ 7 of 28] Compiling General.Log      ( src/General/Log.hs, dist/build/General/Log.o, dist/build/General/Log.dyn_o )
[ 8 of 28] Compiling Input.Download   ( src/Input/Download.hs, dist/build/Input/Download.o, dist/build/Input/Download.dyn_o )
[ 9 of 28] Compiling Input.Item       ( src/Input/Item.hs, dist/build/Input/Item.o, dist/build/Input/Item.dyn_o )
[10 of 28] Compiling Input.Haddock    ( src/Input/Haddock.hs, dist/build/Input/Haddock.o, dist/build/Input/Haddock.dyn_o )
[11 of 28] Compiling Input.Set        ( src/Input/Set.hs, dist/build/Input/Set.o, dist/build/Input/Set.dyn_o )
[12 of 28] Compiling Paths_hoogle     ( dist/build/autogen/Paths_hoogle.hs, dist/build/Paths_hoogle.o, dist/build/Paths_hoogle.dyn_o )
[13 of 28] Compiling Input.Settings   ( src/Input/Settings.hs, dist/build/Input/Settings.o, dist/build/Input/Settings.dyn_o )
[14 of 28] Compiling Input.Reorder    ( src/Input/Reorder.hs, dist/build/Input/Reorder.o, dist/build/Input/Reorder.dyn_o )
[15 of 28] Compiling Input.Cabal      ( src/Input/Cabal.hs, dist/build/Input/Cabal.o, dist/build/Input/Cabal.dyn_o )
[16 of 28] Compiling General.Store    ( src/General/Store.hs, dist/build/General/Store.o, dist/build/General/Store.dyn_o )
[17 of 28] Compiling Output.Types     ( src/Output/Types.hs, dist/build/Output/Types.o, dist/build/Output/Types.dyn_o )
[18 of 28] Compiling Output.Names     ( src/Output/Names.hs, dist/build/Output/Names.o, dist/build/Output/Names.dyn_o )
[19 of 28] Compiling Output.Items     ( src/Output/Items.hs, dist/build/Output/Items.o, dist/build/Output/Items.dyn_o )
[20 of 28] Compiling Action.CmdLine   ( src/Action/CmdLine.hs, dist/build/Action/CmdLine.o, dist/build/Action/CmdLine.dyn_o )
[21 of 28] Compiling General.Web      ( src/General/Web.hs, dist/build/General/Web.o, dist/build/General/Web.dyn_o )
[22 of 28] Compiling Query            ( src/Query.hs, dist/build/Query.o, dist/build/Query.dyn_o )
[23 of 28] Compiling Output.Tags      ( src/Output/Tags.hs, dist/build/Output/Tags.o, dist/build/Output/Tags.dyn_o )
[24 of 28] Compiling Action.Generate  ( src/Action/Generate.hs, dist/build/Action/Generate.o, dist/build/Action/Generate.dyn_o )
[25 of 28] Compiling Action.Search    ( src/Action/Search.hs, dist/build/Action/Search.o, dist/build/Action/Search.dyn_o )
[26 of 28] Compiling Action.Server    ( src/Action/Server.hs, dist/build/Action/Server.o, dist/build/Action/Server.dyn_o )
[27 of 28] Compiling Action.Test      ( src/Action/Test.hs, dist/build/Action/Test.o, dist/build/Action/Test.dyn_o )
[28 of 28] Compiling Hoogle           ( src/Hoogle.hs, dist/build/Hoogle.o, dist/build/Hoogle.dyn_o )

In file included from cbits/text_search.c:2:0: error:
/usr/include/fortify/string.h: In function 'strncat':

/usr/include/fortify/string.h:297:36: error:
     error: implicit declaration of function 'strnlen'; did you mean 'strlen'? [-Wimplicit-function-declaration]
      297 |                 __fh_size_t __sl = strnlen(__s, __n);
          |                                    ^~~~~~~
          |                                    strlen
    |
297 |                 __fh_size_t __sl = strnlen(__s, __n);
    |                                    ^
`gcc' failed in phase `C Compiler'. (Exit code: 1)
Error: cabal: Failed to build hoogle-5.0.18.4 (which is required by exe:hoogle
from hoogle-5.0.18.4). See the build log above for details.

As this is showing the right hoogle version, perhaps I should close this issue and open a different one?

@LaurentRDC
Copy link

I should close this issue

Please don't, a new Hackage version is also required to support crypton-connection >= 0.4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants