Contributing to POSEIDON

Interested in contributing to POSEIDON? Welcome, we’re excited to have you onboard!

If you’d like to make us aware of a bug, or request a new feature, the best option is to open an issue on GitHub.

To become more actively involved, feel free to browse the issues page and decide whether you would like to work on a bug or new feature (or even better, add a new automated test). If you’re planning to work on a major new feature, we’d encourage you to reach our to the lead developer to give a heads-up: ryanjamc@umich.edu

Note

We generally recommend using VS Code if this is your first time contributing to an open source project.

VS Code provides a friendly interface to edit code, make git commits, send pull requests, and more, all without needing to use git terminal commands.

POSEIDON uses the following development process (inspired by a graphic from Natasha Batalha):

../_images/Git_Workflow.png

When you first install POSEIDON, you’ll be on the main branch. The main branch contains the current official release of the code.

All major developments happen on the dev branch, where new versions of POSEIDON are developed and tested before being merged into main.

The one exception is fixes for any major bugs, for which a temporary branch is created and merged into main.

To work on a new feature, you’ll first want to switch from main to dev. You can then create a branch off dev called something like tremble_at_my_amazing_new_feature. While you code, please make regular commits as you flesh out the feature. Once you’re done, open a Pull Request on GitHub to request merging your new feature into dev. This will trigger an automatic suite of tests to verify that your new feature didn’t accidentally break something.

VS Code has a handy guide that covers how to handle git branches, make commits, and more.