From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!newsfeed.fsmpi.rwth-aachen.de!newsfeed.straub-nv.de!reality.xs3.de!news.jacob-sparre.dk!loke.jacob-sparre.dk!pnx.dk!.POSTED!not-for-mail From: Tero Koskinen Newsgroups: comp.lang.ada Subject: Re: Ada package registry? Date: Sun, 31 Jan 2016 00:14:01 +0200 Organization: JSA Research & Innovation Message-ID: References: <02241ec4-0f95-4f63-9abc-092f167eb59e@googlegroups.com> NNTP-Posting-Host: 178-55-65-192.bb.dnainternet.fi Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Trace: loke.gir.dk 1454192036 31708 178.55.65.192 (30 Jan 2016 22:13:56 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Sat, 30 Jan 2016 22:13:56 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 In-Reply-To: Xref: news.eternal-september.org comp.lang.ada:29295 Date: 2016-01-31T00:14:01+02:00 List-Id: Hi, 30.1.2016, 9.35, Dmitry A. Kazakov wrote: > On 2016-01-29 23:27, Randy Brukardt wrote: >> >> Yet hardly anyone does that. To have some sort of automated >> repository would require authors to do more: mirror their work >> somewhere they're not used to, or write a complex description for >> the repository, or more. > > There is PAD http://pad.asp-software.org but it is not very suitable > for software libraries. > >> (What are the odds that such a repository could figure out how to >> pull files from the version control on RRSoftware.Com and >> Ada-Auth.org, for instance? It could surely be done, but it would >> require some custom coding and I can't see how that would happen. >> In the absence of that, one is clearly going to have a subset of >> offerings...) > > I think that most users need more than raw source code. For example, > AWS and GtkAda are much too complex to install manually. > > Any repository to be useful must provide installers for sources and > the run-time for an exploding number of targets. > > It also must maintain dependencies between packages and tests. > > Not to happen, in short. Many languages have this sort of package repository and package management tools: NPM for Node.js / Javascript - https://www.npmjs.com/ Cargo for Rust - https://crates.io/ DUB for D language: - http://code.dlang.org/ Hackage for Haskell - https://hackage.haskell.org/ PyPI (Python Package Index) for Python - https://pypi.python.org/pypi RubyGems for Ruby - https://rubygems.org/ CPAN for Perl - http://www.cpan.org/ Maven for Java - http://maven.apache.org/ Clojars for Clojure - https://clojars.org/ Usually the repositories are maintained in "wiki"-style and anyone can update the package details (within certain limits). This causes some security concerns/implications, but in general there is not that much abuse and the repositories work well enough. The package repository management tool is used like this: $ language_package_mananager install X Downloading dependencies for 'X', please wait a while... Downloading X... Package 'X' installed! $ Once the package (a library usually) is installed (to your home directory), you can link it to your program and simply use it. People using other programming languages have managed to create these package repositories, so it is a shame if Ada programmers cannot manage to do the same. You of course need to solve many problems related to this domain, but they are already solved by others, so one should be able to copy the design and just do the Ada implementation. On the other hand, one could think that the package management systems provides by Linux distributions and BSD operating systems are enough. But generally, these are not that flexible. For example, the language specific package managers allow one to install multiple versions of the packages at the same time and the code can be even taken from the version control directly. Yours, Tero