ess.reduce.nexus.merge.MergePlan#
- class ess.reduce.nexus.merge.MergePlan(files, issues, stamps)[source]#
Runs to merge, and what the checks found. Holds no data of the runs.
Make one with
plan_merge().- __init__(files, issues, stamps)#
Methods
Attributes
errorsThe files of the runs, absolute, in the order of their start times.
issuesSize and modification time of each file, to detect a changed file.
-
stamps:
tuple[tuple[int,int],...]# Size and modification time of each file, to detect a changed file.
- write(output)[source]#
Write the merged file.
The file is written under a temporary name next to
outputand renamed when complete, sooutputnever holds a partial file.- Parameters:
output (
Path|str) – Path of the merged file. Must not exist.- Returns:
Path–output.- Raises:
ValueError – If the plan has errors.
RuntimeError – If a file changed since the plan was made.
FileExistsError – If
outputexists.