PuffinPlot issue tracker

Bug: a88/eaf

ID : eafd4278-9f6f-4960-9e53-c47c2b6de0c6
Short name : a88/eaf
Status : open
Severity : minor
Assigned :
Reporter : Pontus Lurcock <pont@talvi.net>
Creator : Pontus Lurcock <pont@talvi.net>
Created : Thu, 12 Sep 2013 14:57:26 +0000
Target : 1.5
Summary : Macro recording / script building / undo [275]

Comment: --------- Comment ---------
ID: 3d9fcdbb-43e6-4d1e-917a-999a5f5455da
Short name: a88/eaf/3d9
From: Pontus Lurcock <pont@talvi.net>
Date: Thu, 12 Sep 2013 14:57:26 +0000

Although PuffinPlot has a scripting mode, it's not really coupled 
to interactive operation: it would be useful to produce a script from
an interactive session which would replay all that session's operations
to recreate the same result. This would be an excellent way to ensure
that results were reproducible, and to make PuffinPlot processing
workflows inspectable. It could probably be done using some form of
the GoF Command Pattern. Python seems like the most sensible choice
for the scripts, since PuffinPlot already bundles the Jython 
interpreter. This would also lay a foundation for undo/redo in 
PuffinPlot, although this would additionally require coding an inverse
operation for each PuffinPlot command -- perhaps not worthwhile until
some demand for undo/redo has been demonstrated.

Comment: --------- Comment ---------
ID: 6f5b85f1-6c6d-4fca-a4b4-6559d1590312
Short name: a88/eaf/6f5
From: Pontus Lurcock <pont@talvi.net>
Date: Fri, 24 Oct 2014 14:38:07 +0000

It should be possible to generate a script from the current state of
PuffinPlot, without logging all the user's actions. Just loop through
all current datum objects, samples, and sites, churning out commands to
produce whatever selections and calculations are currently present,
then export all the calculations. If it's OK to generate from the 
PuffinPlot file we can archive that with the script. If not, things get
a little trickier since we need to archive the original files and
"replay" any relevant import options. Prefs file also needs to be
exported and archived.

Comment: --------- Comment ---------
ID: bccaa411-b3a1-4471-9311-12064a5f5b36
Short name: a88/eaf/bcc
From: Pontus Lurcock <pont@talvi.net>
Date: Wed, 29 Oct 2014 20:04:43 +0000

On reflection, if we're allowed to archive the PuffinPlot file,
reproducibility should be achievable with a simple suite.readFiles(...)
and suite.doAllCalculations() followed by the appropriate data export.
Almost too easy!