Exposed module still hidden, why?

2007-11-20 Thread Greg Fitzgerald
Using GHC 6.8.1 on Windows XP, after having used ghc-pkg to expose '
directory-1.0.0.0', I am getting an error when I build haddock that says the
package is hidden.  When I type ghc-pkg list, the package is not in
parenthesis.  Typing ghc -v says that it is using the file from
C:\ghc\ghc-6.8.1\package.conf.  That package.conf file has the 'exposed'
set to True for that file.  Why does GHC still think the package is hidden?

...\haddock-0.8runhaskell Setup.lhs configure
Configuring haddock-0.8...

...\haddock-0.8runhaskell Setup.lhs build
Preprocessing executables for haddock-0.8...
shift/reduce conflicts:  5
Building haddock-0.8...

src/Main.hs:49:7:
Could not find module `System.Directory':
  it is a member of package directory-1.0.0.0, which is hidden

...\haddock-0.8ghc-pkg list
C:/ghc/ghc-6.8.1\package.conf:
Cabal-1.2.2.0, HUnit-1.2.0.0, OpenGL-2.2.1.1, QuickCheck-1.1.0.0,
Win32-2.1.0.0, array-0.1.0.0, base-3.0.0.0, bytestring-0.9.0.1,
cgi-3001.1.5.1, containers-0.1.0.0, directory-1.0.0.0, fgl-5.4.1.1,
filepath-1.1.0.0, (ghc-6.8.1), haskell-src-1.0.1.1,
haskell98-1.0.1.0, hpc-0.5.0.0, html-1.0.1.1, mtl-1.1.0.0,
network-2.1.0.0, old-locale-1.0.0.0, old-time-1.0.0.0,
packedstring-0.1.0.0, parallel-1.0.0.0, parsec-2.1.0.0,
pretty-1.0.0.0, process-1.0.0.0, random-1.0.0.0,
regex-base-0.72.0.1, regex-compat-0.71.0.1, regex-posix-0.72.0.1,
rts-1.0, stm-2.1.1.0, template-haskell-2.2.0.0, time-1.1.2.0,
xhtml-3000.0.2.1

Thanks,
Greg
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: Exposed module still hidden, why?

2007-11-20 Thread J. Garrett Morris
As I understand it, Cabal hides all packages by default.  If a package
is not in your dependencies, it won't be available to the build, no
matter the status in ghc-pkg.

(Incidentally, this had neat consequences in the past, since it means
that packages being hidden in ghc-pkg also does not make them
unavailable to cabal.  I spent some time at a previous employer
attempt to debug a build failure where it turned out that the
developer experiencing the failure had not pulled all the changes.  In
particular, we had packages A, B, and C, where C depended on A and B,
and B depended on A.  The developer had pulled updates to A and C, but
not B.  A built and installed a new version, hiding B (which was based
on an old version).  The developer the build C.  Cabal started with
everything hidden, then revealed A and B as specified by C's cabal
file, and the predictable build failures resulted.  I have not tried
this with GHC/Cabal builds since 6.4.2, so this is probably no longer
possible.)

 /g

On Nov 20, 2007 2:18 PM, Greg Fitzgerald [EMAIL PROTECTED] wrote:
 Using GHC 6.8.1 on Windows XP, after having used ghc-pkg to expose
 'directory-1.0.0.0', I am getting an error when I build haddock that says
 the package is hidden.  When I type ghc-pkg list, the package is not in
 parenthesis.  Typing ghc -v says that it is using the file from
 C:\ghc\ghc- 6.8.1\package.conf.  That package.conf file has the 'exposed'
 set to True for that file.  Why does GHC still think the package is hidden?

 ...\haddock-0.8runhaskell Setup.lhs configure
 Configuring haddock-0.8...

 ...\haddock-0.8runhaskell Setup.lhs build
 Preprocessing executables for haddock-0.8...
 shift/reduce conflicts:  5
 Building haddock-0.8...

 src/Main.hs:49:7:
 Could not find module `System.Directory':
   it is a member of package directory-1.0.0.0, which is hidden

 ...\haddock-0.8ghc-pkg list
 C:/ghc/ghc-6.8.1\package.conf:
 Cabal-1.2.2.0, HUnit-1.2.0.0, OpenGL-2.2.1.1, QuickCheck-1.1.0.0,
 Win32-2.1.0.0, array-0.1.0.0, base-3.0.0.0, bytestring-0.9.0.1,
 cgi-3001.1.5.1, containers-0.1.0.0, directory-1.0.0.0, fgl-5.4.1.1,
 filepath-1.1.0.0, (ghc-6.8.1), haskell-src-1.0.1.1,
 haskell98-1.0.1.0 , hpc-0.5.0.0, html-1.0.1.1, mtl-1.1.0.0,
 network-2.1.0.0, old-locale-1.0.0.0, old-time-1.0.0.0,
 packedstring-0.1.0.0, parallel-1.0.0.0, parsec-2.1.0.0,
 pretty-1.0.0.0, process-1.0.0.0, random-1.0.0.0 ,
 regex-base-0.72.0.1, regex-compat-0.71.0.1, regex-posix-0.72.0.1,
 rts-1.0, stm-2.1.1.0, template-haskell-2.2.0.0, time-1.1.2.0,
 xhtml-3000.0.2.1

 Thanks,
 Greg

 ___
 Glasgow-haskell-users mailing list
 Glasgow-haskell-users@haskell.org
 http://www.haskell.org/mailman/listinfo/glasgow-haskell-users





-- 
The man who'd introduced them didn't much like either of them, though
he acted as if he did, anxious as he was to preserve good relations at
all times. One never knew, after all, now did one now did one now did
one.
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: Exposed module still hidden, why?

2007-11-20 Thread Stefan O'Rear
On Tue, Nov 20, 2007 at 12:18:57PM -0800, Greg Fitzgerald wrote:
 Using GHC 6.8.1 on Windows XP, after having used ghc-pkg to expose '
 directory-1.0.0.0', I am getting an error when I build haddock that says the
 package is hidden.  When I type ghc-pkg list, the package is not in
 parenthesis.  Typing ghc -v says that it is using the file from
 C:\ghc\ghc-6.8.1\package.conf.  That package.conf file has the 'exposed'
 set to True for that file.  Why does GHC still think the package is hidden?
 
 ...\haddock-0.8runhaskell Setup.lhs configure
 Configuring haddock-0.8...
 
 ...\haddock-0.8runhaskell Setup.lhs build
 Preprocessing executables for haddock-0.8...
 shift/reduce conflicts:  5
 Building haddock-0.8...
 
 src/Main.hs:49:7:
 Could not find module `System.Directory':
   it is a member of package directory-1.0.0.0, which is hidden
 
 ...\haddock-0.8ghc-pkg list
 C:/ghc/ghc-6.8.1\package.conf:
 Cabal-1.2.2.0, HUnit-1.2.0.0, OpenGL-2.2.1.1, QuickCheck-1.1.0.0,
 Win32-2.1.0.0, array-0.1.0.0, base-3.0.0.0, bytestring-0.9.0.1,
 cgi-3001.1.5.1, containers-0.1.0.0, directory-1.0.0.0, fgl-5.4.1.1,
 filepath-1.1.0.0, (ghc-6.8.1), haskell-src-1.0.1.1,
 haskell98-1.0.1.0, hpc-0.5.0.0, html-1.0.1.1, mtl-1.1.0.0,
 network-2.1.0.0, old-locale-1.0.0.0, old-time-1.0.0.0,
 packedstring-0.1.0.0, parallel-1.0.0.0, parsec-2.1.0.0,
 pretty-1.0.0.0, process-1.0.0.0, random-1.0.0.0,
 regex-base-0.72.0.1, regex-compat-0.71.0.1, regex-posix-0.72.0.1,
 rts-1.0, stm-2.1.1.0, template-haskell-2.2.0.0, time-1.1.2.0,
 xhtml-3000.0.2.1

This is a Cabal FAQ.

Cabal passes -hide-all-packages to GHC to prevent undeclared
dependancied from creeping in; so you have to explicitly depend on all
used packages.

(Would someone who is involved with the cabal web site PLEASE put this
up somewhere?  FAQs do no good if they have to be typed by humans!)

Stefan


signature.asc
Description: Digital signature
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: Exposed module still hidden, why?

2007-11-20 Thread Duncan Coutts
On Tue, 2007-11-20 at 13:25 -0800, Stefan O'Rear wrote:

 (Would someone who is involved with the cabal web site PLEASE put this
 up somewhere?  FAQs do no good if they have to be typed by humans!)

What would you like the text to be and where would you like to see it?


Duncan
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users