Crate list_by_earliest_revision
source ·Expand description
Computers, for any content or directory, the first revision or release that contains it.
The algorithm is:
- Initialize an array of timestamps (as AtomicI64), one for each node, to the maximum timestamp
- For each revision/release (in parallel): a. Get its author date (if none, skip the revision/release) b. traverse all contents and directories contained by that revision/release. For each content/directory, atomically set the timestamp to the current rev/rel’s timestamp if it is lower than the existing one
- Write the array
Structs
- Args 🔒Returns a directory of CSV files with header ‘author_date,revrel_SWHID,cntdir_SWHID’ and a row for each of the contents and directories with the earliest revision/release that contains them.
Functions
- Mark any content reachable from the root
revrel
as having a first occurrence older or equal to this revision