Closed jonathanstowe closed 5 years ago
So the issue is that auth
for a dist not pointing at a META6.json is ''
(and the version *
and the api *
). It may end up that an auth of ''
will match against any other auth, but I still have to think about the ramifications.
Either way, I would always suggest using -I.
instead of -Ilib
. Consider if a dependency does use HTTP::UserAgent:ver<Some-Old-Version>
... the -Ilib
repo would pick this up because its version will be *
, when in reality we wanted it to load the installed older version.
I think the following would work for both -I.
and -Ilib
-- for post and pre 2019.01
:
use HTTP::Response:auth(try EVAL q[$?DISTRIBUTION.meta<auth>] // 'github:sergot')
I think this is to do with a recent change in rakudo but putting it here as a reminder.
In the 06c03a7a I fully qualified the use of HTTP::Request and HTTP::Response so as not to conflict with the similarly named classes in HTTP::Server - this has worked for two and a half years but with the
We now get:
I guess the easiest thing to do would be to remove the auth qualification but that would put back the conflict with the HTTP::Server. The better solution would be to rename the classes under the
HTTP::UserAgent
package but that is likely to break existing code in the wild.Can classes be deprecated like routines? If so it could be rename the classes but leave the existing ones as stubs with the deprecation and then remove them in a month or so.
UPDATE
Of course the correct way now to run the tests individually is with
So it can use the provides in the META file.