Page MenuHomeSoftware Heritage
Feed Advanced Search

Apr 27 2022

franckbret updated the diff for D7654: crates: create one origin per package instead of per version.

Updating D7654: Crates.io lister, create one origin per package instead of per version

Apr 27 2022, 2:34 PM
franckbret retitled D7654: crates: create one origin per package instead of per version from Change 'extra_loarder_arguments' arg 'name' to 'package_name', and rename 'visit_type' from 'rust-crate' to 'crates' in order to be consistent with what have been decided for the crate loader, see https://forge.softwareheritage.org/D7501. to Refactor crates.io lister.
Apr 27 2022, 12:52 PM
franckbret updated the diff for D7654: crates: create one origin per package instead of per version.

Refactor crates.io lister

Apr 27 2022, 12:51 PM

Apr 26 2022

franckbret added a comment to D7654: crates: create one origin per package instead of per version.

Ok, but what will be the usage of versioned artifacts as extra_loader_arguments?

We don't want to create one origin per version of a package.
We want all versions of a packages seen under the same origin (well, at the time of the ingestion).

See this thread where we made the mistake for the maven ingestion [1]

[1] https://sympa.inria.fr/sympa/arc/swh-devel/2022-04/msg00043.html

Is that possible at all for the rust ingestion?

Cheers,

Apr 26 2022, 6:23 PM
franckbret added a comment to D7654: crates: create one origin per package instead of per version.

wait... we are creating one origin for each version of the crate?

Yes it is.

I guess Instead of returning an url for a version (i.e: https://static.crates.io/crates/{package_name}/{package_name}-{version}.crate ) lister should return an http api url (i.e : https://crates.io/api/v1/crates/{package_name} ) ?

Yes, this one.

And i'd say, return the list of associated versioned artifacts as extra_loader_arguments.

@vlorentz thoughts?

Apr 26 2022, 5:56 PM
franckbret added a comment to D7654: crates: create one origin per package instead of per version.

Once @vlorentz's comment is adressed (we should list one origin, the package i guess, and
gather all crate versions under that same origin).

Make sure your commit message (one to one with the diff description) is one short
summary (in imperative form) [1]. For some extra description, use multiple lines.

[1] https://docs.softwareheritage.org/devel/contributing/git-style-guide.html

TIA

Apr 26 2022, 4:43 PM
franckbret added a comment to D7654: crates: create one origin per package instead of per version.

wait... we are creating one origin for each version of the crate?

Apr 26 2022, 4:41 PM
franckbret requested review of D7654: crates: create one origin per package instead of per version.
Apr 26 2022, 10:57 AM
franckbret added a comment to D7501: Rust lang, Crates loader.

Proposed evolution on crate lister to be consistent with the loader here :

Apr 26 2022, 10:54 AM
franckbret added a comment to D7501: Rust lang, Crates loader.

yes, rename to package_name, the other change would make for a much wider impact (than you probably want to deal with ;).

It would not. The get_loader function is not used anywhere outside of this cli.py

right, nvm then.

I was thinking of something else (iirc, there is something similar in the lister or something)

i'd prefer that renaming nonetheless though, it's more explicit.

Apr 26 2022, 10:33 AM
franckbret added inline comments to D7501: Rust lang, Crates loader.
Apr 26 2022, 10:32 AM
franckbret updated the diff for D7501: Rust lang, Crates loader.

Refactor according to @vlorentz & @ardumont comments.

Apr 26 2022, 10:31 AM

Apr 25 2022

franckbret updated the diff for D7501: Rust lang, Crates loader.

fix missing whitespace in loader specification documentation

Apr 25 2022, 4:26 PM
franckbret updated the diff for D7501: Rust lang, Crates loader.

Add crates package loader specification

Apr 25 2022, 4:04 PM

Apr 23 2022

franckbret added a comment to D7501: Rust lang, Crates loader.

Not sure you have seen this comment before, and because its an important point to go further, I repost :

Apr 23 2022, 9:20 AM
franckbret updated the diff for D7501: Rust lang, Crates loader.

Trying another alternative to make mypy happy (don't get why got no error in dev env running tox -e mypy or mypy -c mypy.ini but fail on CI..)

Apr 23 2022, 9:09 AM
franckbret updated the diff for D7501: Rust lang, Crates loader.

mypy multiline ignore fix

Apr 23 2022, 8:24 AM

Apr 22 2022

franckbret updated the diff for D7501: Rust lang, Crates loader.

Rebase upstream

Apr 22 2022, 5:08 PM
franckbret updated the diff for D7501: Rust lang, Crates loader.

Fixes after ardumont and vlorentz review

Apr 22 2022, 3:35 PM
franckbret added a comment to D7501: Rust lang, Crates loader.

Some fixes after @Alphare review. Mainly add 'name' and 'version' to loader args as those are given through the 'extra_loader_arguments' from lister.

One important thing to note after adding 'name' and 'version' args is that it does not work with the CLI in the docker environment..

franck@debian-franck:~/workspace/swh-environment/docker$ docker-compose exec swh-loader swh loader run crates "https://static.crates.io/crates/micro-timer/micro-timer-0.4.0.crate" version="0.4.0" name="micro-timer"

Traceback (most recent call last):
...
  File "/src/swh-loader-core/swh/loader/cli.py", line 104, in run
    loader = get_loader(type, url=url, storage=conf["storage"], **kw)
TypeError: get_loader() got multiple values for argument 'name'

What do you think about that ?
Better renaming 'name' to 'package_name' in the crate lister and loader or should the cli arg evolve to something like 'loader_name'?

Apr 22 2022, 3:35 PM

Apr 14 2022

franckbret added a comment to D7501: Rust lang, Crates loader.

Some fixes after @Alphare review. Mainly add 'name' and 'version' to loader args as those are given through the 'extra_loader_arguments' from lister.

Apr 14 2022, 4:40 PM
franckbret retitled D7501: Rust lang, Crates loader from WIP: Rust lang, Crates loader to Rust lang, Crates loader.
Apr 14 2022, 4:32 PM
franckbret added inline comments to D7501: Rust lang, Crates loader.
Apr 14 2022, 4:32 PM
franckbret updated the diff for D7501: Rust lang, Crates loader.

Some fixes after @Alphare review. Mainly add 'name' and 'version' to loader args as those are given through the 'extra_loader_arguments' from lister.

Apr 14 2022, 4:29 PM

Apr 11 2022

franckbret published D7501: Rust lang, Crates loader for review.

Here is a first crates.io loader.

Apr 11 2022, 5:30 PM

Mar 28 2022

franckbret closed D7367: Start rust crates lister.
Mar 28 2022, 8:51 AM
franckbret committed rDLSfea6fc04aab5: lister: Add new rust crates lister (authored by franckbret).
lister: Add new rust crates lister
Mar 28 2022, 8:51 AM
franckbret updated the diff for D7367: Start rust crates lister.

Rebase

Mar 28 2022, 8:45 AM

Mar 24 2022

franckbret retitled D7367: Start rust crates lister from WIP: Start rust crates lister to Start rust crates lister.
Mar 24 2022, 9:14 AM
franckbret updated the diff for D7367: Start rust crates lister.

lister: Add new rust crates lister

Mar 24 2022, 8:36 AM
franckbret planned changes to D7367: Start rust crates lister.

Hi, thanks you all for the review.

Mar 24 2022, 8:06 AM

Mar 22 2022

franckbret updated the diff for D7367: Start rust crates lister.

Fixes after first code review

Mar 22 2022, 4:15 PM

Mar 21 2022

franckbret updated the diff for D7367: Start rust crates lister.

Docstring

Mar 21 2022, 12:31 PM

Mar 18 2022

franckbret planned changes to D7367: Start rust crates lister.

Pulling this as draft

Mar 18 2022, 10:46 AM
franckbret requested review of D7367: Start rust crates lister.
Mar 18 2022, 10:45 AM
franckbret abandoned D7376: Add tasks for crates lister.

Cancelling to move those changes in D7367

Mar 18 2022, 10:26 AM

Mar 17 2022

franckbret requested review of D7376: Add tasks for crates lister.
Mar 17 2022, 7:42 PM