Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge Development to Main to close Issues #119

Merged
merged 83 commits into from
Sep 26, 2022
Merged

Merge Development to Main to close Issues #119

merged 83 commits into from
Sep 26, 2022

Commits on Aug 21, 2022

  1. Configuration menu
    Copy the full SHA
    f38ced9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    88aa5bc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    41e188c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    25ff3cf View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    584bb41 View commit details
    Browse the repository at this point in the history
  6. Significant refactoring of candidate contests.

    BallotStyles don't drive the contests.
    ion-oset committed Aug 21, 2022
    Configuration menu
    Copy the full SHA
    43eb184 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    24b921f View commit details
    Browse the repository at this point in the history
  8. Add ballot measure contests.

    ion-oset committed Aug 21, 2022
    Configuration menu
    Copy the full SHA
    9f0ab55 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    f1fd991 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2022

  1. Configuration menu
    Copy the full SHA
    309db0e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f5090b8 View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2022

  1. Configuration menu
    Copy the full SHA
    55b5b38 View commit details
    Browse the repository at this point in the history
  2. Add party abbreviations to candidates.

    Fixes BallotLab #83.
    ion-oset committed Aug 23, 2022
    Configuration menu
    Copy the full SHA
    a262592 View commit details
    Browse the repository at this point in the history
  3. Include '@id's with contests.

    Fixes BallotLab #86.
    ion-oset committed Aug 23, 2022
    Configuration menu
    Copy the full SHA
    4a27316 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    15efb15 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2022

  1. Configuration menu
    Copy the full SHA
    4355de7 View commit details
    Browse the repository at this point in the history
  2. Properly set up multi-candidate slates/tickets.

    Fixes BallotLab #85.
    
    This isn't quite right: fails if a slate has candidates from different parties.
    Deferring on that case for now.
    ion-oset committed Aug 24, 2022
    Configuration menu
    Copy the full SHA
    26deeaf View commit details
    Browse the repository at this point in the history
  3. Merge write-ins into candidte contests.

    Mark write-in status as boolean (matching the contents of the EDF).
    No issue attached.
    ion-oset committed Aug 24, 2022
    Configuration menu
    Copy the full SHA
    fb03e3f View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2022

  1. Multi-candidate slates: Fix dropping all candidates before the last one.

    The error was introduced in the process of folding write-ins into contests.
    - Remove convoluted extra step that makes it harder to do this correctly.
    - Candidate names are grouped in arrays. Now do the same for parties.
    - Use 'is_write_in' for the write-in boolean field.
    ion-oset committed Aug 27, 2022
    Configuration menu
    Copy the full SHA
    1547160 View commit details
    Browse the repository at this point in the history
  2. Multi-candidate slates: Use party IDs to collapse identical parties.

    Handles case where candidates in a slate have different parties.
    ion-oset committed Aug 27, 2022
    Configuration menu
    Copy the full SHA
    78f933a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e658646 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d48ddf7 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4d1bfb4 View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2022

  1. Add IDs to ballot measure contest selections.

    Fixes BallotLab #86.
    ion-oset committed Aug 29, 2022
    Configuration menu
    Copy the full SHA
    8fd9337 View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2022

  1. Configuration menu
    Copy the full SHA
    6a88c50 View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2022

  1. Update of JSON ballot generator.

    Significant update of contests:
    - Include '@id's of ballot measure contests (candidates already happening).
    - Include '@id's of candidate and ballot measure contest selections.
    - Updates and bug fixes for write-ins in candidate contests.
    - Multi-candidate slates:
      - Combine names of candidates into list.
        Names are stored in lists even when there is only one candidate.
      - Combine parties of candidate IFF they are the same.
        Parties are always stored in lists, and empty if there is no party.
    ion-oset committed Sep 5, 2022
    Configuration menu
    Copy the full SHA
    db0773e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fb195a0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    fe81fbc View commit details
    Browse the repository at this point in the history
  4. Update the internal Spacetown data to use the September test case.

    - Candidate parties are now a list.
    - 'write_in' -> 'is_write_in'
    ion-oset committed Sep 5, 2022
    Configuration menu
    Copy the full SHA
    818f21b View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2022

  1. Switch to human readable IDs.

    These are NOT intended to follow any standard, merely to aid in debugging.
    There's an ongoing conversation about the format of human readable IDs.
    ion-oset committed Sep 6, 2022
    Configuration menu
    Copy the full SHA
    9b91232 View commit details
    Browse the repository at this point in the history

Commits on Sep 7, 2022

  1. Clean up docstrings

    stratofax committed Sep 7, 2022
    Configuration menu
    Copy the full SHA
    983ff88 View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2022

  1. Merge pull request #106 from ion-oset/september-ballot

    Use the September test case instead of the June test case, with order updated to match what's expected. Only handles Spacetown.
    Human-readable IDs for ease of testing (not part of any agreed upon scheme).
    ion-oset authored Sep 8, 2022
    Configuration menu
    Copy the full SHA
    7b88323 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b3f1cb2 View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2022

  1. Configuration menu
    Copy the full SHA
    929a4be View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    827b2c9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8d6d431 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2bec0c1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    05fac8f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    67d3933 View commit details
    Browse the repository at this point in the history

Commits on Sep 10, 2022

  1. Configuration menu
    Copy the full SHA
    9921c2d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4e7283f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e099419 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5dc5ca8 View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2022

  1. Configuration menu
    Copy the full SHA
    a112e03 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7873833 View commit details
    Browse the repository at this point in the history
  3. Data model for elections.

    ion-oset committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    3621f32 View commit details
    Browse the repository at this point in the history
  4. Use a base type for contest models.

    Partly to share fields but primarily for correctness: contests have to be a
    single list independent of sub-type because that's how EDFs work. Splitting
    the types into multiple lists would lose the order.
    ion-oset committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    893af78 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    df0a193 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e03c3bb View commit details
    Browse the repository at this point in the history
  7. Reorder contest fields in ballot data extractor to match ballot data …

    …model.
    
    Do some minor code cleanup.
    ion-oset committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    a7f19c1 View commit details
    Browse the repository at this point in the history
  8. Don't return an empty party dictionary when there is no party.

    An empty dictionary adds a special case to 'PartyData' construction.
    ion-oset committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    341df82 View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2022

  1. Configuration menu
    Copy the full SHA
    002e415 View commit details
    Browse the repository at this point in the history
  2. Add IDs to PDF form

    stratofax committed Sep 13, 2022
    Configuration menu
    Copy the full SHA
    3059297 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    da218db View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2022

  1. Re-implement and simplify the ballot extractor interface.

    - Unify extraction functions:
      - Use direct field accesses for properties, index for references.
      - Yield data dictionaries instead of returning lists.
    - Add in election data.
    - Entry point is now 'extract_ballot_data', which returns a list.
    ion-oset committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    b173842 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5ace8d6 View commit details
    Browse the repository at this point in the history
  3. Make 'ElectionReport' and 'ElementIndex' internal to the extractor.

    The caller only receives an 'ElectionData' back.
    ion-oset committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    04e0d3e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5350723 View commit details
    Browse the repository at this point in the history
  5. Turn ballot extractor into a class.

    - Public API is now 'extract'.
    - Prefix all internal methods as private.
      - Prefix utility functions but don't make them methods.
    - Make the element index an instance variable.
    - Re-wrap text to fit within line length.
    
    Note: In a class method order usually puts public functions at the top.
    Not doing that here to avoid making the change diff useless.
    ion-oset committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    7e2f748 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1195709 View commit details
    Browse the repository at this point in the history
  7. Update comments

    stratofax committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    cf945d5 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    4b4b728 View commit details
    Browse the repository at this point in the history
  9. Hide form objects

    stratofax committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    0e9de74 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    358bffd View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    9611b08 View commit details
    Browse the repository at this point in the history

Commits on Sep 15, 2022

  1. Merge pull request #112 from ion-oset/edf-to-ballot-data to development

    EDF to ballot data model extractor code is reviewed and approved.
    stratofax authored Sep 15, 2022
    Configuration menu
    Copy the full SHA
    2ba1c0e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1e5b7ff View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    35597ea View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f55562a View commit details
    Browse the repository at this point in the history
  5. Add comments with Errors

    stratofax committed Sep 15, 2022
    Configuration menu
    Copy the full SHA
    92e9477 View commit details
    Browse the repository at this point in the history
  6. New ballot builder code

    stratofax committed Sep 15, 2022
    Configuration menu
    Copy the full SHA
    7d130ff View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2022

  1. Configuration menu
    Copy the full SHA
    850f6e5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2d1221d View commit details
    Browse the repository at this point in the history
  3. updated scopes extraction

    stratofax committed Sep 16, 2022
    Configuration menu
    Copy the full SHA
    aa643a2 View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2022

  1. Generate 4 ballots

    stratofax committed Sep 17, 2022
    Configuration menu
    Copy the full SHA
    d9eccfc View commit details
    Browse the repository at this point in the history
  2. Update CLI to run demo

    stratofax committed Sep 17, 2022
    Configuration menu
    Copy the full SHA
    52da16e View commit details
    Browse the repository at this point in the history

Commits on Sep 18, 2022

  1. First round of code cleanup

    stratofax committed Sep 18, 2022
    Configuration menu
    Copy the full SHA
    13da497 View commit details
    Browse the repository at this point in the history
  2. Code cleanup and comments

    stratofax committed Sep 18, 2022
    Configuration menu
    Copy the full SHA
    12a2380 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5a3a03e View commit details
    Browse the repository at this point in the history

Commits on Sep 20, 2022

  1. Add TODOs and backlinks

    stratofax committed Sep 20, 2022
    Configuration menu
    Copy the full SHA
    12196c1 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #113 from stratofax/development

    Extraction code validates and generates ballots, passes GitHub Actions testing, but pytest still fails locally. Good enough for a merge.
    stratofax authored Sep 20, 2022
    Configuration menu
    Copy the full SHA
    b2c7092 View commit details
    Browse the repository at this point in the history

Commits on Sep 22, 2022

  1. Increment version number and CHANGELOG to close Milestone 2 (#118)

    * Update version to 0.1.3 upon milestone completion
    
    * Update CHANGELOG.md
    
    Co-authored-by: Ion Y <[email protected]>
    
    * Update CHANGELOG.md
    
    Co-authored-by: Ion Y <[email protected]>
    
    * Update CHANGELOG.md
    
    Co-authored-by: Ion Y <[email protected]>
    
    * Use short dash in header
    
    * Remove unneeded files
    
    Co-authored-by: Ion Y <[email protected]>
    stratofax and ion-oset authored Sep 22, 2022
    Configuration menu
    Copy the full SHA
    2cfd38d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    45f06ba View commit details
    Browse the repository at this point in the history