Re: [Haskell-beginners] [web-devel] yesod dependency hell

My thinking is that this problem comes up anytime someone wants to
play around with experimental code. As evidenced by the
yesodwiki.cabal file, I think there's a more straightforward solution.
I'm just not seeing it.
On Wed, Jun 22, 2011 at 1:46 PM, Thomas Hartman
one idea: move .ghc and .cabal to temp directory.
start over with a clean slate.
On Wed, Jun 22, 2011 at 1:30 PM, Michael Litchard
wrote: Configuring Aframe-0.0.1... Warning: This package indirectly depends on multiple versions of the same package. This is highly likely to cause a compile failure. package yesod-auth-0.4.0.2 requires yesod-form-0.1.0.1 package yesod-0.8.2.1 requires yesod-form-0.1.0.1 package Aframe-0.0.1 requires yesod-form-0.2.0
I specified in Aframe.cabal yesod-form 0.2.0. The above warning is what I was looking to avoid. What is the solution to this problem? I could not find an obvious solution in yesodwiki.cabal, even though I see it's doing something similar to what I want. How did you deal with the above warning message?
On Wed, Jun 22, 2011 at 12:32 PM, Michael Snoyman
wrote: Have a look at the yesodwiki[1]; basically, you can't use the yesod package itself, only the subpackages. This is by design so that a single Yesod release will keep API stability, while users can still experiment with newer versions of underlying packages.
Michael
[1] https://github.com/snoyberg/yesodwiki/blob/master/yesodwiki.cabal
On Wed, Jun 22, 2011 at 10:29 PM, Michael Litchard
wrote: I need to use yesod-form 0.2.0. The problem is that the yesod package, and the yesod-auth package expect yesod-form to be 0.1.0* I tried changing the .cabal files but that breaks in ways that makes me think the fix is not so simple. How do I go about being able to use yesod-form 0.2.0
_______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel
_______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel

Thomas,
I tried what you suggested and I still have the exact same problem.
On Wed, Jun 22, 2011 at 1:50 PM, Michael Litchard
My thinking is that this problem comes up anytime someone wants to play around with experimental code. As evidenced by the yesodwiki.cabal file, I think there's a more straightforward solution. I'm just not seeing it.
On Wed, Jun 22, 2011 at 1:46 PM, Thomas Hartman
wrote: one idea: move .ghc and .cabal to temp directory.
start over with a clean slate.
On Wed, Jun 22, 2011 at 1:30 PM, Michael Litchard
wrote: Configuring Aframe-0.0.1... Warning: This package indirectly depends on multiple versions of the same package. This is highly likely to cause a compile failure. package yesod-auth-0.4.0.2 requires yesod-form-0.1.0.1 package yesod-0.8.2.1 requires yesod-form-0.1.0.1 package Aframe-0.0.1 requires yesod-form-0.2.0
I specified in Aframe.cabal yesod-form 0.2.0. The above warning is what I was looking to avoid. What is the solution to this problem? I could not find an obvious solution in yesodwiki.cabal, even though I see it's doing something similar to what I want. How did you deal with the above warning message?
On Wed, Jun 22, 2011 at 12:32 PM, Michael Snoyman
wrote: Have a look at the yesodwiki[1]; basically, you can't use the yesod package itself, only the subpackages. This is by design so that a single Yesod release will keep API stability, while users can still experiment with newer versions of underlying packages.
Michael
[1] https://github.com/snoyberg/yesodwiki/blob/master/yesodwiki.cabal
On Wed, Jun 22, 2011 at 10:29 PM, Michael Litchard
wrote: I need to use yesod-form 0.2.0. The problem is that the yesod package, and the yesod-auth package expect yesod-form to be 0.1.0* I tried changing the .cabal files but that breaks in ways that makes me think the fix is not so simple. How do I go about being able to use yesod-form 0.2.0
_______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel
_______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel

The solution seems to be to remove yesod from the build-depends
section. I'm having other problems, don't think it's related.
On Wed, Jun 22, 2011 at 2:52 PM, Michael Litchard
Thomas, I tried what you suggested and I still have the exact same problem.
On Wed, Jun 22, 2011 at 1:50 PM, Michael Litchard
wrote: My thinking is that this problem comes up anytime someone wants to play around with experimental code. As evidenced by the yesodwiki.cabal file, I think there's a more straightforward solution. I'm just not seeing it.
On Wed, Jun 22, 2011 at 1:46 PM, Thomas Hartman
wrote: one idea: move .ghc and .cabal to temp directory.
start over with a clean slate.
On Wed, Jun 22, 2011 at 1:30 PM, Michael Litchard
wrote: Configuring Aframe-0.0.1... Warning: This package indirectly depends on multiple versions of the same package. This is highly likely to cause a compile failure. package yesod-auth-0.4.0.2 requires yesod-form-0.1.0.1 package yesod-0.8.2.1 requires yesod-form-0.1.0.1 package Aframe-0.0.1 requires yesod-form-0.2.0
I specified in Aframe.cabal yesod-form 0.2.0. The above warning is what I was looking to avoid. What is the solution to this problem? I could not find an obvious solution in yesodwiki.cabal, even though I see it's doing something similar to what I want. How did you deal with the above warning message?
On Wed, Jun 22, 2011 at 12:32 PM, Michael Snoyman
wrote: Have a look at the yesodwiki[1]; basically, you can't use the yesod package itself, only the subpackages. This is by design so that a single Yesod release will keep API stability, while users can still experiment with newer versions of underlying packages.
Michael
[1] https://github.com/snoyberg/yesodwiki/blob/master/yesodwiki.cabal
On Wed, Jun 22, 2011 at 10:29 PM, Michael Litchard
wrote: I need to use yesod-form 0.2.0. The problem is that the yesod package, and the yesod-auth package expect yesod-form to be 0.1.0* I tried changing the .cabal files but that breaks in ways that makes me think the fix is not so simple. How do I go about being able to use yesod-form 0.2.0
_______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel
_______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel

I think I experience similar situation.
I did some change to yesod-auth-0.4.x (Im using yesod-0.8.x which needs
yesod-auth-0.4.x) locally but it failed to compile because of dependences.
Then I change my idea to make change its low level package authenticate.
authenticate compile successfully but failed to rebuild yesod itself.
Basically I spend more than half day trying to "Apply" my change which is
only one line added.
However, till now, I have no lucky.
I'm wondering any best practice of Cabal for such scenario.
Am I doing something wrong?
I really expect a simple and elegant way.~
Appreciate your help.
-Haisheng
On Thu, Jun 23, 2011 at 6:19 AM, Michael Litchard
The solution seems to be to remove yesod from the build-depends section. I'm having other problems, don't think it's related.
Thomas, I tried what you suggested and I still have the exact same
On Wed, Jun 22, 2011 at 2:52 PM, Michael Litchard
wrote: problem. On Wed, Jun 22, 2011 at 1:50 PM, Michael Litchard
My thinking is that this problem comes up anytime someone wants to play around with experimental code. As evidenced by the yesodwiki.cabal file, I think there's a more straightforward solution. I'm just not seeing it.
On Wed, Jun 22, 2011 at 1:46 PM, Thomas Hartman
wrote: one idea: move .ghc and .cabal to temp directory.
start over with a clean slate.
On Wed, Jun 22, 2011 at 1:30 PM, Michael Litchard
wrote: Configuring Aframe-0.0.1... Warning: This package indirectly depends on multiple versions of the same package. This is highly likely to cause a compile failure. package yesod-auth-0.4.0.2 requires yesod-form-0.1.0.1 package yesod-0.8.2.1 requires yesod-form-0.1.0.1 package Aframe-0.0.1 requires yesod-form-0.2.0
I specified in Aframe.cabal yesod-form 0.2.0. The above warning is what I was looking to avoid. What is the solution to this problem? I could not find an obvious solution in yesodwiki.cabal, even though I see it's doing something similar to what I want. How did you deal with the above warning message?
On Wed, Jun 22, 2011 at 12:32 PM, Michael Snoyman < michael@snoyman.com> wrote:
Have a look at the yesodwiki[1]; basically, you can't use the yesod package itself, only the subpackages. This is by design so that a single Yesod release will keep API stability, while users can still experiment with newer versions of underlying packages.
Michael
[1] https://github.com/snoyberg/yesodwiki/blob/master/yesodwiki.cabal
On Wed, Jun 22, 2011 at 10:29 PM, Michael Litchard < michael@schmong.org> wrote: > I need to use yesod-form 0.2.0. The problem is that the yesod
wrote: package,
> and the yesod-auth package expect yesod-form to be 0.1.0* > I tried changing the .cabal files but that breaks in ways that makes > me think the fix is not so simple. How do I go about being able to use > yesod-form 0.2.0 > > _______________________________________________ > web-devel mailing list > web-devel@haskell.org > http://www.haskell.org/mailman/listinfo/web-devel >
_______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners

When I run into this problem, I've found the simplest solution is to
run a local Yackage server[1] that will keep my modified package. Then
cabal is able to still reinstall the package for you automatically.
[1] http://hackage.haskell.org/package/yackage
On Sun, Jul 24, 2011 at 3:46 PM, Haisheng Wu
I think I experience similar situation. I did some change to yesod-auth-0.4.x (Im using yesod-0.8.x which needs yesod-auth-0.4.x) locally but it failed to compile because of dependences. Then I change my idea to make change its low level package authenticate. authenticate compile successfully but failed to rebuild yesod itself.
Basically I spend more than half day trying to "Apply" my change which is only one line added. However, till now, I have no lucky.
I'm wondering any best practice of Cabal for such scenario. Am I doing something wrong?
I really expect a simple and elegant way.~ Appreciate your help.
-Haisheng
On Thu, Jun 23, 2011 at 6:19 AM, Michael Litchard
wrote: The solution seems to be to remove yesod from the build-depends section. I'm having other problems, don't think it's related.
On Wed, Jun 22, 2011 at 2:52 PM, Michael Litchard
wrote: Thomas, I tried what you suggested and I still have the exact same problem.
On Wed, Jun 22, 2011 at 1:50 PM, Michael Litchard
wrote: My thinking is that this problem comes up anytime someone wants to play around with experimental code. As evidenced by the yesodwiki.cabal file, I think there's a more straightforward solution. I'm just not seeing it.
On Wed, Jun 22, 2011 at 1:46 PM, Thomas Hartman
wrote: one idea: move .ghc and .cabal to temp directory.
start over with a clean slate.
On Wed, Jun 22, 2011 at 1:30 PM, Michael Litchard
wrote: Configuring Aframe-0.0.1... Warning: This package indirectly depends on multiple versions of the same package. This is highly likely to cause a compile failure. package yesod-auth-0.4.0.2 requires yesod-form-0.1.0.1 package yesod-0.8.2.1 requires yesod-form-0.1.0.1 package Aframe-0.0.1 requires yesod-form-0.2.0
I specified in Aframe.cabal yesod-form 0.2.0. The above warning is what I was looking to avoid. What is the solution to this problem? I could not find an obvious solution in yesodwiki.cabal, even though I see it's doing something similar to what I want. How did you deal with the above warning message?
On Wed, Jun 22, 2011 at 12:32 PM, Michael Snoyman
wrote: > Have a look at the yesodwiki[1]; basically, you can't use the yesod > package itself, only the subpackages. This is by design so that a > single Yesod release will keep API stability, while users can still > experiment with newer versions of underlying packages. > > Michael > > [1] > https://github.com/snoyberg/yesodwiki/blob/master/yesodwiki.cabal > > On Wed, Jun 22, 2011 at 10:29 PM, Michael Litchard > wrote: >> I need to use yesod-form 0.2.0. The problem is that the yesod >> package, >> and the yesod-auth package expect yesod-form to be 0.1.0* >> I tried changing the .cabal files but that breaks in ways that >> makes >> me think the fix is not so simple. How do I go about being able to >> use >> yesod-form 0.2.0 >> >> _______________________________________________ >> web-devel mailing list >> web-devel@haskell.org >> http://www.haskell.org/mailman/listinfo/web-devel >> > _______________________________________________ web-devel mailing list web-devel@haskell.org http://www.haskell.org/mailman/listinfo/web-devel
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners
participants (3)
-
Haisheng Wu
-
Michael Litchard
-
Michael Snoyman