feat: handle multiple input manifests #14
No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
test/execute
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
#15 feat: disable ANSI-colored output (NO_COLOR)
squel/steam-manifest
Reference
squel/steam-manifest!14
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "squel/failure"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
moving the failure checking to func main allows us
to handle multiple manifest inputs as follows:
(changed) as specified in a more recent
manifest-file and thus in a later iteration, we
will not show errors because they are checking
against an old hash as specified in an old
manifest file
iteration, but present in a later manifest-file,
we will not show errors because they are missing
this is with the following caveats:
recent or otherwise "most correct". this will
be an issue because the ManifestID by
Valve/Steam (secondary part of the filename:
AppID_ManifestID.manifest) is not
incrementative and thus not in alphabetical
order (which is what shells will expand
wildcards to). an improvement will be check the
manifests' CreationTime metadata
be shown last in the output, instead of in the
order in which they completed processing. this
is fine to me however, since it was
multithreaded and thus semi-random to begin with
and does not impact UX whatsover. if anything
this is an improvement imo
a long Action, plus the failures are counted in
two different places but ¯_(ツ)_/¯
This is handling failure checking as outlined in:
// TODO: ideally, this would be handled/checked at the cCtx.Args() for-loop,// so incase there are multiple manifest files input by the user (multipart// manifest), it will not trigger a warning/failure state if entries are// declared or updated in another manifest-file. so this will be the case// for both failure states: incorrect hash and missing fileEDIT:
78dafae48aTodo: handle CreationTime metadata, instead of assuming the last one to be correct, as outlined in:squel/steam-manifest@6811194928/main.go (L105-L109)and 68111949285b158b86ec620d8eae90770d38a550 's commit message:handle multiple input manifeststo failure checking: handle multiple input manifests6811194928to5741bf6f805741bf6f80again to resolve conflicts... manually reapplying the changes made because rebase was being a PITA..differences being:
[20]bytewith[sha1.Size]byte--show-failedargument to show missing entries by default (argument was intended to be called--show-missing)fwiw fix for
e03ab6da2d's commit message: it makes825054bdc1redundant, not the commit hash specified in the messagefailure checking: handle multiple input manifeststo WIP: failure checking: handle multiple input manifestsWIP: failure checking: handle multiple input manifeststo failure checking: handle multiple input manifestsfailure checking: handle multiple input manifeststo feat: handle multiple input manifests