Commit ece2c434 authored by Edward Z. Yang's avatar Edward Z. Yang

Drop prefix from package keys.

Summary:
Contains Cabal submodule update, as Cabal is responsible
generating package keys.  We also have to update some output.

Also comes with a documentation update for ghc-pkg in the
user manual for --package-key.
Signed-off-by: default avatarEdward Z. Yang <ezyang@cs.stanford.edu>

Test Plan: validate

Reviewers: simonpj, austin

Subscribers: thomie, bgamari

Differential Revision: https://phabricator.haskell.org/D1011

GHC Trac Issues: #10550
parent 95d50310
......@@ -1118,6 +1118,21 @@ ghc-pkg dot | tred | dot -Tpdf >pkgs.pdf
necessarily holds).</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<option>--package-key</option>
<indexterm><primary>
<option>--package-key</option>
</primary></indexterm>
</term>
<listitem>
<para>Causes <literal>ghc-pkg</literal> to interpret arguments
as package keys (e.g., an identifier like
<literal>I5BErHzyOm07EBNpKBEeUv</literal>). Package keys are
used to prefix symbol names GHC produces (e.g., <literal>6VWy06pWzzJq9evDvK2d4w6_DataziByteStringziInternal_unsafePackLenChars_info</literal>), so if you need to figure out what package a symbol belongs to, use <literal>ghc-pkg</literal> with this flag.</para>
</listitem>
</varlistentry>
</variablelist>
</sect2>
......
Subproject commit 9e9e4370bbca6af032794225fe5638124acf2d85
Subproject commit 03530bf99d96f8e8ab00cd18a18222eeba064734
......@@ -4,7 +4,7 @@ else:
cleanup = ''
def normaliseContainersPackage(str):
return re.sub('containers-[^@]+@conta_[A-Za-z0-9]+', 'containers-<VERSION>@conta_<HASH>', str)
return re.sub('containers-[^@]+@[A-Za-z0-9]+', 'containers-<VERSION>@<HASH>', str)
test('cabal07',
normalise_errmsg_fun(normaliseContainersPackage),
......
Q.hs:3:8:
Could not find module ‘Data.Set’
It is a member of the hidden package ‘containers-<VERSION>@conta_<HASH>’.
It is a member of the hidden package ‘containers-<VERSION>@<HASH>’.
Perhaps you need to add ‘containers’ to the build-depends in your .cabal file.
Use -v to see a list of the files searched for.
......@@ -2,6 +2,6 @@
<no location info>:
Could not find module ‘Control.Monad.Trans.State’
Perhaps you meant
Control.Monad.Trans.State (from transformers-0.4.2.0@trans_<HASH>)
Control.Monad.Trans.Class (from transformers-0.4.2.0@trans_<HASH>)
Control.Monad.Trans.Cont (from transformers-0.4.2.0@trans_<HASH>)
Control.Monad.Trans.State (from transformers-<VERSION>@<HASH>)
Control.Monad.Trans.Class (from transformers-<VERSION>@<HASH>)
Control.Monad.Trans.Cont (from transformers-<VERSION>@<HASH>)
# coding=utf8
def normaliseTransformersPackageKey(str):
return re.sub('trans_[A-Za-z0-9]+', 'trans_<HASH>', str)
return re.sub('transformers-[^@]+@[A-Za-z0-9]+', 'transformers-<VERSION>@<HASH>', str)
setTestOpts(when(compiler_profiled(), skip))
......
<no location info>:
The package (base-4.8.2.0) is required to be trusted but it isn't!
<no location info>: error:
The package (bytestring-0.10.6.0) is required to be trusted but it isn't!
<no location info>:
The package (bytestring-0.10.5.0) is required to be trusted but it isn't!
<no location info>: error:
The package (base-4.8.2.0) is required to be trusted but it isn't!
<no location info>:
The package (base-4.8.2.0) is required to be trusted but it isn't!
The package (bytestring-0.10.5.0) is required to be trusted but it isn't!
<no location info>:
The package (bytestring-0.10.5.0) is required to be trusted but it isn't!
The package (base-4.8.2.0) is required to be trusted but it isn't!
......@@ -29,17 +29,17 @@ trusted: safe
require own pkg trusted: True
M_SafePkg6
package dependencies: array-0.5.1.0 base-4.8.2.0* bytestring-0.10.6.0* deepseq-1.4.1.1 ghc-prim-0.4.0.0 integer-gmp-1.0.0.0
package dependencies: array-0.5.1.0 bytestring-0.10.6.0* deepseq-1.4.1.1 base-4.8.2.0* ghc-prim-0.4.0.0 integer-gmp-1.0.0.0
trusted: trustworthy
require own pkg trusted: False
M_SafePkg7
package dependencies: array-0.5.1.0 base-4.8.2.0* bytestring-0.10.6.0* deepseq-1.4.1.1 ghc-prim-0.4.0.0 integer-gmp-1.0.0.0
package dependencies: array-0.5.1.0 bytestring-0.10.6.0* deepseq-1.4.1.1 base-4.8.2.0* ghc-prim-0.4.0.0 integer-gmp-1.0.0.0
trusted: safe
require own pkg trusted: False
M_SafePkg8
package dependencies: array-0.5.1.0 base-4.8.2.0 bytestring-0.10.6.0* deepseq-1.4.1.1 ghc-prim-0.4.0.0 integer-gmp-1.0.0.0
package dependencies: array-0.5.1.0 bytestring-0.10.6.0* deepseq-1.4.1.1 base-4.8.2.0 ghc-prim-0.4.0.0 integer-gmp-1.0.0.0
trusted: trustworthy
require own pkg trusted: False
......
......@@ -4,9 +4,9 @@ TYPE CONSTRUCTORS
data T (a :: k)
COERCION AXIOMS
Dependent modules: []
Dependent packages: [array-0.5.1.0, base-4.8.2.0, deepseq-1.4.1.1,
ghc-prim-0.3.1.0, integer-gmp-1.0.0.0, pretty-1.1.2.0,
template-haskell-2.10.0.0]
Dependent packages: [array-0.5.1.0, deepseq-1.4.1.1,
pretty-1.1.2.0, base-4.8.2.0, ghc-prim-0.4.0.0,
integer-gmp-1.0.0.0, template-haskell-2.10.0.0]
==================== Typechecker ====================
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment