Skip to content

arup-group/gtfs_skims

Repository files navigation

gtfs_skims

Argo (gtfs_skims)

Argo is a library aimed at the fast calculation of generalised time matrices from GTFS files. By applying appropriate simplifications on the GTFS dataset, the library is able to calculate such matrices at scale. For example, it was possible to calculate an MSOA-to-MSOA matrix for England and Wales in ~1 hour (with a relatively large machine).

Daily CI Build Documentation

Documentation

For more detailed instructions, see our documentation.

Installation

To install gtfs_skims, we recommend using the mamba package manager:

As a user

git clone [email protected]:arup-group/gtfs_skims.git
cd gtfs_skims
mamba create -n gtfs_skims -c conda-forge --file requirements/base.txt
mamba activate gtfs_skims
pip install --no-deps .

As a developer

git clone [email protected]:arup-group/gtfs_skims.git
cd gtfs_skims
mamba create -n gtfs_skims -c conda-forge --file requirements/base.txt --file requirements/dev.txt
mamba activate gtfs_skims
pip install --no-deps -e .

For more detailed instructions, see our documentation.

Contributing

There are many ways to contribute to gtfs_skims. Before making contributions to the gtfs_skims source code, see our contribution guidelines and follow the development install instructions.

If you plan to make changes to the code then please make regular use of the following tools to verify the codebase while you work:

  • pre-commit: run pre-commit install in your command line to load inbuilt checks that will run every time you commit your changes. The checks are: 1. check no large files have been staged, 2. lint python files for major errors, 3. format python files to conform with the pep8 standard. You can also run these checks yourself at any time to ensure staged changes are clean by simple calling pre-commit.
  • pytest - run the unit test suite and check test coverage.
  • pytest -p memray -m "high_mem" --no-cov (not available on Windows) - after installing memray (mamba install memray pytest-memray), test that memory and time performance does not exceed benchmarks.

For more information, see our documentation.

Building the documentation

If you are unable to access the online documentation, you can build the documentation locally. First, install a development environment of gtfs_skims, then deploy the documentation using mike:

mike deploy develop
mike serve

Then you can view the documentation in a browser at http://localhost:8000/.

Credits

This package was created with Cookiecutter and the arup-group/cookiecutter-pypackage project template.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published