Tell GitHub to add Julia dependencies

GitHub has a feature to display dependencies for a repo (mainly for JavaScript and Ruby)

https://help.github.com/articles/listing-the-packages-that-a-repository-depends-on

It works by checking a json file or gemfile. So I sent Github a message saying that it should be easily possible for them to also check the REQUIRE file for Julia packages for dependencies. They responded by saying they have forwarded this request to their team, but cannot guarantee anything.

So if you are also interested in seeing this feature, perhaps consider sending a support ticket to express your interest in having a Julia dependency feature on the Github website. If more than one person expresses an interest, it might have a chance of becoming a reality.

Regards,

7 Likes

I love this idea, especially given how tied into the GitHub ecosystem the Julia community already is. For what it’s worth, below is the text of the support ticket I filed. Feel free to adopt some/all of it if you want to send a similar request.


The Julia programming language has adopted a standard format for packages that includes a way to specify dependencies, described here: https://docs.julialang.org/en/stable/manual/packages/#Requirements-Specification-1 . The developers of the Julia language and the larger Julia community have eagerly embraced GitHub as a platform, relying on it for everything from organizing groups of developers (e.g. https://github.com/JuliaStats, https://github.com/JuliaIO, https://github.com/JuliaDB, and many more) to serving as the central store for Julia packages. Given how integral GitHub already is in the Julia ecosystem, having the ability to visualize the dependencies of any package right on the GitHub web interface would be immensely helpful. Please consider adding support for parsing and presenting the data in Julia packages’ REQUIRE files in addition to the existing support for Gemfile and package.json files.

2 Likes

Nicely written. Could you please open an issue so that the community could just give a :+1:?
(EDIT: if you have opened an issue already, can you just link it?)

Would it not make to sense to wait until the new formats for Pkg3 are finalized? If I understood correctly, the REQUIRE file will go away.

Hi, made an issue for now,

That would make sense too… perhaps mention it in your support ticket if you send one?

Note that currently all packages use the current REQUIRE format, so it makes sense to use that for now. If packages do transition to a different format for the REQUIRE file in the future, not all packages are guaranteed to transition very quickly, so it still makes sense to support the current format and then extend to the new one when it becomes available

So now that Julia 1.0 is released with the new dependency graph manifest format, there is no reason for waiting longer to have Julia dependencies detected on github.

3 Likes

I just came here to ask about this, found this thread. Has there been any movement on this?

Currently, I am not aware of any updates related to this. However, I definitely believe the Julia Manifest.toml format is suitable for computing the dependency graphs.

This is a bit of a long shot, but maybe it would help if someone could implement a proof-of-concept dependency resolver thingy in whatever language Github is written in (Ruby IIRC), and then submit that to Github with a permissive license, so that they can use it as inspiration. Maybe also a point-of-contact at JuliaComputing to field any questions their team might have.

1 Like