Live data from Hacker News

First beta release of Alire, the package manager for Ada/SPARK

blog.adacore.com

11–20 of 22 posts

Re: First beta release of Alire, the package manager for Ada/SPARK

#11
Congratulations to all involved, this looks like a great addition to the Ada ecosystem.

I like the use of tags to clarify which projects are in SPARK.

I realise it's in beta, but, some feedback: on the linked Crates page, there doesn't seem to be a way to browse the source of the projects. I was expecting to be able to click a link and be taken to something akin to a GitHub page, but this doesn't seem to be possible. Some of the crates link to project home pages.

Also, it would be neat if the Network graph page showed which projects were in SPARK, perhaps by using colour.

Re: First beta release of Alire, the package manager for Ada/SPARK

#13

All I hope is that they'll think about corporate firewalls and provide a simple way to mirror the whole thing (including their gnat-subscriber-only & tools&libs versions). Or at least provide some kind of Web page with all the download links for the transitive dependencies for a package... PYPI kills me everytime I need to run any ML stuff, and I wish there was a systematic page to d/l all transitive dependencies (at…

You can grab and build the index from here [0], and add your own indices (with varying priorities).

But if you want to actually proxy the individual download files, you'll need to iterate over the index files themselves, download them, and change their locations, which isn't overly difficult, but seems a bit beyond scope of a community index.

[0] https://github.com/alire-project/alire-index

Re: First beta release of Alire, the package manager for Ada/SPARK

#14
post #13

All I hope is that they'll think about corporate firewalls and provide a simple way to mirror the whole thing (including their gnat-subscriber-only & tools&libs versions). Or at least provide some kind of Web page with all the download links for the transitive dependencies for a package... PYPI kills me everytime I need to run any ML stuff, and I wish there was a systematic page to d/l all transitive dependencies (at…

You can grab and build the index from here [0], and add your own indices (with varying priorities). But if you want to actually proxy the individual download files, you'll need to iterate over the index files themselves, download them, and change their locations, which isn't overly difficult, but seems a bit beyond scope of a community index. [0] https://github.com/alire-project/alire-index

Thanks for this, shakna.

As I'm trying to upgrade our whole bash-monster GNAT+gnatcoll+lal+florist+gtkada+younameit to the latest GNAT PRO continuous delivery, I wish I could just let some better tool do this...

Re: First beta release of Alire, the package manager for Ada/SPARK

#15

All I hope is that they'll think about corporate firewalls and provide a simple way to mirror the whole thing (including their gnat-subscriber-only & tools&libs versions). Or at least provide some kind of Web page with all the download links for the transitive dependencies for a package... PYPI kills me everytime I need to run any ML stuff, and I wish there was a systematic page to d/l all transitive dependencies (at…

You could create a zip of the contents of site-packages and add that your PYTHONPATH.

Look for the metadata.json, in the dist-info directory

   {
      "requires": [
        "chardet (>=3.0.2,=2.5,=1.21.1)",
        "certifi (>=2017.4.17)"
      ]
    }
which I see isn't in all dist-info dirs.

You could also look at

    pip download --no-binary ':all:' --src src requests
It will download the source archives for those package and its deps. I think what you want is within reach. My email is profile, feel free to ask questions.

Re: First beta release of Alire, the package manager for Ada/SPARK

#16
post #15

All I hope is that they'll think about corporate firewalls and provide a simple way to mirror the whole thing (including their gnat-subscriber-only & tools&libs versions). Or at least provide some kind of Web page with all the download links for the transitive dependencies for a package... PYPI kills me everytime I need to run any ML stuff, and I wish there was a systematic page to d/l all transitive dependencies (at…

You could create a zip of the contents of site-packages and add that your PYTHONPATH. Look for the metadata.json, in the dist-info directory { "requires": [ "chardet (>=3.0.2, =2.5, =1.21.1)", "certifi (>=2017.4.17)" ] } which I see isn't in all dist-info dirs. You could also look at pip download --no-binary ':all:' --src src requests It will download the source archives for those package and its deps. I think what y…

Thanks for the ideas. I had a free AWS instance doing uplink tshark capture during pip install and generated a page with links to all the dependencies (upgrade to a tar of all those later, when discovered the cache option for pip). But I let the instance go when it wasn't free anymore. Yes I'm cheap.

Re: First beta release of Alire, the package manager for Ada/SPARK

#18
It appears they may need more metadata about packages.

The example "Finding an Ada PDF library" is https://alire.ada.dev/search/?q=pdf. That leads to https://alire.ada.dev/crates/apdf.html, with

    Apdf
    Standalone, portable package for producing dynamically PDF documents

    Author: Gautier de Montmollin
    Maintainer: fabien.chouteau@gmail.com
    License: MIT
    Version: 5.0.0
    Dependencies: No dependency.
    Tags: No tags.
    Badge: [Copy image location: https://img.shields.io/endpoint?url=https://alire.ada.dev/badges/apdf.json]
Searching for Apdf points to http://www.a-pdf.com/, which doesn't look like it's Ada-ish. Is Apdf https://apdf.sourceforge.io/? [Ah, yes it is.]

Re: First beta release of Alire, the package manager for Ada/SPARK

#19

Congratulations to all involved, this looks like a great addition to the Ada ecosystem. I like the use of tags to clarify which projects are in SPARK. I realise it's in beta, but, some feedback: on the linked Crates page, there doesn't seem to be a way to browse the source of the projects. I was expecting to be able to click a link and be taken to something akin to a GitHub page, but this doesn't seem to be possible.…

Thanks for your feedback :)

- there doesn't seem to be a way to browse the source of the projects.

That's true, so far the contributors for crates have the option to provide a link to a website. This link can be to the repo, but it is not mandatory.

- it would be neat if the Network graph page showed which projects were in SPARK

Good idea :)

Please open issues on the repo so we can keep track of your ideas: https://github.com/alire-project/alire

Re: First beta release of Alire, the package manager for Ada/SPARK

#20
post #2

This seems useful. One thing Ada has been lacking is a central place to upload and use dependencies. However, I’ve found that pure Ada code without a package manager is pretty easy to integrate using the gprbuild tool; you just copy the dependency’s .ads and .adb files into your project and add their enclosing folder to the list of source directories. gprbuild figures our how to build them pretty much automatically.…

Another options would be to only have the TOML files and generate gprbuild file on the fly. I think that is something we will consider.
Post reply on HN