Skip to content

Latest commit

 

History

History
36 lines (29 loc) · 2.14 KB

CONTRIBUTING.md

File metadata and controls

36 lines (29 loc) · 2.14 KB

Contributing to this plugin.

Contributions to this Tutor plugin are very welcome, and strongly encouraged! Here's a step-by-step guide that should help you get started.

Step 0: Join the conversation

Got an idea for how to improve the codebase? Fantastic, we'd love to hear about it! Before you dive in and spend a lot of time and effort making a pull request, it's a good idea to discuss your idea with other interested developers, maintainers and/or the Pearson-Edunext team. You may get some valuable feedback that changes how you think about your idea, or you may find other developers who have the same idea and want to work together.

Step 1: Branch, Commit and Pull Request

  • As a suggestion, create a branch as follows: <developer_name/feature_name>
  • Make any changes and improvements you deem necessary.
  • Make sure to commit according to the standards of conventional commits.
  • Create a PR containing your changes.
  • Add entries to the CHANGELOG.md file as required.
  • The branch must be up to date with respect to 'main'. Use rebase for this.
  • The PR must have an update to the file CHANGELOG.rst. All changes must be specified as 'unreleased'.
  • Once the PR is approved, we perform squash and merge.

Step 2: Create a release

  1. In development, we position ourselves in the main branch and update it.
  2. We use bumpversion to create commit and tag releases: bumpversion [major, minor, patch]
  3. Changes marked as 'unreleased' become 'released', they are identified with the date and the version that has generated bumpversion.
  4. The commit generated by bumpversion, which must also include the recent changes in CHANGELOG.md is pushed.
  5. The tag generated by bumpversion is also pushed: git push origin <generated_bumpversion_tag>
  6. Finnaly, create a github release(https://docs.github.com/es/github/administering-a-repository/releasing-projects-on-github/managing-releases-in-a-repository).