summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Z. Yang <ezyang@cs.stanford.edu>2015-06-23 10:41:45 -0700
committerEdward Z. Yang <ezyang@cs.stanford.edu>2015-06-24 13:54:14 -0700
commitece2c4349718cf89b291ff3c962cbda4805bab43 (patch)
treedd05be1d830d6fc972d6b6e0af8f89f579163dcd
parent95d503103a08418506298c936b76de4ae8651538 (diff)
downloadhaskell-ece2c4349718cf89b291ff3c962cbda4805bab43.tar.gz
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: Edward 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
-rw-r--r--docs/users_guide/packages.xml15
m---------libraries/Cabal0
-rw-r--r--testsuite/tests/cabal/cabal07/all.T2
-rw-r--r--testsuite/tests/cabal/cabal07/cabal07.stderr2
-rw-r--r--testsuite/tests/ghci/scripts/T5979.stderr6
-rwxr-xr-xtestsuite/tests/ghci/scripts/all.T2
-rw-r--r--testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly07.stderr8
-rw-r--r--testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly08.stderr4
-rw-r--r--testsuite/tests/safeHaskell/check/pkg01/safePkg01.stdout6
-rw-r--r--testsuite/tests/th/TH_Roles2.stderr6
10 files changed, 33 insertions, 18 deletions
diff --git a/docs/users_guide/packages.xml b/docs/users_guide/packages.xml
index 7d7200aa88..555c67ffbc 100644
--- a/docs/users_guide/packages.xml
+++ b/docs/users_guide/packages.xml
@@ -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>
diff --git a/libraries/Cabal b/libraries/Cabal
-Subproject 9e9e4370bbca6af032794225fe5638124acf2d8
+Subproject 03530bf99d96f8e8ab00cd18a18222eeba06473
diff --git a/testsuite/tests/cabal/cabal07/all.T b/testsuite/tests/cabal/cabal07/all.T
index b2d26809d3..2286f30783 100644
--- a/testsuite/tests/cabal/cabal07/all.T
+++ b/testsuite/tests/cabal/cabal07/all.T
@@ -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),
diff --git a/testsuite/tests/cabal/cabal07/cabal07.stderr b/testsuite/tests/cabal/cabal07/cabal07.stderr
index ded86e1e21..39f80ff93f 100644
--- a/testsuite/tests/cabal/cabal07/cabal07.stderr
+++ b/testsuite/tests/cabal/cabal07/cabal07.stderr
@@ -1,6 +1,6 @@
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.
diff --git a/testsuite/tests/ghci/scripts/T5979.stderr b/testsuite/tests/ghci/scripts/T5979.stderr
index 9be85736e6..b4abfbd99c 100644
--- a/testsuite/tests/ghci/scripts/T5979.stderr
+++ b/testsuite/tests/ghci/scripts/T5979.stderr
@@ -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>)
diff --git a/testsuite/tests/ghci/scripts/all.T b/testsuite/tests/ghci/scripts/all.T
index 4094a9e9ce..384868e0d8 100755
--- a/testsuite/tests/ghci/scripts/all.T
+++ b/testsuite/tests/ghci/scripts/all.T
@@ -1,7 +1,7 @@
# 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))
diff --git a/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly07.stderr b/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly07.stderr
index 8ee9335e8a..a89ff72d04 100644
--- a/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly07.stderr
+++ b/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly07.stderr
@@ -1,6 +1,6 @@
-<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!
diff --git a/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly08.stderr b/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly08.stderr
index 8ee9335e8a..f4013c0a90 100644
--- a/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly08.stderr
+++ b/testsuite/tests/safeHaskell/check/pkg01/ImpSafeOnly08.stderr
@@ -1,6 +1,6 @@
<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!
diff --git a/testsuite/tests/safeHaskell/check/pkg01/safePkg01.stdout b/testsuite/tests/safeHaskell/check/pkg01/safePkg01.stdout
index 62f18d1392..12223e534a 100644
--- a/testsuite/tests/safeHaskell/check/pkg01/safePkg01.stdout
+++ b/testsuite/tests/safeHaskell/check/pkg01/safePkg01.stdout
@@ -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
diff --git a/testsuite/tests/th/TH_Roles2.stderr b/testsuite/tests/th/TH_Roles2.stderr
index 97694f2b2d..1c0a217a05 100644
--- a/testsuite/tests/th/TH_Roles2.stderr
+++ b/testsuite/tests/th/TH_Roles2.stderr
@@ -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 ====================