Commit Graph

65 Commits

Author SHA1 Message Date
RunasSudo 8d16f55289
Update for clap stable 2022-06-18 22:36:00 +10:00
RunasSudo 15614a4e8f
rust-clippy linting 2021-10-28 00:30:55 +11:00
RunasSudo 88ab06d633
Add subcommand for BLT/CSP file conversion 2021-08-20 02:29:47 +10:00
RunasSudo 94787e7677
Store vote values at the parcel level rather than the vote level
~50% increase in performance
2021-08-16 00:46:05 +10:00
RunasSudo 764ebd98e6
Various tidyups
Use "Droop" as default quota (since same as "Droop (exact)" when quota not rounded)
Rename ers97.blt
Update documentation
2021-08-09 17:58:05 +10:00
RunasSudo ae0d1d8411
Implement dynamic quotas 2021-08-08 21:41:10 +10:00
RunasSudo b58922c57b
WIP: no immediate election? 2021-08-07 22:34:55 +10:00
RunasSudo 33594c110e
Implement stratified and by-order sampling 2021-08-05 18:41:39 +10:00
RunasSudo f3e4071886
Refactor tests specification using builder pattern 2021-08-05 01:13:54 +10:00
RunasSudo 0800701960
Implement configurable --sample-per-ballot 2021-08-04 13:46:32 +10:00
RunasSudo 0efc1e6eab
Complete implementation of Cambridge STV
Implement --min-threshold
Add test
2021-08-03 23:42:59 +10:00
RunasSudo f182ca02bd
Implement Cambridge STV - Cincinnati/Hare methods of surpluses 2021-08-03 18:38:45 +10:00
RunasSudo 6da51837a5
Rename --round-tvs to --round-surplus-fractions and --round-weights to --round-values 2021-08-03 16:46:21 +10:00
RunasSudo 32e89312fa
Show stage progress during tie that occurs in the middle of a stage 2021-07-31 17:42:33 +10:00
RunasSudo 83d0a9bb80
Better error messages 2021-07-31 15:24:23 +10:00
RunasSudo 3801d30527
Switch to handwritten BLT parser 2021-07-29 03:24:51 +10:00
RunasSudo cca097f943
Use Pest-based parser for BLT files
Support comments, optional newlines, etc.
2021-07-23 16:45:54 +10:00
RunasSudo 3ea1eef7c5
Implement WA STV and update documentation 2021-07-22 00:41:20 +10:00
RunasSudo f80875b583
Implement --exclusion by_source 2021-07-19 23:15:17 +10:00
RunasSudo d144ab0cb4
Implement ERS76 rules 2021-07-18 21:14:37 +10:00
RunasSudo 0d9196a951
Refactoring 2021-06-29 16:48:02 +10:00
RunasSudo 9b73a4adf4
Remove CountStateOrRef 2021-06-29 01:27:10 +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 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 2e034d06c8
Fix error with --meek-nz-exclusion, etc. on CLI 2021-06-22 14:29:33 +10:00
RunasSudo 1b39b8b138
Implement --meek-nz-exclusion for NZ Meek STV 2021-06-20 01:48:25 +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 ca54b94953
Show keep values for elected candidates in Meek STV 2021-06-16 21:51:12 +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 4845ebe52f
Implement --ties random 2021-06-13 03:15:15 +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 e059a6a3d9
Fixes to count description 2021-06-12 16:03:31 +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 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 ceba059c53
Implement --numbers fixed 2021-06-04 22:05:48 +10:00
RunasSudo ba8d9bf79c
Describe election count/options in web UI 2021-06-03 21:35:59 +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 f1a730e885
Update WebAssembly build for recent changes 2021-06-01 19:04:03 +10:00
RunasSudo a4a28f3345
Implement --surplus-order 2021-06-01 18:57:56 +10:00