HomeSoftware Heritage

Rename bundle types and use SWHIDs everywhere instead of raw sha1_git

Description

Rename bundle types and use SWHIDs everywhere instead of raw sha1_git

The interfaces were a bit messy, as bundle types sometimes included the object
type ('directory' was also a bundle type) and sometimes did not.

Instead, the bundle types now do not include the object type at all, which
means users do no have to care about what cooker will cook their bundle,
they just need to provide a bundle type.

Instead, the information about the object type is now carried along the
object id, in a SWHID.

This allows simplifying interfaces and removing multiple convertions
(especially between hex and bytes).

This is unfortunately a pretty large commit, as it is easier to change
everything at once, than to try to make it incrementally and adding
temporary convertions at some moving borders.

It also invalidates the existing cache entirely, as it used bundle types
and object ids as keys, which are now changed.

Details

Provenance
vlorentzAuthored on Aug 18 2021, 3:33 PM
vlorentzPushed on Aug 26 2021, 11:52 AM
Differential Revision
D6112: Rename bundle types and use SWHIDs everywhere instead of raw sha1_git
Parents
rDVAUd9e712cf7082: Add support for releases pointing to other releases or contents.
Branches
Unknown
Tags
Unknown
References
tag: v1.0.0
Build Status
Buildable 23186
Build 36175: test-and-buildJenkins console · Jenkins