Skip to content

Commit

Permalink
Update pull request section of CONTRIBUTING
Browse files Browse the repository at this point in the history
  • Loading branch information
SeanTAllen committed Sep 17, 2023
1 parent a5c8f45 commit 8d5bcb1
Showing 1 changed file with 21 additions and 21 deletions.
42 changes: 21 additions & 21 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,24 +13,24 @@ being the authorized copyright holder.
* 2 Spaces not tabs for indentation
* No lines over 80 columns

## How to submit a pull request

If you have improvements to Ponylang-mode, please open a pull request against
this repo. Based on the state of your particular PR, we might request changing
to comply with formatting or the content of the change itself.

Be sure to keep your PR to a single change. If you are working on multiple
changes, make sure they are each on their own branch and that before creating a
new branch that you are on the main branch (others multiple patterns might
end up in your pull request). Each PR should be for a single logical change. We
request that you create a good commit messages as laid out in
['How to Write a Git Commit Message'](http://chris.beams.io/posts/git-commit/).

If your PR is for a single logical change (which is should be) but spans
multiple commits, we'll ask you to squash them into a single commit before we
merge. Steve Klabnik wrote a handy guide for that:
[How to squash commits in a GitHub pull request](http://blog.steveklabnik.com/posts/2012-11-08-how-to-squash-commits-in-a-github-pull-request).

Note that changes that are meaningful to end users of the mode are kept in our
[CHANGELOG](CHANGELOG.md). Please make sure you update it accordingly with when
submitting your PR.
## Pull request

While we don't require that your pull request be a single commit, note that we will end up squashing all your commits into a single commit when we merge. While your PR is in review, we may ask for additional changes, please do not squash those commits while the review is underway. We ask that you not squash while a review is underway as it can make it hard to follow what is going on.

When opening your pull request, please make sure that the initial comment on the PR is the commit message we should use when we merge. Making sure your commit message conforms to these guidelines for [writ(ing) a good commit message](http://chris.beams.io/posts/git-commit/).

Make sure to issue 1 pull request per feature. Don't lump unrelated changes together. If you find yourself using the word "and" in your commit comment, you
are probably doing too much for a single PR.

We keep a [CHANGELOG](CHANGELOG.md) of all software changes with behavioural effects in ponyc. If your PR includes such changes (rather than say a documentation update), a Pony team member will do the following before merging it, so that the PR will be automatically added to the CHANGELOG:

* Ensure that the ticket is tagged with one or more appropriate "changelog - *" labels - each label corresponds to a section of the changelog where this change will be automatically mentioned.
* Ensure that the ticket title is appropriate - the title will be used as the summary of the change, so it should be appropriately formatted, including a ticket reference if the PR is a fix to an existing bug ticket.
* For example, an appropriate title for a PR that fixes a bug reported in issue ticket #98 might look like:
* *Fixed compiler crash related to tuple recovery (issue #98)*

Once those conditions are met, the PR can be merged, and an automated system will immediately add the entry to the changelog. Keeping the changelog entries out of the file changes in the PR helps to avoid conflicts and other administrative headaches when many PRs are in progress.

Any change that involves a changelog entry will trigger a bot to request that you add release notes to your PR.

Pull requests from accounts that aren't members of the Ponylang organization require approval from a member before running. Approval is required after each update that you make. This could involve a lot of waiting on your part for approvals. If you are opening PRs to verify that changes all pass CI before "opening it for real", we strongly suggest that you open the PR against the `main` branch of your fork. CI will then run in your fork and you don't need to wait for approval from a Ponylang member.

0 comments on commit 8d5bcb1

Please sign in to comment.