Skip to content

ghc-boot-th can't be uploaded to hackage

It refers to source files outside its directory, even though it is guarded by a cabal flag.

Uploading ghc-boot-th-9.12.1.tar.gz...
Error uploading ghc-boot-th-9.12.1.tar.gz: http code 400
Error: Invalid package

Invalid unix file name in tar archive:
"ghc-boot-th-9.12.1/../ghc-internal/src/GHC/Internal/". For portability,
hackage requires that file names be valid on both Unix and Windows systems,
and not refer outside of the tarball.
    if flag(bootstrap)
        cpp-options: -DBOOTSTRAP_TH
        hs-source-dirs: . ../ghc-internal/src
        exposed-modules:
            GHC.Internal.TH.Lib
            GHC.Internal.TH.Syntax
        other-modules:
            GHC.Internal.ForeignSrcLang
            GHC.Internal.LanguageExtensions
            GHC.Internal.Lexeme
    else
        hs-source-dirs: .
        build-depends:
            ghc-internal
        reexported-modules:
            GHC.Internal.TH.Lib,
            GHC.Internal.TH.Lift,
            GHC.Internal.TH.Quote,
            GHC.Internal.TH.Syntax
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information