BrightSpots / rcv

Ranked Choice Voting Universal Tabulator
Mozilla Public License 2.0
74 stars 19 forks source link

support creation and execution of batches of contests #548

Open tarheel opened 3 years ago

tarheel commented 3 years ago

Give users a way to construct a list of config files and save it to disk.

If this saved batch file is a shell script (which would have to be platform-specific), each line could just be a separate call to the rcv application using the standard CLI syntax.

A more elegant (but perhaps a tiny bit more complicated) approach would be to make the batch file simply a list of config file paths, and the tabulator could have CLI and GUI options for executing a list of configs. This would also be more efficient, because the JVM wouldn't have to spin up and shut down anew for each contest. (Doesn't matter if the number of contests is small or the size of the contests is large, but it could make a meaningful difference in the overall running time if there are a large number of small contests.)

chughes297 commented 1 year ago

I'm not 100% clear reading the description how this would work for the user. Would workflow be:

1) Create config files for each contest to tabulate 2) Create a batch file pointing to each of those files 3) select "tabulate multiple contests" or something along those lines from a dropdown 4) Select the batch file 5) Tabulate

Is that a likely workflow?

tarheel commented 1 year ago

In my original description of this issue, the idea was that you'd have a separate config file per contest and then a batch file that simply lists all of the desired config files. I guess the GUI would have to provide 1) a way to create/edit a batch file and 2) a way to load and run a batch file.

The internal implementation of this is easy, but the GUI updates would be tedious... so unless someone is asking for this, I'm inclined to continue punting on it.