Skip to content

Latest commit

 

History

History
153 lines (91 loc) · 4.32 KB

CONTRIBUTING.md

File metadata and controls

153 lines (91 loc) · 4.32 KB

Contribution Guidelines

We would love for you to contribute to this project. As a contributor, here are the guidelines we would like you to follow:

Be Kind - Code of Conduct

Help us keep this project open and inclusive. Please read and follow our Code of Conduct

Found a bug? Want a feature? - Please submit an Issue

Choose an issue template to file a bug report / feature request.

Want to contribute code? please submit a Pull Request (PR), but first...

.

for an open or closed PR that relates to the change you want to introduce.

.

✅ 2. Before you start coding - find / create an issue

Make sure there's an issue describing the problem you're fixing, or documents the design for the feature you'd like to add. Discussing the design up front helps to ensure that we're ready to accept your work.

Don't waste your time working on code before you got a 👍 in an issue comment.

.

✅ 3. Fork the this repo and create a branch.

  • Hit that "Fork" button above (in this repo's github page).

image

  • git clone your fork

git clone YOUR_FORK_URL

Get your url by from here 👇

image

  • Create a new branch locally in your fork's repo
git checkout -b my-fix-branch main

IMPORTANT: In this project the most important file is shared/single-core/single-core.ts - It is the actual implementation of both jasmine-single and jest-single. So if you change anything you need to verify that there is a test in both of the frameworks spec files.

.

✅ 4. Make sure you add / modify tests

Run yarn test:full to make sure there aren't any errors

.

✅ 5. Commit your changes using commitizen:

Instead of git commit use the following command:

yarn commit

It will then ask you a bunch of questions.

For "scope" please choose from the following options:

Scope name Description
core a change related to the file single-core.ts
jest-single a change related to @hirez_io/jest-single
jasmine-single a change related to @hirez_io/jasmine-single
karma-jasmine-single a change related to @hirez_io/karma-jasmine-single
global any change that doesn't fall under the above scopes

This will create a descriptive commit message that follows the Angular commit message convention.

This is necessary to generate meaningful release notes / CHANGELOG automatically.

.

✅ 6. Push your branch to GitHub:

git push origin my-fix-branch

.

✅ 7. In GitHub, create a pull request for hirezio/single:main.

Make sure you check the following checkbox "Allow edits from maintainers" -

image

If you need to update your PR for some reason -

  • Make the required updates.

  • Re-run the tests to ensure tests are still passing yarn test:full

  • Rebase your branch and force push to your GitHub repository (this will update your Pull Request):

    git rebase main -i
    git push -f

.

✅ 8. After your pull request is merged - delete your PR branch

After your pull request is merged, you can safely delete your branch and pull the changes from the main (upstream) repository:

  • Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:

    git push origin --delete my-fix-branch
  • Check out the main branch:

    git checkout main -f
  • Delete the local branch:

    git branch -D my-fix-branch
  • Update your main with the latest upstream version:

    git pull --ff upstream main

.

✅ 9. That's it! Thank you for your contribution! 🙏💓