bertsky / workflow-configuration

a makefilization for OCR-D workflows, with configuration examples
Apache License 2.0
9 stars 5 forks source link

track versions of configured tools, warn about breaking changes #16

Open bertsky opened 4 years ago

bertsky commented 4 years ago

Development of OCR-D processors still has and will likely continue to have a fast pace. Often however, improvements in a processor may also break existing workflows. Especially when many different workflow configurations are flying around, it is difficult to keep track manually and adapt them along with component updates.

As a mitigation, workflow-configuration should start supporting version checking in configurations:

  1. When using the static pattern rule, introduce an optional variable VERSION to annotate workflows with the release number at the time of writing the configuration (i.e. when guaranteed to work correctly).
  2. When running a workflow step with the static pattern rule, prior to the actual processing, compare the TOOL's current version with the annotated VERSION and print a warning when the major number is higher.

Seeing such a warning, users can then go and look for the damage done, and either downgrade the processor, or update the workflow configuration (perhaps parameters or dependents, but at least VERSION).