Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(docs): Add contributing and pr/issue templates #21

Merged
merged 5 commits into from
Apr 18, 2018
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<!--- Provide a general summary of the issue in the Title above -->

<!--- Format your PR title as such: <type>(<scope>): <subject> -->
<!--- according to [these guidelines](https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#-git-commit-guidelines) -->
## Current Behavior
<!--- If describing a bug, tell us what is broken -->
<!--- If suggesting a change/improvement tell us what is missing from the SDK as it is currently -->
Expand All @@ -9,7 +10,7 @@
<!--- If you're suggesting changes, outline your idea here -->

## Possible Solution
<!--- Optional, but helpful! Use this field to suggest bug solutions or change impementation details. Feel free to get technical. -->
<!--- Use this field to suggest bug solutions or change impementation details. Feel free to get technical. Optional, but helpful! -->

## Steps to Reproduce (for bugs)
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
Expand Down
6 changes: 5 additions & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,14 @@

## Description
<!--- Describe your changes in detail -->
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Description needs to also include BREAKING CHANGE: if it's not backwards compatible (i.e. major bump)

<!--- Don't forget to note any issues here with fixes #<issue number> -->
<!--- Please include the phrase "BREAKING CHANGE:" here if your require a major release -->

<!--- Don't forget to note any issues here with "fixes #<issue number>" -->

## How Has This Been Tested?
<!--- Please describe in detail how you tested your changes. -->
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about adding:

For bug fixes, include regression unit tests that fail w/o the fix

For new features, include unit tests for the new functionality

<!--- For bug fixes, include regression unit tests that fail without the fix -->
<!--- For new features, include unit tests for the new functionality -->

## Screenshots (if appropriate):

Expand Down
34 changes: 18 additions & 16 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,14 @@ Thank you for your interest in contributing to Eventbrite's Javascript SDK!

### Setup

1. Fork the repository
2. Clone your new forked repository to your local computer
3. Set the Eventbrite repository as your branches upstream branch
1. This project uses [yarn](https://yarnpkg.com/en/) as a package management system. If you don't have it installed, you can follow the instructions [here](https://yarnpkg.com/lang/en/docs/install/)
1. Fork the repository. [need help?](https://help.github.com/articles/fork-a-repo/)
1. Clone your new forked repository to your local computer
1. Set the Eventbrite repository as your branches upstream branch
`git remote add upstream https://github.com/eventbrite/eventbrite-sdk-javascript.git`
4. Navigate to the root directory of your newly cloned repository
1. Navigate to the root directory of your newly cloned repository
(for mac `cd /path/to/eventbrite-sdk-javascript`)
5. `yarn install` to install local dependencies
1. `yarn install` to install local dependencies
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TIL you can number them all 1 and they will autoincrement.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😅 i spent more time working out what @benmvp was trying to say here than i care to admit

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah that is super odd, but really cool. I would not have guessed that would have worked.


### Using branches to submit changes
To work on changes to the Eventbrite repository, create a new branch on your local repository. `git checkout -b <your-new-branch-name>`
Expand All @@ -30,18 +31,18 @@ To work on changes to the Eventbrite repository, create a new branch on your loc
### Keeping your local repo up to date
To ensure your branch never gets out of sync with Eventbrite's master, ensure that you have your upstream set properly (see the [Setup](#setup) step)

1. `git checkout master` (you may have to stash or commit your local changes if on a new branch)
2. `git pull upstream master`
3. `git checkout <your-new-branch-name>`
4. `git rebase master`
5. If you've stashed changes, unstash them now, otherwise your branch should now be up to date
1. `git checkout master` (you may have to [stash or commit][stash-docs] your local changes if on a new branch)
1. `git pull upstream master`
1. `git checkout <your-new-branch-name>`
1. `git rebase master`
1. If you've stashed changes, [unstash][stash-docs] them now, otherwise your branch should now be up to date

Always try to keep your master 'clean' by only pulling changes directly from upstream into your master branch and rebasing those changes onto your working branch.

It is always a good idea to pull the upstream branch in to your master branch before creating a new feature branch to work from. This will minimize the chances of encountering merge conflicts.

## Creating Issues
Create issues to File bugs, changes, and proposals.
Create issues to file bugs, changes, and proposals.

Before opening a new issue, please [search][issues] to see if there has been previous discussion about the same feature or issue. If so, please contribute to the discussion there.

Expand All @@ -58,12 +59,13 @@ Please try to conform to the coding style of the code base.

###Steps to submit:

1. Please ensure that your changes are fully covered by one or more unit test/s.
2. Check to make sure that your changes are documented properly (inline comments for interesting lines, READMEs, etc.)
3. Run `yarn validate` to ensure that all tests pass, the linter is satisfied and your changes are typescript compliant.
4. PR titles must be prefixed by the type of changes the PR contains followed by the scope of what the pr touches. Please use one of `feat, fix, docs, style, refactor, perf, test, chore` as the prefix. The scope is the the direct product your changes affect. Example: `chore(build): Add encrypted ssh key for semantic-release` because its a chore and it touches the build.
1. Please ensure that your changes are fully covered by one or more unit test(s).
1. Check to make sure that your changes are documented properly (inline comments for interesting lines, READMEs, etc.)
1. Run `yarn validate` to ensure that all tests pass, the linter is satisfied and your changes are typescript compliant.
1. PR titles must be prefixed by the type of changes the PR contains followed by the scope of what the pr touches. We are following the [angular commit guidelines](https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#-git-commit-guidelines). Please use one of `feat, fix, docs, style, refactor, perf, test, chore` as the prefix. The scope is the the direct product your changes affect. Example: `chore(build): Add encrypted ssh key for semantic-release` because its a chore and it touches the build.
* For multiple scope items, you can comma separate 2 or 3 but if there are more than that please use a `*` instead.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

@kwelch kwelch Apr 9, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I believe that would be helpful.

We should probably add badge[s] to the readme that can give some of this context quickly as someone is looking at the package.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a semantic-release badge, but nothing (that I could find) for the angular commit convention. That'd be awesome

5. Please use a [closing issue keyword](https://help.github.com/articles/closing-issues-using-keywords/) to indicate the issue that your fix addresses in the description section of the pull request template. Example: `fixes #32` to close issue #32
1. Please use a [closing issue keyword](https://help.github.com/articles/closing-issues-using-keywords/) to indicate the issue that your fix addresses in the description section of the pull request template. Example: `fixes #32` to close issue #32


[issues]: https://github.com/eventbrite/eventbrite-sdk-javascript/issues
[stash-docs]: https://git-scm.com/book/en/v1/Git-Tools-Stashing
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Read more on [getting a token](https://www.eventbrite.com/developer/v3/api_overv

## Contributing

Check out our contributing document [here](https://github.com/eventbrite/eventbrite-sdk-javascript/blob/master/CONTRIBUTING.md)
Contributions are welcome! See [Contributing Guidelines](CONTRIBUTING.md) for more details.

## Project philosophy

Expand Down