New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problem installing HTTP::UserAgent after Bailador #178
Comments
|
yes, there may well be if Bailador or one of its dependencies has an HTTP::Response or possibly even just a Response in some other namespace. I think it may be because Bailador doesn't specify an "auth" in its META6. HTTP::UserAgent itself goes out of its way to fully qualify its own HTTP::Response and HTTP::Request with the appropriate auth and ISTR I sent a patch for HTTP::Server to avoid the clash with the similarly named modules that it provides. I guess that you'd probably see the same problem if you installed HTTP::Server. Unfortunately there's not much that can be done in HTTP::UserAgent itself to prevent this short of renaming the modules, which might be a good idea in the medium term but not without some deprecation cycle as the module is a dependency of other modules. It might be good if you could provide the actual code that is failing so we can test however. |
|
Hi, Thanks for the explanation. 👍 Here is some code that shows the problem ... shell> rakudobrew build moar 2017.07 HTH |
|
The problem seems to be related to 3 things:
1 and 2 seems to be trying to avoid circular dependency re The fact this only happens when loading Bailador first points at a rakudo bug. |
|
Yeah I was hesitating on calling it as a rakudo bug without collecting some tangible evidence but yeah I was inclining toward that position. But this observation gives a starting point to make a standalone reproducer/ I'll take a look at the weekend to see if we can work around this. |
|
Having had a quick look I think the sensible thing to do would to move all the exception classes into a single module and rationalise the names somewhat as this is not ideal by any standard :) Even if there is a bug in the Stash merge somewhere it will be neater and prevent any future problems. Unless anyone has any strong objections, I will do this today. |
|
For what it's worth, doing what I described above and using the more complex version of |
|
I'll merge the above branch in a bit unless someone finds a problem with it. |
|
Thanks for sorting this ! 👍 |
I recently upgraded to Rakudo 2017.07 - after installing Bailador with zef I installed HTTP::UserAgent.
Starting Bailador now gives the error:
===SORRY!===
P6M Merging GLOBAL symbols failed: duplicate definition of symbol Response
Is it possible there is a symbol clash with 'Response'?
The text was updated successfully, but these errors were encountered: