When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.
This project and everyone participating in it is governed by the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected] and/or [email protected].
In order to help us address your issue effectively, we ask that you follow this procedure when creating an issue:
- Check that the issue is not already described elsewhere in Issues
- Write a fairly complete description of the bug/feature/problem in the issue, using the provided templates and adding the relevant tags
- If the issue is linked to a Project, please tag it
Eqdsk
is software in development and is therefore likely to contain bugs. If you
discover bugs, please follow this procedure:
- Raise an issue using the bug template with a
bug
flag - Include a way to reproduce the bug in the issue, let us know the expected result and what actually happens
Please discuss any feature ideas you have with the developers before submitting them, as you may not be aware of parallel development work taking place, or implementation decisions / subtleties which are relevant. The ideal workflow for submitting a pull request is as follows:
- Discuss the feature with the developers first
- Submit an issue documenting the intent of the feature you wish to develop
- Fork our repository (see the GitHub documentation on forking)
- Make a branch of the
develop
branch which bears a similar name as your issue (e.g.new_feature
) - Develop your feature(s) in your
new_feature
branch - Discuss any problems that arise in the associated issue, perhaps documenting your progress
- Finally, as the author of the
new_feature
branch, you must submit a pull request onto thedevelop
branch- Link the relevant issue(s) and project(s)
- Add an assignee, who will be responsible for reviewing and merging the PR. This should be the person you feel has the most relevant technical background and/or the most familiar with the underlying issue or code.
- The reviewers will be automatically selected based on which module(s) of the code your pull request affects.
The merge request will be reviewed by the core development team before potentially being accepted.
This project uses Hatch.
Although any python environment manager can be used, we recommend using the default eniornment setup by Hatch.
To start using Hatch, it must be installed and accessible from the command line. See the Hatch installation for more.
A simple way to install Hatch is to run:
pip install -g hatch
If you can run hatch -h
then Hatch has been successfully installed.
Then run:
hatch shell
To activate the default Hatch environment.
Hatch environments are usually stored in the ~/.local/share/hatch/env
directory.
VS Code users can use the Python: Select Interpreter
command to select the Hatch environment.
Detecting Hatch environments has been integrated into the Python extension for VS Code.
Run
hatch run test:tests
To run all the tests for the supported python environments