SciPy contributor guide#

This guide is designed to help you quickly find the information you need about SciPy development after you’ve reviewed the introductory material in Ways to Contribute or Contributor quickstart guide.

You can also watch SciPy Development Workflow, a five-minute video example of fixing a bug and submitting a pull request (note: this video is from 2018, so the build steps are different by now - the overall workflow is still the same though).

  • Building from source - how to set up a development environment, including installing compilers and SciPy dependencies, cloning the SciPy repository on GitHub and updating git submodules, and using the dev.py interface for building and running tests.

  • Editing SciPy - how to edit SciPy Python code, with tips on finding which module contains SciPy functionality to be edited, adding new modules to SciPy, and complying with PEP8 style standards

  • Unit tests - how to write and run unit tests for SciPy with the pytest framework

  • Documentation - how to write reStructuredText documentation that complies with docstring standards, build documentation locally with Sphinx, and view documentation built during continuous integration checks

  • Benchmarks - how to benchmark code with airspeed velocity

  • Compiled code - how to add fast, compiled code to SciPy

  • Continuous Integration - how does our continuous integration system works and how to debug your PR

Editing SciPy#

Unit tests#

Documentation#

Benchmarks#

Compiled code#