Skip to content

Latest commit

 

History

History
39 lines (21 loc) · 3.98 KB

CONTRIBUTING.md

File metadata and controls

39 lines (21 loc) · 3.98 KB

FossSweeper Contributing Guidelines

This file explains how to contribute to the FossSweeper project. For standards of behaviour, look at our Code of Conduct.

How to Report a Bug

Report bugs in the issues board. Create a new issue with the Bug Report template and fill out the form.

How to Suggest a Feature

Suggest features in the Ideas category of the discussions board. When it is deemed that an adequate discussion has been completed, a thread in the issues board may be created to request the implementation of the feature.

How to Ask a Question

Ask questions in the Q&A category of the discussions board.

How to Contribute Code Changes

Browse the issues board to find an issue that interests you. If you want to work on an issue, say so by commenting in the issue thread. Fork the dev branch of the FossSweeper repository and clone the fork to your local machine. Initialize all git submodules within your local clone using the bash command git submodule update --init --recursive so you can build the project properly. Commit your changes locally and then push them to your forked repository. When you are ready, go ahead and make a pull request in the FossSweeper pull requests board.

Every time you push changes to GitHub, several tests will automatically run using GitHub Actions. Before your pull request can be merged into FossSweeper, all of these tests must pass.

Unit Tests with Catch2

Many aspects of FossSweeper are tested automatically using the Catch2 unit testing framework. Depending on what code you added or modified, you may be required to add more unit tests or change existing ones. If you are not sure test you need to workon, ask for guidance in your pull request thread.

Manual Integration Testing

Unit tests are not enough to catch everything that can go wrong with FossSweeper. Depending on what code you modify, you may be told that you need to run FossSweeper on one or more platforms to ensure that there are no visible bugs. You can emulate a different operating system than your own using virtual machine software such as Virtual Box. If you don't want to do this yourself, add the help-needed tag to your pull request and ask for someone else to do it for you.

Licensing with REUSE

The FossSweeper project is a propoenent of the REUSE Specification. This means that all files in the repository must be adequatly licensed for the your fork to be considered REUSE-compliant. If you have the REUSE Tool installed on your computer, you can check your fork to see if it is compliant using the bash command reuse lint.