Skip to content

Commit ab74c56

Browse files
committed
Merge remote-tracking branch 'upstream/master' into ngList_input_fix
Conflicts: src/ng/directive/input.js
2 parents e62a879 + e16c6aa commit ab74c56

File tree

726 files changed

+41765
-25324
lines changed

Some content is hidden

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

726 files changed

+41765
-25324
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,4 @@ angular.xcodeproj
1717
libpeerconnection.log
1818
npm-debug.log
1919
/tmp/
20+
/scripts/bower/bower-*

.jscs.json

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"disallowKeywords": ["with"],
3+
"disallowTrailingWhitespace": true,
4+
"requireRightStickedOperators": ["!"],
5+
"requireLeftStickedOperators": [","]
6+
}

.jscs.json.todo

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// This is an incomplete TODO list of checks we want to start enforcing
2+
//
3+
// The goal is to enable these checks one by one by moving them to .jscs.json along with commits
4+
// that correct the existing code base issues and make the new check pass.
5+
6+
{
7+
"requireCurlyBraces": ["if", "else", "for", "while", "do", "try", "catch"],
8+
"requireSpaceAfterKeywords": ["if", "else", "for", "while", "do", "switch", "return", "try", "catch"],
9+
"disallowLeftStickedOperators": ["?", "+", "-", "/", "*", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<="],
10+
"disallowRightStickedOperators": ["?", "+", "/", "*", ":", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<="],
11+
"disallowImplicitTypeConversion": ["string"],
12+
"disallowMultipleLineBreaks": true,
13+
"disallowKeywordsOnNewLine": ["else"],
14+
"requireLineFeedAtFileEnd": true,
15+
"validateJSDoc": {
16+
"checkParamNames": true,
17+
"requireParamTypes": true
18+
}
19+
}

.travis.yml

+22-8
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,39 @@ language: node_js
22
node_js:
33
- 0.10
44

5+
branches:
6+
except:
7+
- /^g3_.*$/
8+
59
env:
10+
matrix:
11+
- JOB=unit
12+
- JOB=e2e TEST_TARGET=jqlite
13+
- JOB=e2e TEST_TARGET=jquery
14+
- JOB=e2e TEST_TARGET=doce2e
615
global:
716
- SAUCE_USERNAME=angular-ci
817
- SAUCE_ACCESS_KEY=9b988f434ff8-fbca-8aa4-4ae3-35442987
9-
- SAUCE_CONNECT_READY_FILE=/tmp/sauce-connect-ready
1018
- LOGS_DIR=/tmp/angular-build/logs
19+
- BROWSER_PROVIDER_READY_FILE=/tmp/sauce-connect-ready
1120

1221
before_script:
1322
- mkdir -p $LOGS_DIR
1423
- ./lib/sauce/sauce_connect_setup.sh
1524
- npm install -g grunt-cli
16-
- grunt bower
17-
- grunt bower
18-
- grunt package-without-bower
19-
- grunt ci-checks
20-
- ./lib/sauce/sauce_connect_block.sh
25+
- grunt package
26+
- ./scripts/travis/wait_for_browser_provider.sh
2127

2228
script:
23-
- ./travis_build.sh
29+
- ./scripts/travis/build.sh
2430

2531
after_script:
26-
- ./travis_print_logs.sh
32+
- ./scripts/travis/print_logs.sh
33+
34+
notifications:
35+
webhooks:
36+
urls:
37+
- https://webhooks.gitter.im/e/d2120f3f2bb39a4531b2
38+
on_success: change # options: [always|never|change] default: always
39+
on_failure: always # options: [always|never|change] default: always
40+
on_start: false # default: false

CHANGELOG.md

+1,417-3
Large diffs are not rendered by default.

CONTRIBUTING.md

+262-20
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,274 @@
1-
## Submitting issues
1+
#Contributing to AngularJS
22

3-
If you have questions about how to use AngularJS, please direct these to the
4-
[Google Group][groups] discussion list or [StackOverflow][stackoverflow]. We are
5-
also available on [IRC][irc].
3+
We'd love for you to contribute to our source code and to make AngularJS even better than it is
4+
today! Here are the guidelines we'd like you to follow:
65

7-
### Guidelines
6+
- [Code of Conduct](#coc)
7+
- [Question or Problem?](#question)
8+
- [Issues and Bugs](#issue)
9+
- [Feature Requests](#feature)
10+
- [Submission Guidelines](#submit)
11+
- [Coding Rules](#rules)
12+
- [Commit Message Guidelines](#commit)
13+
- [Signing the CLA](#cla)
14+
- [Further Info](#info)
815

9-
* Search the archive first, it's likely that your question was already answered.
10-
* A live example demonstrating your problem or question, will get an answer faster.
11-
* Create one using this [template][template]
12-
* If you get help, help others. Good karma rulez!
16+
## <a name="coc"></a> Code of Conduct
17+
Help us keep Angular open and inclusive. Please read and follow our [Code of Conduct][coc].
18+
19+
## <a name="question"></a> Got a Question or Problem?
20+
21+
If you have questions about how to use AngularJS, please direct these to the [Google Group][groups]
22+
discussion list or [StackOverflow][stackoverflow]. We are also available on [IRC][irc].
23+
24+
## <a name="issue"></a> Found an Issue?
25+
If you find a bug in the source code or a mistake in the documentation, you can help us by
26+
submitting an issue to our [GitHub Repository][github]. Even better you can submit a Pull Request
27+
with a fix.
28+
29+
***Localization Issue:*** *Angular.js uses the [Google Closure I18N library], to generate its own I18N files. This means that
30+
any changes to these files would be lost the next time that we import the library. The recommended
31+
approach is to submit a patch to the I18N project directly, instead of submitting it here.*
32+
33+
**Please see the Submission Guidelines below**.
34+
35+
## <a name="feature"></a> Want a Feature?
36+
You can request a new feature by submitting an issue to our [GitHub Repository][github]. If you
37+
would like to implement a new feature then consider what kind of change it is:
38+
39+
* **Major Changes** that you wish to contribute to the project should be discussed first on our
40+
[dev mailing list][angular-dev] or [IRC][irc] so that we can better coordinate our efforts, prevent
41+
duplication of work, and help you to craft the change so that it is successfully accepted into the
42+
project.
43+
* **Small Changes** can be crafted and submitted to [GitHub Repository][github] as a Pull Request.
44+
45+
46+
## <a name="docs"></a> Want a Doc Fix?
47+
If you want to help improve the docs, it's a good idea to let others know what you're working on to
48+
minimize duplication of effort. Before starting, check out the issue queue for [Milestone:Docs Only](https://github.com/angular/angular.js/issues?milestone=24&state=open).
49+
Comment on an issue to let others know what you're working on, or create a new issue if your work
50+
doesn't fit within the scope of any of the existing doc fix projects.
51+
52+
For large fixes, please build and test the documentation before submitting the PR to be sure you haven't
53+
accidentally introduced any layout or formatting issues. You should also make sure that your commit message
54+
is labeled "docs:" and follows the **Git Commit Guidelines** outlined below.
55+
56+
If you're just making a small change, don't worry about filing an issue first. Use the friendly blue "Improve this doc" button at the top right of the doc page to fork the repository in-place and make a quick change on the fly.
57+
58+
## <a name="submit"></a> Submission Guidelines
59+
60+
### Submitting an Issue
61+
Before you submit your issue search the archive, maybe your question was already answered.
1362

1463
If your issue appears to be a bug, and hasn't been reported, open a new issue.
1564
Help us to maximize the effort we can spend fixing issues and adding new
16-
features, by not reporting duplicate issues.
65+
features, by not reporting duplicate issues. Providing the following information will increase the
66+
chances of your issue being dealt with quickly:
1767

18-
[stackoverflow]: http://stackoverflow.com/questions/tagged/angularjs
19-
[groups]: https://groups.google.com/forum/?fromgroups#!forum/angular
20-
[irc]: http://webchat.freenode.net/?channels=angularjs&uio=d4
21-
[template]: http://plnkr.co/edit/gist:3510140
68+
* **Overview of the issue** - if an error is being thrown a non-minified stack trace helps
69+
* **Motivation for or Use Case** - explain why this is a bug for you
70+
* **Angular Version(s)** - is it a regression?
71+
* **Browsers and Operating System** - is this a problem with all browsers or only IE8?
72+
* **Reproduce the error** - provide a live example (using [Plunker][plunker] or
73+
[JSFiddle][jsfiddle]) or a unambiguous set of steps.
74+
* **Related issues** - has a similar issue been reported before?
75+
* **Suggest a Fix** - if you can't fix the bug yourself, perhaps you can point to what might be
76+
causing the problem (line of code or commit)
2277

23-
## Contributing to Source Code
78+
Here is a great example of a well defined issue: https://github.com/angular/angular.js/issues/5069
2479

25-
We'd love for you to contribute to our source code and to make AngularJS even
26-
better than it is today!
80+
**If you get help, help others. Good karma rulez!**
2781

28-
Please read the [contribution guidelines][contribute] to learn about how to submit code as well as
29-
other useful info like how to build and test AngularJS code.
82+
### Submitting a Pull Request
83+
Before you submit your pull request consider the following guidelines:
3084

31-
[list]: https://groups.google.com/forum/?fromgroups#!forum/angular
85+
* Search [GitHub](https://github.com/angular/angular.js/pulls) for an open or closed Pull Request
86+
that relates to your submission. You don't want to duplicate effort.
87+
* Please sign our [Contributor License Agreement (CLA)](#signing-the-cla) before sending pull
88+
requests. We cannot accept code without this.
89+
* Make your changes in a new git branch
90+
91+
```shell
92+
git checkout -b my-fix-branch master
93+
```
94+
95+
* Create your patch, **including appropriate test cases**.
96+
* Follow our [Coding Rules](#coding-rules).
97+
* Run the full Angular test suite, as described in the [developer documentation][dev-doc],
98+
and ensure that all tests pass.
99+
* Commit your changes using a descriptive commit message that follows our
100+
[commit message conventions](#commit-message-format) and passes our commit message presubmit hook
101+
`validate-commit-msg.js`. Adherence to the [commit message conventions](#commit-message-format)
102+
is required because release notes are automatically generated from these messages.
103+
104+
```shell
105+
git commit -a
106+
```
107+
Note: the optional commit `-a` command line option will automatically "add" and "rm" edited files.
108+
109+
* Build your changes locally to ensure all the tests pass
110+
111+
```shell
112+
grunt test
113+
```
114+
115+
* Push your branch to GitHub:
116+
117+
```shell
118+
git push origin my-fix-branch
119+
```
120+
121+
* In GitHub, send a pull request to `angular:master`.
122+
* If we suggest changes then
123+
* Make the required updates.
124+
* Re-run the Angular test suite to ensure tests are still passing.
125+
* Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
126+
127+
```shell
128+
git rebase master -i
129+
git push -f
130+
```
131+
132+
That's it! Thank you for your contribution!
133+
134+
#### After your pull request is merged
135+
136+
After your pull request is merged, you can safely delete your branch and pull the changes
137+
from the main (upstream) repository:
138+
139+
* Delete the remote branch on GitHub either through the GitHub web UI or your local shell as follows:
140+
141+
```shell
142+
git push origin --delete my-fix-branch
143+
```
144+
145+
* Check out the master branch:
146+
147+
```shell
148+
git checkout master -f
149+
```
150+
151+
* Delete the local branch:
152+
153+
```shell
154+
git branch -D my-fix-branch
155+
```
156+
157+
* Update your master with the latest upstream version:
158+
159+
```shell
160+
git pull --ff upstream master
161+
```
162+
163+
## <a name="rules"></a> Coding Rules
164+
To ensure consistency throughout the source code, keep these rules in mind as you are working:
165+
166+
* All features or bug fixes **must be tested** by one or more [specs][unit-testing].
167+
* All public API methods **must be documented** with ngdoc, an extended version of jsdoc (we added
168+
support for markdown and templating via @ngdoc tag). To see how we document our APIs, please check
169+
out the existing ngdocs and see [this wiki page][ngDocs].
170+
* With the exceptions listed below, we follow the rules contained in
171+
[Google's JavaScript Style Guide][js-style-guide]:
172+
* **Do not use namespaces**: Instead, wrap the entire angular code base in an anonymous closure and
173+
export our API explicitly rather than implicitly.
174+
* Wrap all code at **100 characters**.
175+
* Instead of complex inheritance hierarchies, we **prefer simple objects**. We use prototypical
176+
inheritance only when absolutely necessary.
177+
* We **love functions and closures** and, whenever possible, prefer them over objects.
178+
* To write concise code that can be better minified, we **use aliases internally** that map to the
179+
external API. See our existing code to see what we mean.
180+
* We **don't go crazy with type annotations** for private internal APIs unless it's an internal API
181+
that is used throughout AngularJS. The best guidance is to do what makes the most sense.
182+
183+
## <a name="commit"></a> Git Commit Guidelines
184+
185+
We have very precise rules over how our git commit messages can be formatted. This leads to **more
186+
readable messages** that are easy to follow when looking through the **project history**. But also,
187+
we use the git commit messages to **generate the AngularJS change log**.
188+
189+
### Commit Message Format
190+
Each commit message consists of a **header**, a **body** and a **footer**. The header has a special
191+
format that includes a **type**, a **scope** and a **subject**:
192+
193+
```
194+
<type>(<scope>): <subject>
195+
<BLANK LINE>
196+
<body>
197+
<BLANK LINE>
198+
<footer>
199+
```
200+
201+
Any line of the commit message cannot be longer 100 characters! This allows the message to be easier
202+
to read on github as well as in various git tools.
203+
204+
### Type
205+
Must be one of the following:
206+
207+
* **feat**: A new feature
208+
* **fix**: A bug fix
209+
* **docs**: Documentation only changes
210+
* **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing
211+
semi-colons, etc)
212+
* **refactor**: A code change that neither fixes a bug or adds a feature
213+
* **perf**: A code change that improves performance
214+
* **test**: Adding missing tests
215+
* **chore**: Changes to the build process or auxiliary tools and libraries such as documentation
216+
generation
217+
218+
### Scope
219+
The scope could be anything specifying place of the commit change. For example `$location`,
220+
`$browser`, `$compile`, `$rootScope`, `ngHref`, `ngClick`, `ngView`, etc...
221+
222+
### Subject
223+
The subject contains succinct description of the change:
224+
225+
* use the imperative, present tense: "change" not "changed" nor "changes"
226+
* don't capitalize first letter
227+
* no dot (.) at the end
228+
229+
###Body
230+
Just as in the **subject**, use the imperative, present tense: "change" not "changed" nor "changes"
231+
The body should include the motivation for the change and contrast this with previous behavior.
232+
233+
###Footer
234+
The footer should contain any information about **Breaking Changes** and is also the place to
235+
reference GitHub issues that this commit **Closes**.
236+
237+
238+
A detailed explanation can be found in this [document][commit-message-format].
239+
240+
## <a name="cla"></a> Signing the CLA
241+
242+
Please sign our Contributor License Agreement (CLA) before sending pull requests. For any code
243+
changes to be accepted, the CLA must be signed. It's a quick process, we promise!
244+
245+
* For individuals we have a [simple click-through form][individual-cla].
246+
* For corporations we'll need you to
247+
[print, sign and one of scan+email, fax or mail the form][corporate-cla].
248+
249+
## <a name="info"></a> Further Information
250+
You can find out more detailed information about contributing in the
251+
[AngularJS documentation][contributing].
252+
253+
254+
255+
[Google Closure I18N library]: https://code.google.com/p/closure-library/source/browse/closure/goog/i18n/
256+
[angular-dev]: https://groups.google.com/forum/?fromgroups#!forum/angular-dev
257+
[coc]: https://github.com/angular/code-of-conduct/blob/master/CODE_OF_CONDUCT.md
258+
[commit-message-format]: https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJygNPiHORgU1_OOAqWjiDU5Y/edit#
32259
[contribute]: http://docs.angularjs.org/misc/contribute
260+
[contributing]: http://docs.angularjs.org/misc/contribute
261+
[corporate-cla]: http://code.google.com/legal/corporate-cla-v1.0.html
262+
[github]: https://github.com/angular/angular.js
263+
[groups]: https://groups.google.com/forum/?fromgroups#!forum/angular
264+
[individual-cla]: http://code.google.com/legal/individual-cla-v1.0.html
265+
[irc]: http://webchat.freenode.net/?channels=angularjs&uio=d4
266+
[js-style-guide]: http://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
267+
[jsfiddle]: http://jsfiddle.net/
268+
[list]: https://groups.google.com/forum/?fromgroups#!forum/angular
269+
[ngDocs]: https://github.com/angular/angular.js/wiki/Writing-AngularJS-Documentation
270+
[plunker]: http://plnkr.co/edit
271+
[stackoverflow]: http://stackoverflow.com/questions/tagged/angularjs
272+
[unit-testing]: http://docs.angularjs.org/guide/dev_guide.unit-testing
273+
274+
[![Analytics](https://ga-beacon.appspot.com/UA-8594346-11/angular.js/CONTRIBUTING.md?pixel)](https://github.com/igrigorik/ga-beacon)

0 commit comments

Comments
 (0)