GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - apache/steve: Apache STeVe -- a set of voting tools

BranchesTags
Open more actions menu

Latest commit

 

History

1,187 Commits
1,187 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
monitoring
monitoring
 
 
site
site
 
 
v3
v3
 
 
.asf.yaml
.asf.yaml
 
 
.gitignore
.gitignore
 
 
AGENTS.md
AGENTS.md
 
 
LICENSE
LICENSE
 
 
NOTICE
NOTICE
 
 
README.md
README.md
 
 
steve_logo.psd
steve_logo.psd
 
 
stv9_template.txt
stv9_template.txt
 
 
whatif.py
whatif.py
 
 
whatif.rb
whatif.rb
 
 

Repository files navigation

Welcome to Apache Steve http://steve.apache.org/

Apache Steve is software to conduct a vote using the STV (Single Transferable Vote) and other voting algorithms. The tool grew out of the voting system used to elect the Apache Software Foundation Board of Directors.

Read more about STV at http://en.wikipedia.org/wiki/Single_transferable_vote

Note

The v3 directory contains the current (ongoing) version of Steve. Read the v3/README.md file for more information about this version. Read the Getting Started Guide to set up a development environment for v3.

STV tally and what-if

Meek STV lives in monitoring/stv_tool.py. v3 tallies (steve.vtypes.stv) and the what-if CLI both call that module.

Load a vote file with LoadData.from_path (a file, not a directory):

Input Behavior
vote-results.json (v3 tally JSON) Source of truth. No warning.
raw_board_votes.txt (+ sibling board_nominations.ini) Old-school. Warns on stderr.
raw_board_votes.json (v2 export) Not a tally format. Warns and exits.
python3 monitoring/stv_tool.py path/to/vote-results.json
python3 monitoring/stv_tool.py -s 9 -v path/to/raw_board_votes.txt

What-if scenarios (seats, drop a candidate, runoff-only set) are whatif.py. The positional argv is fixed for whatif.rb:

python3 whatif.py [-v] VOTES_FILE [seats] [name ...]
python3 whatif.py VOTES_FILE -Lastname

Names may be first, last, or compacted full name (case-insensitive). A leading - on a name removes that candidate; otherwise only the named candidates run. Warnings for legacy files go to stderr so they do not break whatif.rb grepping of elected lines.

whatif.rb still consumes raw_board_votes.txt. Do not point it at v2 JSON. Prefer vote-results.json for new tallies.

See also monitoring/README.md.

Getting Started

Read the Getting Started Guide to set up a v3 development environment, or visit https://steve.apache.org/getting-started/ for an overview of the application and tally tools. Ask questions on the development mailing list below.

Documentation

Documentation may be found at https://steve.apache.org/documentation/.

Contributions to the documentation are very welcome.

The website is built with Docusaurus from site/ in this repository. See the site README for local development and preview publishing.

Mailing Lists

Discussion about Steve takes place on the following mailing lists:

[email protected]    - About using Steve and developing Steve

Notification on all code changes are sent to the following mailing list:

[email protected]

The mailing lists are open to anyone and publicly archived.

You can subscribe the mailing lists by sending a message to <LIST>[email protected] (for example [email protected]). To unsubscribe, send a message to <LIST>[email protected]. For more instructions, send a message to <LIST>[email protected].

Issue Tracker

If you encounter errors in Steve or want to suggest an improvement or a new feature, please visit the Steve issue tracker at https://github.com/apache/steve/issues

About

Apache STeVe -- a set of voting tools

steve.apache.org

Topics

pythonstvvoting

Resources

Readme
Apache-2.0 license

Code of conduct

Code of conduct

Security policy

Security policy
Activity
Custom properties

Stars

27 stars

Watchers

8 watching

Forks

15 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.