Skip to content

Getting Started with Development

Maarten Scholl edited this page Nov 18, 2020 · 1 revision

In this document we make suggestions to make developing new features easier. One prerequisite is that all dependencies are installed on your development machine, and that they can be found through the environment path variable:

See: Installing Dependencies

You want to contribute Python or C++ code, and use it from Python

We suggest the following steps when developing new features for ESL

  1. Install a supported version of Python 3 with a version of pip that supports the PEP 517 standard (As of 2020, nearly all distributions have this). If you desire to keep the development version of the esl python package separate from your main Python installation, you can configure a virtual environment for development using tools such as virtualenv or conda.

  2. Set your development environment's build step to: pip3 install .

  3. When running/testing after building and installing the package in step 2, make sure to restart your interpreter so that it loads the latest version if you had one open with an older version of the package.

You contribute C++ code, and use it from C++ exclusively

  1. Most modern IDE's support cmake projects nowadays, even the latest version of Microsoft Visual Studio does so. So try opening the project folder in your IDE directly. If needed, it is also possible to use cmake to generate project files. For example on Windows, one could use cmake-gui to do so, or use the command line interface:

cmake -G "Visual Studio 16 2019" -A x64 ../"

For other versions of Visual Studio or other IDEs, see the cmake documentation on generators.