Skip to content
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

Check source-url #427

Open
JJ opened this issue Feb 14, 2019 · 7 comments
Open

Check source-url #427

JJ opened this issue Feb 14, 2019 · 7 comments

Comments

@JJ
Copy link
Contributor

JJ commented Feb 14, 2019

For some reason, source-urls that start with git: are used throughout many modules, and they fail to install, as is shown here, for instance. We should check that when they are added to the ecosystem, at least those that are added here.

@JJ
Copy link
Contributor Author

JJ commented Feb 14, 2019

From this comment by @zoffixznet it follows that it's checked and logged somewhere. However, I don't see anything is being done about it, not that I'm aware of. Any idea?

@jonathanstowe
Copy link
Contributor

It's not that:

===> Searching for: Syndication
===> Updated cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Updated p6c mirror: http://ecosystem-api.p6c.org/projects1.json
===> Testing: Syndication:ver<1.0.0>:auth<github:retupmoca>
===> Testing [OK] for Syndication:ver<1.0.0>:auth<github:retupmoca>
===> Installing: Syndication:ver<1.0.0>:auth<github:retupmoca>

I think that Zef deals with those URIs in a different way that it does with http ones, but it definitely works. Is it possible that the smoke tester itself can't fetch using that scheme?

@jonathanstowe
Copy link
Contributor

jonathanstowe commented Feb 14, 2019

The ones that it definitely can't deal with are the ones that github gives you like:

   git@github.com:jonathanstowe/p6-jdf.git

Which don't parse as a valid URI.

@JJ
Copy link
Contributor Author

JJ commented Feb 14, 2019

Well, from the code, which must be somewhere over here, I would say there's something wrong. For starters, that URL is not correct, but the checker says it is. I have met several modules like that that fail in Blin, so there must be something wrong with them, like the one I point to. In that case it's a timeout, but it's always a Timeout. So, I don't know. As a matter of fact, it's not the kind of URL you can copy and paste into your bar. So maybe zef special cases them, but that need not be stable and is not documented.

@JJ
Copy link
Contributor Author

JJ commented Feb 14, 2019

And obviously, git clone git://github.com/retupmoca/p6-syndication.git works. Might not be a special case, but it works as a clone-url, not as a source-url. A https prefix works as both...

@jonathanstowe
Copy link
Contributor

jonathanstowe commented Feb 14, 2019

Well, if you feed the http://ecosystem-api.p6c.org/projects1.json to :

#!/usr/bin/env perl6
  
use v6;

use META6;
use JSON::Class;

my constant Projects = Array[META6] but JSON::Class;

sub MAIN(IO() $meta-path ) {

    my $json = $meta-path.slurp;

    my $projects = Projects.from-json($json);

    $projects.grep(*.source-url.defined).map(*.source-url).grep(/^git:/)>>.say

}

You'll notice that, er, there are quite a few of them. About half.

The https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json has the source-url re-written to the URI of the distribution tarball.

@JJ
Copy link
Contributor Author

JJ commented Feb 15, 2019

That's a problem, then. From modules.perl6.org that's the URL to go to when you click on the GitHub link.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants