Skip to content

Latest commit

 

History

History
103 lines (72 loc) · 3.42 KB

README.rst

File metadata and controls

103 lines (72 loc) · 3.42 KB

Wait Wait Stats Library

Overview

This project provides a Python library that provides an interface to retrieve data from a copy of the Wait Wait Stats Database.

If you are in need of a pre-built package to use to build applications, the library is available at PyPI.

Requirements

Starting with version 2.5.0, the minimum supported version of Python has been changed from Python 3.8 to 3.10. All versions prior to 3.10 will no longer be supported.

Testing for this library has been done using Python 3.10 and 3.12.

In addition to the Python version requirement, the library depends on a copy of the Wait Wait Stats Database running on a MySQL Server (or a distribution of MySQL Server like Percona) running version 8.0 or higher.

Running Tests

Included in this repository are tests that are written for use with pytest. To run the tests, simply run: pytest from the root of the repository.

A performance testing script is also included in the repository named, perf_test.py that tests the core class methods. This script can be used to create a performance baseline and also used to track changes in performance between code changes or configuration changes.

Documentation

This project uses reStructuredText located in docstrings and individual files for its documentation and makes use of Sphinx to build an HTML (and other formats supported by Sphinx) version of documents. To build the documentation for this project, use venv, virtualenv or a similar tool of your choice to create a virtual environment under docs/ and install the required packages in docs/requirements.txt, including Sphinx and the Flask theme.

The documentation style guide closely follows the one documented in the Python Developer's Guide.

Once the required packages are installed, an HTML version of the documentation can be generated by running:

make html

An online version of the documentation is also available at docs.wwdt.me

Building

After tests have been successfully run, any and all documentation updates have been made, a release wheel can then be created for distribution. To create a wheel, run the following command with the virtualenv activated.

python -m build

Known Issues

For documentation on known issues with this project, check out the Known Issues documentation on docs.wwdt.me.

Code of Conduct

This projects follows version 2.1 of the Contributor Covenant's Code of Conduct. A copy of the Code of Conduct document is included in this repository.

License

This library is licensed under the terms of the Apache License 2.0.