Commit Graph

197 Commits

Author SHA1 Message Date
RunasSudo 974a56dffd
Improve performance of Candidate in HashMap by simplifying equality check 2022-08-20 23:39:15 +10:00
RunasSudo 422a198cf5
Use NoHashHasher for Candidate HashMaps to improve performance 2022-08-20 23:25:16 +10:00
RunasSudo 61b22b388d
Remove unnecessary usage of HashMap.contains_key 2022-08-20 22:43:57 +10:00
RunasSudo 9a4af322ca
Avoid more allocations in fold 2022-08-20 22:33:48 +10:00
RunasSudo 2bce8cfc3f
Avoid String allocations in BLT parser 2022-08-19 00:16:29 +10:00
RunasSudo 35104055d9
Avoid excess allocations during fold operations 2022-08-18 23:55:39 +10:00
RunasSudo ee7ac064c7
Improve performance of realise_equal_rankings 2022-08-18 00:15:44 +10:00
RunasSudo e825ca1491
Update for Rust 1.62
Add Cargo profile for profiling
2022-08-18 00:15:33 +10:00
RunasSudo f187975601
--no-immediate-elect requires --surplus-order by_size 2022-07-02 23:46:02 +10:00
RunasSudo 566cdeb185
Permit --surplus meek with --quota-mode static 2022-06-18 23:07:00 +10:00
RunasSudo 8d16f55289
Update for clap stable 2022-06-18 22:36:00 +10:00
RunasSudo 82e90a0e10
Update documentation 2022-06-18 02:02:00 +10:00
RunasSudo 384dde9c52
--subtract-nontransferable requires --surplus wig 2022-06-18 02:00:07 +10:00
RunasSudo 2987eca0c3
Do not defer a surplus distribution if it exactly equals the difference between the 2 trailing candidates (as, depending on tie-breaking rules, this could change the order of exclusion) 2022-06-18 01:59:29 +10:00
RunasSudo 8cc694e609
Cosmetic improvements
Hide transfers column in transposed report if no transfers
Report "Rollback complete" at end of stage when completed
2022-04-21 21:56:21 +10:00
RunasSudo c2621b2965
Improve messages for --constraint-mode repeat_count 2022-04-20 20:12:50 +10:00
RunasSudo 4aafecb857
Use "ballots" consistently vs "ballot papers" 2022-04-20 20:03:20 +10:00
RunasSudo f0e3b02051
Autodetect when to normalise ballots, remove explicit --normalise-ballots 2022-04-20 19:54:58 +10:00
RunasSudo 03af86733e
Initial implementation of --constraint-mode repeat_count 2022-04-20 19:42:20 +10:00
RunasSudo df9223ebe6
Implement --round-subtransfers by_parcel for NSW Local Government rules 2022-03-27 21:33:55 +11:00
RunasSudo 26d45cac50
Implement --subtract-nontransferable for NSW Local Government rules 2022-03-25 02:46:30 +11:00
RunasSudo 8af0fa1178
Complete implementation and tests for NSW Local Government STV 2022-03-23 01:55:02 +11:00
RunasSudo c5d6b8d460
Refactor implementation of --sum-surplus-transfers -> --round-subtransfers in preparation for NSW Local Gov't STV 2022-03-23 00:35:00 +11:00
RunasSudo d94549dc42
Initial implementation of NSW Local Government STV 2022-03-21 21:15:17 +11:00
RunasSudo 9fcb643fe5
Avoid wrapping candidate names/statuses in HTML report 2022-03-14 22:27:58 +11:00
RunasSudo 544d7fea5d
Update dates 2022-03-11 15:44:28 +11:00
RunasSudo 6968df5c9b
Fix incorrect crediting of votes when surplus votes transferred at values received
Many thanks to J Groves for pointing this out
2022-03-11 13:33:28 +11:00
RunasSudo 6304e1128a
Validate well-formedness of constraints, better constraint errors 2021-10-29 23:33:27 +11:00
RunasSudo ba82828046
Fix web UI crash when tie requires manual intervention in first stage 2021-10-29 20:28:50 +11:00
RunasSudo 15614a4e8f
rust-clippy linting 2021-10-28 00:30:55 +11:00
RunasSudo 69bc30b333
Downgrade some FIXMEs 2021-10-26 00:55:49 +11:00
RunasSudo 0c97755813
Add CSP parsing tests 2021-10-26 00:55:42 +11:00
RunasSudo be8a6e83fc
Suppress unused import warning in WebAssembly 2021-10-26 00:55:31 +11:00
RunasSudo f120cf2eee
Make DynNum thread-safe 2021-10-19 15:31:22 +11:00
RunasSudo 75ec78b1a6
Add test cases for DynNum (single-threaded only) 2021-10-19 15:27:11 +11:00
RunasSudo 414a1482c3
Implement dynamic dispatch for different number types 2021-10-19 14:52:08 +11:00
RunasSudo 5a53574366
Allow opting out of building default wasm bindings 2021-10-18 18:06:42 +11:00
RunasSudo e78d06289a
Return Result from CSP parse_reader, better error messages 2021-10-17 17:18:14 +11:00
RunasSudo 71dc671c34
Build CSV parser for WebAssembly 2021-10-17 16:34:15 +11:00
RunasSudo 46654f8c5a
Implement --omit-informal for `opentally convert` 2021-10-17 16:32:35 +11:00
RunasSudo 3ceaf67091
Implement stricter validation modes for CSP input 2021-09-30 00:48:57 +10:00
RunasSudo 047a53d0d9
Ignore --round-surplus-fractions with Hare method 2021-09-27 19:19:33 +10:00
RunasSudo 93cb72c33a
Update terminology and remove "stratify (floor)" support
Cincinnati -> Inclusive Hare (previous usage was erroneous/nonstandard)
Every n-th ballot -> Cincinnati
Remove "stratify (floor)" as it is not in contemporary use
2021-09-27 19:02:30 +10:00
RunasSudo cf75943829
Fixes to edge cases in stratify (LR) sample method 2021-09-26 02:27:37 +10:00
RunasSudo 3a4e53e1f0
Implement Dáil Éireann STV 2021-09-14 23:13:45 +10:00
RunasSudo a641b97d1f
More work on unit/integration tests 2021-09-14 02:27:35 +10:00
RunasSudo f12db205b9
Make Fixed, GuardedFixed thread-safe 2021-09-13 04:33:36 +10:00
RunasSudo e1e347c255
More unit/integration tests 2021-09-13 03:43:17 +10:00
RunasSudo 59f79444e8
Show only continuing candidates in detailed transfers table 2021-09-12 00:24:48 +10:00
RunasSudo df1b2f7bdc
Implement detailed transfers in web UI 2021-09-11 21:08:36 +10:00