Skip to content

Commit f8af72a

Browse files
committed
Merge remote-tracking branch 'upstream/master'
Conflicts: src/js/core/factories/GridColumn.js src/templates/ui-grid/ui-grid-filter.html
2 parents 10abe8b + 4cbacdb commit f8af72a

File tree

231 files changed

+44123
-3283
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

231 files changed

+44123
-3283
lines changed

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,6 @@ DocProject/Help/Html2
118118
DocProject/Help/html
119119

120120
# Click-Once directory
121-
publish
122121

123122
# Others
124123
[Bb]in

.travis.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ language: node_js
22
sudo: false # defaults to sending build to container-based infrastructure on Travis
33

44
node_js:
5-
- '0.10'
5+
- 4
66

77
notifications:
88
webhooks:
@@ -31,6 +31,7 @@ branches:
3131
only:
3232
- master
3333
- /^3\.0$/
34+
- /^3\.x$/
3435
- /^release-.*$/
3536

3637
before_install:

CHANGELOG.md

Lines changed: 310 additions & 0 deletions
Large diffs are not rendered by default.

CONTRIBUTING.md

Lines changed: 90 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# New Issues are for bug reports or feature requests only!! Questions on how to use the grid should be posted to Stack Overflow or Gitter https://gitter.im/angular-ui/ui-grid.
2+
13
# Contributing to UI Grid
24

35
Please take a moment to review this document in order to make the contribution
@@ -10,18 +12,18 @@ patches and features.
1012

1113
## Developer guidelines
1214

13-
If you're a developer, please take a look at the [Developer guidelines](DEVELOPER.md)
15+
If you're a developer, please take a look at the [Developer guidelines](DEVELOPER.md)
1416

1517
## Using the issue tracker
1618

17-
The [issue tracker](https://github.com/angular-ui/ng-grid/issues) is
19+
The [issue tracker](https://github.com/angular-ui/ui-grid/issues) is
1820
the preferred channel for [bug reports](#bugs), [features requests](#features)
1921
and [submitting pull requests](#pull-requests), but please respect the following
2022
restrictions:
2123

2224
* Please **do not** use the issue tracker for personal support requests (use
23-
[Stack Overflow](http://stackoverflow.com/questions/tagged/ng-grid)
24-
or IRC).
25+
[Stack Overflow](http://stackoverflow.com/questions/tagged/angular-ui-grid) ( [Old Tag](http://stackoverflow.com/questions/tagged/ng-grid))
26+
or our [Gitter Chat](https://gitter.im/angular-ui/ui-grid)).
2527

2628
* Please **do not** derail or troll issues. Keep the discussion on topic and
2729
respect the opinions of others.
@@ -74,7 +76,8 @@ Example:
7476
Feature requests are welcome. But take a moment to find out whether your idea
7577
fits with the scope and aims of the project. It's up to *you* to make a strong
7678
case to convince the project's developers of the merits of this feature. Please
77-
provide as much detail and context as possible.
79+
provide as much detail and context as possible. Please also see the note in the
80+
[Developer guidelines](DEVELOPER.md) about implementing new features as plugins.
7881

7982

8083
<a name="pull-requests"></a>
@@ -92,6 +95,10 @@ project's developers might not want to merge into the project.
9295
Please adhere to the coding conventions used throughout a project (indentation,
9396
accurate comments, etc.) and any other requirements (such as test coverage).
9497

98+
**Include Examples** If possible, include links to a youtube video or GIF
99+
demonstrating your fix or your feature. It will help us understand what you
100+
are doing and why we want to merge it in.
101+
95102
Adhering to the following this process is the best way to get your work
96103
included in the project:
97104

@@ -100,11 +107,11 @@ included in the project:
100107

101108
```bash
102109
# Clone your fork of the repo into the current directory
103-
git clone https://github.com/<your-username>/ng-grid.git
110+
git clone https://github.com/<your-username>/ui-grid.git
104111
# Navigate to the newly cloned directory
105-
cd ng-grid
112+
cd ui-grid
106113
# Assign the original repo to a remote called "upstream"
107-
git remote add upstream https://github.com/angular-ui/ng-grid.git
114+
git remote add upstream https://github.com/angular-ui/ui-grid.git
108115
```
109116

110117
2. If you cloned a while ago, get the latest changes from upstream:
@@ -133,14 +140,85 @@ included in the project:
133140
git pull [--rebase] upstream master
134141
```
135142

136-
6. Push your topic branch up to your fork:
143+
6. Squash your change into one commit
144+
```bash
145+
git rebase -i master
146+
```
147+
148+
7. Push your topic branch up to your fork:
137149

138150
```bash
139-
git push origin <topic-branch-name>
151+
git push [--force] origin <topic-branch-name>
140152
```
141153

142-
7. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
154+
8. [Open a Pull Request](https://help.github.com/articles/using-pull-requests/)
143155
with a clear title and description.
144156

145157
**IMPORTANT**: By submitting a patch, you agree to allow the project owners to
146-
license your work under the the terms of the [MIT License](LICENSE.md).
158+
license your work under the terms of the [MIT License](LICENSE.md).
159+
160+
## <a name="commit"></a> Git Commit Guidelines
161+
162+
We have very precise rules over how our git commit messages can be formatted. This leads to **more
163+
readable messages** that are easy to follow when looking through the **project history**. But also,
164+
we use the git commit messages to **generate the UIGrid change log**.
165+
166+
Alternatively you can install [commitizen](https://github.com/commitizen/cz-cli) **OR**
167+
use the wizard. To use the wizard, run `npm run commit` in your terminal after staging your changes in git.
168+
169+
### Commit Message Format
170+
**If you do not follow this style guide your commit message will fail to be created.**
171+
Each commit message consists of a **header**, a **body** and a **footer**. The header has a special
172+
format that includes a **type**, a **scope** and a **subject**:
173+
174+
```
175+
<type>(<scope>): <subject>
176+
<BLANK LINE>
177+
<body>
178+
<BLANK LINE>
179+
<footer>
180+
```
181+
182+
The **header** is mandatory and the **scope** of the header is optional.
183+
184+
Any line of the commit message cannot be longer 100 characters! This allows the message to be easier
185+
to read on GitHub as well as in various git tools.
186+
187+
### Revert
188+
If the commit reverts a previous commit, it should begin with `revert: `, followed by the header of the reverted commit. In the body it should say: `This reverts commit <hash>.`, where the hash is the SHA of the commit being reverted.
189+
190+
### Type
191+
Must be one of the following:
192+
193+
* **feat**: A new feature
194+
* **fix**: A bug fix
195+
* **docs**: Documentation only changes
196+
* **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing
197+
semi-colons, etc)
198+
* **refactor**: A code change that neither fixes a bug nor adds a feature
199+
* **perf**: A code change that improves performance
200+
* **test**: Adding missing tests
201+
* **chore**: Changes to the build process or auxiliary tools and libraries such as documentation
202+
generation
203+
204+
### Scope
205+
The scope could be anything specifying place of the commit change. For example `core`,
206+
`infinite-scroll`, `pagination`, `cellnav`, `edit`, `importer`, `pinning`, etc...
207+
208+
### Subject
209+
The subject contains succinct description of the change:
210+
211+
* use the imperative, present tense: "change" not "changed" nor "changes"
212+
* don't capitalize first letter
213+
* no dot (.) at the end
214+
215+
### Body
216+
Just as in the **subject**, use the imperative, present tense: "change" not "changed" nor "changes".
217+
The body should include the motivation for the change and contrast this with previous behavior.
218+
219+
### Footer
220+
The footer should contain any information about **Breaking Changes** and is also the place to
221+
reference GitHub issues that this commit **Closes**.
222+
223+
**Breaking Changes** should start with the word `BREAKING CHANGE:` with a space or two newlines. The rest of the commit message is then used for this.
224+

DEVELOPER.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ http://localhost:9003/docs/#/tutorial to browse each tutorial.
2222
<br/> fast - alias for --no-e2e --core --angular=1.3.6
2323

2424
```
25-
grunt dev --no-e2e --angular=1.3.6
25+
grunt dev --no-e2e --angular=1.3.16
2626
```
2727

2828
# Code Structure
@@ -32,16 +32,20 @@ The core angular module (ui.grid) provides the basics
3232
- Virtualization
3333
- Row Selection
3434

35-
Everything else should be added as new angular modules unless the grid team agrees that it's a core feature.
35+
Everything else should be added as new angular modules unless the grid team agrees that it's a core feature. All new feature
36+
modules should be developed as plugins, and be hosted in their own repositories. There is a great [blog post](http://brianhann.com/write-your-own-ui-grid-plugin/)
37+
about developing a plugin for ui-grid. Your plugin should use the available publicApi, if you need something in the publicApi that isn't
38+
currently exposed, we welcome pull requests.
39+
40+
The grid team has limited time to spend on this project, and as the list of features grows, so does the effort required to support
41+
those features. In a future release we will be working to move some of the existing features out of the core repository. The basic
42+
rule of thumb for any new features is: "If it is possible to implement it as a plugin, it should be a plugin".
3643

3744
## Feature module design
38-
* We prefer no 3rd party dependencies other than angular. Contact grid team if you have a 3rd party need that can't be avoided.
45+
* We prefer no 3rd party dependencies other than angular.
3946
* jQuery is only used in Unit Tests
4047
* unit test your code! not that hard. see test/unit for examples. Features will be rejected if the test coverage isn't adequate.
4148
* use ngDoc to document how to use your feature. see examples in existing code.
42-
* New module should be named ui.grid.feature
43-
* feature folder is added below src
44-
* One js file per feature
4549
* no global variables
4650
* public methods and events are registered in grid.api (more on that later)
4751
* design and code the angular way. What do we mean by that? Dependency injection, small directives, emphasis the model, not the DOM, tests!

FIRST_TIMER.md

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ In order to contribute an update your basic process is:
3131
can work, and over which you have access permissions
3232
- Clone that repository
3333
- Setup the toolset on your local machine
34-
- Make the documentation changes, and verify that they look at you had hoped
34+
- Make the documentation changes, and verify that they look as you had hoped
3535
- Run the tests to check that nothing has broken
3636
- Commit the code to git, and push the branch to your fork
3737
- Create a pull request from your fork to the upstream repository
@@ -40,11 +40,9 @@ We'll go through each step in turn.
4040

4141
### Fork the ui-grid repository ###
4242
This is the easiest step. Get yourself a github logon, and navigate to the
43-
[ui-grid github page](https://github.com/angular-ui/ng-grid). Note that the
44-
actual repository still goes by the old project name of ng-grid. Click the
43+
[ui-grid github page](https://github.com/angular-ui/ui-grid). Click the
4544
fork button in the top left. This should navigate you to your list of
46-
projects in github, with a new fork of ui-grid (also called ng-grid in your
47-
repository list).
45+
projects in github, with a new fork of ui-grid.
4846

4947
You'll see that this gives you your own issue tracker and a bunch of other content.
5048
In general you'll ignore all this, and you'll just use your fork for submitting
@@ -79,8 +77,8 @@ inside it, within the .git folder.
7977

8078
We also want to setup a link to the upstream repository, which we use when fetching
8179
the latest code version:
82-
` cd ng-grid`
83-
` git remote add upstream https://github.com/angular-ui/ng-grid.git`
80+
` cd ui-grid`
81+
` git remote add upstream https://github.com/angular-ui/ui-grid.git`
8482

8583
This allows you to get the latest code from upstream by:
8684
` git fetch upstream` or
@@ -203,7 +201,7 @@ Look through the diff listing to verify that only the changes you expected are p
203201
To commit to git, you can:
204202
` git add .`
205203
` git commit`
206-
In your commit message, follow the guidelines from [CONTRIBUTING.md](https://github.com/angular-ui/ng-grid/blob/master/CONTRIBUTING.md):
204+
In your commit message, follow the guidelines from [CONTRIBUTING.md](https://github.com/angular-ui/ui-grid/blob/master/CONTRIBUTING.md):
207205

208206
- Please adhere to these [git commit message guidelines](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
209207
or your code is unlikely be merged into the main project.
@@ -232,7 +230,7 @@ This will give you an error message, but also tell you what the real instruction
232230
copy and paste:
233231
` git push --set-upstream origin 1023_nulls_to_custom_sort`
234232

235-
Now go to your homepage in git, and to your fork of the ng-grid repository. You should see a message saying
233+
Now go to your homepage in git, and to your fork of the ui-grid repository. You should see a message saying
236234
that a new branch has been pushed, and asking if you want to create a pull request. Click that button,
237235
and check the list of changes again in the commit history, and that there is a good quality commit
238236
message with only a single commit.

ISSUE_TEMPLATE.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Please make sure each of the following is true before submitting a new issue. We are a small team with limited time and it is very difficult to manage issues if they aren't reported correctly.
2+
3+
- [ ] This is a bug report, not a question on how to use the grid.
4+
Use [Stack Overflow](http://stackoverflow.com/questions/tagged/angular-ui-grid) or [Gitter](https://gitter.im/angular-ui/ui-grid) for questions.
5+
- [ ] You have searched the open issues to see if this bug has been filed before. We don't want duplicate issues.
6+
- [ ] You have reviewed the tutorials and documentation to ensure you are using the grid correctly. [ui-grid.info](http://ui-grid.info/docs/#/tutorial)
7+
- [ ] You are using the latest version of the grid. Older versions are not patched or supported.
8+
- [ ] You have provided steps to recreate your bug. A plunkr is even better.

0 commit comments

Comments
 (0)