Skip to content
This repository was archived by the owner on Sep 6, 2021. It is now read-only.

Commit 8c1b146

Browse files
committed
Merge with Master
2 parents 439835c + 75721fe commit 8c1b146

469 files changed

Lines changed: 44005 additions & 23329 deletions

File tree

Some content is hidden

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

.gitmodules

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,18 @@
1010
[submodule "src/thirdparty/mustache"]
1111
path = src/thirdparty/mustache
1212
url = https://github.com/janl/mustache.js.git
13+
[submodule "src/extensions/default/JavaScriptCodeHints/thirdparty/tern"]
14+
path = src/extensions/default/JavaScriptCodeHints/thirdparty/tern
15+
url = https://github.com/marijnh/tern.git
16+
[submodule "src/extensions/default/JavaScriptCodeHints/thirdparty/acorn"]
17+
path = src/extensions/default/JavaScriptCodeHints/thirdparty/acorn
18+
url = https://github.com/marijnh/acorn.git
19+
[submodule "src/thirdparty/requirejs"]
20+
path = src/thirdparty/requirejs
21+
url = https://github.com/jrburke/requirejs.git
22+
[submodule "src/thirdparty/text"]
23+
path = src/thirdparty/text
24+
url = https://github.com/requirejs/text.git
25+
[submodule "src/thirdparty/i18n"]
26+
path = src/thirdparty/i18n
27+
url = https://github.com/requirejs/i18n.git

.travis.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ language: node_js
22
node_js:
33
- 0.8
44
before_script:
5-
- npm install -g grunt-cli
5+
- npm install -g grunt-cli
6+
- npm install -g jasmine-node

CONTRIBUTING.md

Lines changed: 95 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,117 @@
1-
###Curious to start contributing to Brackets?
1+
# The Basics
22

3+
### Filing a bug
34

4-
With this file we want to provide some general guidance how to contribute to Brackets - your [feedback](https://groups.google.com/forum/?fromgroups=#!topic/brackets-dev/yEsaied7Fq8) is very welcome.
5+
Check the [Troubleshooting Page](https://github.com/adobe/brackets/wiki/Troubleshooting) for common
6+
issues with installing & launching Brackets, using Live Preview, etc.
57

6-
Issues starting Brackets the first time? Please review the [Troubleshooting Page](https://github.com/adobe/brackets/wiki/Troubleshooting).
8+
**For bugs** be sure to search existing issues first. Include steps to consistently reproduce the
9+
problem, actual vs. expected results, and your OS and Brackets version number.
10+
Disable all extensions to verify the issue is a core Brackets bug.
11+
[Read more guidelines for filing good bugs...](https://github.com/adobe/brackets/wiki/How-to-Report-an-Issue)
712

8-
## Starter Bugs
13+
**For feature requests** please first check our [feature backlog](http://bit.ly/BracketsBacklog) to
14+
see if it's already there. You can upvote features you'd like to see.
915

10-
If you need some inspiration for a **starter bug**, we have some for you either as [GitHub Issue](https://github.com/adobe/brackets/issues?labels=starter+bug&page=1&state=open) or on the [Trello Board](https://trello.com/board/brackets/4f90a6d98f77505d7940ce88) (there, choose on the right hand sidebar "Filter Cards" and then click on "Starter Feature").
16+
### Submitting a pull request
1117

12-
## Getting Started
18+
**Before you start coding**, post to the [brackets-dev Google group](http://groups.google.com/group/brackets-dev)
19+
or the [#brackets IRC channel on freenode](http://webchat.freenode.net/?channels=brackets) about what
20+
you're thinking of working on, so you can get early feedback. We don't want you to do tons of work
21+
and then have to rewrite half of it!
1322

14-
Before you start coding, post to the [brackets-dev Google group](http://groups.google.com/group/brackets-dev) or the [#brackets IRC channel on freenode](http://freenode.net) about what you're thinking of working on, so you can get early feedback.
15-
This also provides you with an opportunity to find out what others including the core team are working on.
23+
For more on what's expected in a good pull request, see [Contributing Code](#contributing-code) below.
1624

1725

18-
Brackets is developed using Agile development methodologies, features are tracked as user stories on the [public Brackets backlog](http://bit.ly/BracketsBacklog). You may _vote_ on existing stories or find stories to work on with others.
26+
# Ways to Contribute
1927

20-
1. Please sign the [Brackets Contributor License Agreement](http://dev.brackets.io/brackets-contributor-license-agreement.html). You must agree to and submit this before you can contribute to Brackets.
28+
There are many ways you can contribute to the Brackets project:
2129

22-
1. Please collaborate with others in providing and receiving guidance; the Brackets team made it a priority
23-
to look at pull requests daily, however depending on the feature priority, the complexity of a contribution,
24-
and available bandwidth we may not be able to work on it right away.
30+
* **Fix a bug** or **implement a new feature** - read on below.
31+
* **[Write a Brackets extension](https://github.com/adobe/brackets/wiki/How-to-write-extensions)** and
32+
tell us about it!
33+
* **Test Brackets** and [report bugs](https://github.com/adobe/brackets/wiki/How-to-Report-an-Issue)
34+
you find. For sample testing steps, see
35+
[Brackets smoke tests](https://github.com/adobe/brackets/wiki/Brackets-Smoke-Tests),
36+
[smoke tests with a local server](https://github.com/adobe/brackets/wiki/Brackets-Server-Smoke-Tests), and
37+
[UI walkthrough steps](https://github.com/adobe/brackets/wiki/Localization-Tests).
38+
* **Write unit tests** for Brackets.
39+
* **Translate** Brackets into other languages (and help keep those translations up to date) - see
40+
[localization README](https://github.com/adobe/brackets/blob/master/src/nls/README.md).
41+
* **Write documentation** and help keep it up to date
42+
(the [How to Use Brackets](https://github.com/adobe/brackets/wiki/How-to-Use-Brackets) intro page
43+
is one example).
44+
* **Try out some [Brackets extensions](https://github.com/adobe/brackets/wiki/Brackets-Extensions)**
45+
and give feedback to their authors.
2546

2647

27-
## Making Changes
28-
If you use Brackets to edit Brackets, you can quickly reload the app itself by choosing Debug > Reload Brackets from the in-app menu.
29-
When coding, make sure to follow our [coding conventions](https://github.com/adobe/brackets/wiki/Brackets%20Coding%20Conventions).
48+
## Where Do I Start?
3049

50+
To start editing the Brackets code, read **[How to Hack on Brackets](https://github.com/adobe/brackets/wiki/How-to-Hack-on-Brackets)**.
51+
To create your first Brackets extension, check out **[How to Write Extensions](https://github.com/adobe/brackets/wiki/How-to-write-extensions)**.
52+
53+
Here are some ideas:
54+
55+
* [Starter bugs](https://github.com/adobe/brackets/issues?labels=starter+bug&state=open) can
56+
provide a good intro to the Brackets code.
57+
* [Extension ideas](https://github.com/adobe/brackets/issues?labels=Extension+Idea&state=closed)
58+
are feature requests that we think would be best implemented as an add-on; it's up to the
59+
Brackets community to write them!
60+
* [Starter features](http://bit.ly/BracketsBacklog) are a bit larger in scope. Be sure to discuss
61+
these in the newsgroup before starting. _(To see starter features, click Filter Cards on the
62+
right and then click the green "Starter Feature" label)._
63+
64+
Once you're ready to start coding, see the next section, [Contributing Code](#contributing-code).
65+
66+
**I'm new to JavaScript. How can I contribute to Brackets?** Brackets is a lot more complicated
67+
than the average website that uses JS. Better to start on some JS tutorials (like [Codecademy's](http://www.codecademy.com/tracks/javascript)
68+
or [MDN's](https://developer.mozilla.org/en-US/docs/JavaScript/Getting_Started)) and contribute
69+
in some of the other ways listed above. Testing is a great way to start thinking like a programmer
70+
before you've learned to code!
71+
72+
73+
## Contributing Code
74+
75+
To get started editing the Brackets code, read [How to Hack on Brackets](https://github.com/adobe/brackets/wiki/How-to-Hack-on-Brackets).
3176

3277
Before submitting any pull request, please make sure to:
3378

34-
1. read the following wiki page on GitHub: https://github.com/adobe/brackets/wiki/How-to-Hack-on-Brackets.
35-
1. merge from adobe/brackets master
36-
1. re-test your code after the merge
37-
1. run the unit tests with Debug > Run Tests -- everything should pass
38-
1. if your change is nontrivial or might have affected the UI, run through the [Brackets smoke tests](Brackets-Smoke-Tests) and possibly the [Brackets server smoke tests](Brackets-Server-Smoke-Tests).
39-
1. review the [Pull Request Checklist](https://github.com/adobe/brackets/wiki/Pull-Request-Checklist) for additional guidance.
79+
1. Discuss any major changes or questions beforehand in the [brackets-dev newsgroup](http://groups.google.com/group/brackets-dev).
80+
2. Consider whether your change would be better as an optional extension. Brackets is lightweight
81+
and tightly focused - but highly extensible.
82+
3. Follow the [Pull Request Checklist](https://github.com/adobe/brackets/wiki/Pull-Request-Checklist)
83+
to ensure a good-quality pull request.
84+
4. Sign the [Brackets Contributor License Agreement](http://dev.brackets.io/brackets-contributor-license-agreement.html)
85+
(we cannot merge before this).
86+
87+
High quality code and a top-notch user experience are very important in Brackets, and we carefully
88+
review pull requests to keep it that way. The better you follow the guidelines above, the more likely
89+
we are to accept your pull request - and the faster the code review will go.
90+
4091

41-
## Reviewing Code, Committing
92+
## The Code Review Process
93+
94+
Brackets committers are responsible for reviewing all pull requests, providing feedback, and
95+
ultimately merging good code into `master`. The review process ensures all code is high quality,
96+
maintainable, and well documented.
97+
98+
Once you've opened a pull request, a committer will generally respond to it within a week with an
99+
initial set of comments (you don't need to ping anyone to find a reviewer). Some pull requests
100+
raise larger questions about UI design, product scope or architecture. Those are tagged to indicate
101+
that review will take longer:
102+
103+
* \[PM\] - needs high-level input from product management
104+
* \[XD\] - needs UI design / visual design discussion
105+
* \[ARCH\] - needs architectural discussion
42106

43-
In general code reviews can be performed by anyone who knows his/her limits, is familiar with the feature area and the architecture,
44-
where the code, being reviewed, is added or altered.
45-
To submit changes one needs commit rights - those are limited to ensure sustainable high quality. Committers are tasked with taking
46-
a leading role in the project by making code contributions, assisting others with their contributions in the form
47-
of reviewing and merging pull requests, and providing feedback and suggestions on the direction of the project.
107+
The best way to avoid this sort of holdup is to discuss your changes on the newsgroup first!
48108

49-
Please refer to the [Committer Policy](https://github.com/adobe/brackets/wiki/Brackets-Committer-Policy) for more information.
50-
If you want to perform reviews, but don't have commit rights yet, we encourage you to do so. Please add a note that you start reviewing.
51-
After you have finished your review ping us at IRC or leave a comment that your review has been completed. A committer will submit the pull request based on
52-
priority. If a pull request already shows an assignee, please check with him/her first.
109+
Once your pull request is merged, it will appear in the next release of Brackets - generally within
110+
two weeks.
53111

54-
##Additional Resources
112+
**Interested in becoming a committer?** See the [Committer Policy](https://github.com/adobe/brackets/wiki/Brackets-Committer-Policy)
113+
for details. Committers are expected to take a leading role in the project by making significant
114+
code contributions, reviewing pull requests, and providing feedback and suggestions on the
115+
direction of the project.
55116

56-
* [the Brackets github issue tracker](https://github.com/adobe/brackets/issues)
57-
* [Brackets wiki](https://github.com/adobe/brackets/wiki/Resources)
58-
* [Contribute Page](http://brackets.io/contribute/)
117+
Even if you're not a committer, you're still welcome to give feedback on any pull request!

Gruntfile.js

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ module.exports = function (grunt) {
2525
'use strict';
2626

2727
var common = require("./tasks/lib/common")(grunt);
28-
28+
2929
// Project configuration.
3030
grunt.initConfig({
3131
pkg : grunt.file.readJSON("package.json"),
@@ -64,9 +64,21 @@ module.exports = function (grunt) {
6464
]
6565
},
6666
watch: {
67+
all : {
68+
files: ['**/*', '!**/node_modules/**'],
69+
tasks: ['jshint']
70+
},
71+
grunt : {
72+
files: ['<%= meta.grunt %>', 'tasks/**/*'],
73+
tasks: ['jshint:grunt']
74+
},
75+
src : {
76+
files: ['<%= meta.src %>', 'src/**/*'],
77+
tasks: ['jshint:src']
78+
},
6779
test : {
68-
files: ['Gruntfile.js', '<%= meta.src %>', '<%= meta.test %>'],
69-
tasks: 'test'
80+
files: ['<%= meta.test %>', 'test/**/*'],
81+
tasks: ['jshint:test']
7082
}
7183
},
7284
/* FIXME (jasonsanjose): how to handle extension tests */
@@ -101,20 +113,27 @@ module.exports = function (grunt) {
101113
'test' : '../test',
102114
'perf' : '../test/perf',
103115
'spec' : '../test/spec',
104-
'text' : 'thirdparty/text',
105-
'i18n' : 'thirdparty/i18n'
116+
'text' : 'thirdparty/text/text',
117+
'i18n' : 'thirdparty/i18n/i18n'
106118
}
107119
}
108120
}
109121
}
110122
},
123+
'jasmine-node': {
124+
run: {
125+
spec: 'src/extensibility/node/spec/'
126+
}
127+
},
111128
jshint: {
112129
all: [
113-
'Gruntfile.js',
130+
'<%= meta.grunt %>',
114131
'<%= meta.src %>',
115132
'<%= meta.test %>'
116133
],
117-
grunt: "<%= meta.grunt %>",
134+
grunt: '<%= meta.grunt %>',
135+
src: '<%= meta.src %>',
136+
test: '<%= meta.test %>',
118137
/* use strict options to mimic JSLINT until we migrate to JSHINT in Brackets */
119138
options: {
120139
jshintrc: '.jshintrc'
@@ -132,13 +151,14 @@ module.exports = function (grunt) {
132151
grunt.loadNpmTasks('grunt-contrib-jasmine');
133152
grunt.loadNpmTasks('grunt-contrib-jshint');
134153
grunt.loadNpmTasks('grunt-contrib-watch');
135-
154+
grunt.loadNpmTasks('grunt-contrib-jasmine-node');
155+
136156
// task: install
137157
grunt.registerTask('install', ['write-config']);
138158

139159
// task: test
140160
//grunt.registerTask('test', ['jshint', 'jasmine']);
141-
grunt.registerTask('test', ['jshint']);
161+
grunt.registerTask('test', ['jshint', 'jasmine-node']);
142162

143163
// task: set-sprint
144164
// Update sprint number in package.json and rewrite src/config.json

0 commit comments

Comments
 (0)