Commit Graph

95 Commits

Author SHA1 Message Date
RunasSudo cca097f943
Use Pest-based parser for BLT files
Support comments, optional newlines, etc.
2021-07-23 16:45:54 +10:00
RunasSudo 3b8ccd097e
Extend early bulk election to multiple vacancies if the leading candidates cannot be overtaken 2021-07-23 01:38:37 +10:00
RunasSudo bea51611b0
Implement Australian Capital Territory STV 2021-07-22 20:31:06 +10:00
RunasSudo 2ef7bf24f2
Correctly compute vote required for election when using different quotas/quota criteria 2021-07-21 13:43:16 +10:00
RunasSudo ed4a86e699
More aggressive early bulk election 2021-07-21 00:46:32 +10:00
RunasSudo c070ec8eae
NZ Meek STV validated against Hill (2006) implementation 2021-07-13 20:44:09 +10:00
RunasSudo 0d9196a951
Refactoring 2021-06-29 16:48:02 +10:00
RunasSudo 34545ad179
Check for ties when electing candidates with surpluses
Refactor constraint-related code into constraints module
2021-06-28 00:56:28 +10:00
RunasSudo c12743285a
Add documentation on constraints 2021-06-27 23:15:33 +10:00
RunasSudo 31eda1fcec
Add test cases for constraints 2021-06-27 22:46:37 +10:00
RunasSudo ba3db26263
Describe use of constraints in lead-in text 2021-06-27 22:24:25 +10:00
RunasSudo 38eef74e77
Implement constraints (guard-doom method) for CLI 2021-06-27 21:57:24 +10:00
RunasSudo c563654ace
Implement constraint matrix logic and test case 2021-06-27 17:49:28 +10:00
RunasSudo ce8b252453
Implement --no-early-bulk-elect 2021-06-23 00:52:25 +10:00
RunasSudo 122308f2d2
Update test cases
Validate candidate names
Validate stage names
2021-06-22 16:40:38 +10:00
RunasSudo dda62bb4a9
Add CSM15 test case for Wright STV 2021-06-22 16:40:38 +10:00
RunasSudo 90beffa9ff
Fix error in scotland_linn07_gfixed5 test resulting in failure to actually use GuardedFixed 2021-06-20 01:48:25 +10:00
RunasSudo cd42899ba8
Add test case for NZ Meek STV 2021-06-20 01:48:25 +10:00
RunasSudo a2e4ab557c
Implement test case for 2006 Meek STV 2021-06-19 02:05:27 +10:00
RunasSudo 13f1885eb5
Implement features required for 2006 Meek STV
viz. --round-{tvs,votes,weights}, --defer-surpluses, --meek-immediate-elect and --meek-surplus-tolerance
2021-06-19 02:05:27 +10:00
RunasSudo 2ea8b4b757
Add tests for Meek STV 2021-06-16 21:51:13 +10:00
RunasSudo 4ebb6474fd
Implement Meek STV 2021-06-16 18:44:24 +10:00
RunasSudo f395e6f064
Implement guarded fixed-point arithmetic 2021-06-14 22:11:33 +10:00
RunasSudo 3bbef933bb
Refactor and add documentation 2021-06-14 20:43:36 +10:00
RunasSudo c9d714bf25
Add test cases for tie-breaking 2021-06-13 15:03:10 +10:00
RunasSudo 2dc5ed963b
Implement forwards and backwards tie-breaking 2021-06-13 00:15:14 +10:00
RunasSudo 5d491687b4
Code fixups 2021-06-12 21:16:53 +10:00
RunasSudo 31538cd3fc
Add code coverage calculation 2021-06-12 15:37:41 +10:00
RunasSudo a038efc8a4
Initial implementation of prompt-based tie breaking 2021-06-12 02:09:39 +10:00
RunasSudo 4c4099ee22
Handle withdrawn candidates 2021-06-12 00:51:31 +10:00
RunasSudo 59539d807a
Implement --normalise-ballots
This, with --sum-surplus-transfers, allows us to fully replicate the Scottish STV result
2021-06-11 21:25:58 +10:00
RunasSudo 96a3eaec84
Implement --sum-surplus-transfers 2021-06-11 21:25:58 +10:00
RunasSudo 9d4cac2e89
Implement Scottish STV test case 2021-06-10 15:47:09 +10:00
RunasSudo 7ef5ae99b6
Add ERS97 test case 2021-06-09 20:09:20 +10:00
RunasSudo 79f0f55942
Implement --defer-surpluses 2021-06-09 12:16:25 +10:00
RunasSudo 08cb03d85a
Implement --bulk-exclude 2021-06-08 22:22:43 +10:00
RunasSudo d50af1161e
Implement --quota-mode ers97 2021-06-07 20:52:18 +10:00
RunasSudo 830362416d
Fix logic error where loss by fraction not updated in multi-stage exclusions 2021-06-04 22:54:26 +10:00
RunasSudo e88d2674d6
Implement --quota, --quota-criterion 2021-06-02 18:07:05 +10:00
RunasSudo f6fba85049
Implement --round-{tvs,weights,quota}
Add test case for PRSA example election
2021-06-01 21:20:38 +10:00
RunasSudo a4a28f3345
Implement --surplus-order 2021-06-01 18:57:56 +10:00
RunasSudo 76d69913c7
Implement --transferable-only 2021-05-31 23:17:21 +10:00
RunasSudo c114d3a4ee
Implement --surplus and --exclusion 2021-05-31 22:25:53 +10:00
RunasSudo 2793088e12
Initial WebAssembly implementation 2021-05-30 18:45:45 +10:00
RunasSudo a595f2ff6b
Add integration test for 2019 Tasmanian Senate data 2021-05-30 03:50:19 +10:00