Skip to content

Commit b482522

Browse files
committed
Merge branch 'release/3.3.0'
2 parents bd67b53 + 67fe61c commit b482522

15 files changed

+1007
-853
lines changed

CHANGELOG.md

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,18 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](http://keepachangelog.com/)
66
and this project adheres to [Semantic Versioning](http://semver.org/).
77

8-
## Unreleased
8+
## Unreleased - ?
9+
10+
### Added
11+
12+
- **eslint**: allow the use of eslint-import [@NumminorihSF]
13+
- **eslint-angular**: allow the use of eslint-import [@ValentinGot]
14+
15+
### Updated
16+
17+
- **package.json**: upgrade `csslint`, `eslint`, `eslint-plugin-angular`, `jshint`, `tslint` and `typescript` versions
18+
19+
## 3.2.0 - 2017-01-20
920

1021
### Added
1122

@@ -53,5 +64,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
5364

5465
- Gulp abstraction
5566

56-
[@ole]: https://github.com/liollury
5767
[@ValentinGot]: https://github.com/ValentinGot
68+
[@liollury]: https://github.com/liollury
69+
[@NumminorihSF]: https://github.com/NumminorihSF

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,14 @@ Default options are as follows:
7575
"eslint": {
7676
"src": "src/**/*.js",
7777
"report": "reports/sonar/eslint.json",
78-
"rulesFile": ".eslintrc"
78+
"rulesFile": ".eslintrc",
79+
"ignorePath": ".eslintignore"
7980
},
8081
"eslintangular": {
8182
"src": "src/**/*.js",
8283
"report": "eslint-angular.json",
83-
"rulesFile": ".eslintrc"
84+
"rulesFile": ".eslintrc",
85+
"ignorePath": ".eslintignore"
8486
},
8587
"jshint": {
8688
"src": "src/**/*.js",

lib/reporters/eslint-angular.reporter.js

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,20 @@ module.exports = class ESLintAngularReporter extends Reporter {
1313

1414
static defaultOptions () {
1515
return {
16-
src : 'src/**/*.js',
17-
report : 'reports/sonar/eslint-angular.json',
18-
rulesFile: '.eslintrc'
16+
src : 'src/**/*.js',
17+
report : 'reports/sonar/eslint-angular.json',
18+
rulesFile : '.eslintrc',
19+
ignorePath: '.eslintignore'
1920
};
2021
}
2122

2223
launch (done) {
2324
this.linter = new CLIEngine({
24-
configFile: this.options.rulesFile
25+
configFile: this.options.rulesFile,
26+
ignorePath: this.options.ignorePath
2527
});
2628

27-
glob(this.options.src, (er, files) => {
29+
glob(this.options.src, (err, files) => {
2830
this.processFiles(files, this.options);
2931
this.closeReporter(this.options.report);
3032

@@ -36,18 +38,20 @@ module.exports = class ESLintAngularReporter extends Reporter {
3638

3739
processFiles (fileArray, options) {
3840
this.openReporter(options.report);
39-
fileArray.forEach((file) => {
40-
this.processFile(file);
41+
42+
const linterResult = this.linter.executeOnFiles(fileArray);
43+
44+
linterResult.results.forEach((fileResult) => {
45+
this.processFileResult(fileResult);
4146
});
4247
}
4348

44-
processFile (file) {
45-
let input = this.readFile(file),
46-
result = this.linter.executeOnText(input, undefined, true),
47-
severity;
49+
processFileResult (file) {
50+
let severity;
51+
52+
this.openFileIssues(file.filePath, null, /^(\s+)?\n$/gm);
4853

49-
this.openFileIssues(file, null, /^(\s+)?\n$/gm);
50-
for (let message of result.results[0].messages) {
54+
for (const message of file.messages) {
5155
switch (message.severity) {
5256
case 2:
5357
severity = this.MAJOR;

lib/reporters/eslint.reporter.js

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,17 @@ module.exports = class ESLintReporter extends Reporter {
1313

1414
static defaultOptions () {
1515
return {
16-
src : 'src/**/*.js',
17-
report : 'reports/sonar/eslint.json',
18-
rulesFile: '.eslintrc'
16+
src : 'src/**/*.js',
17+
report : 'reports/sonar/eslint.json',
18+
rulesFile : '.eslintrc',
19+
ignorePath: '.eslintignore'
1920
};
2021
}
2122

2223
launch (done) {
2324
this.linter = new CLIEngine({
24-
configFile: this.options.rulesFile
25+
configFile: this.options.rulesFile,
26+
ignorePath: this.options.ignorePath
2527
});
2628

2729
glob(this.options.src, (err, files) => {
@@ -36,18 +38,20 @@ module.exports = class ESLintReporter extends Reporter {
3638

3739
processFiles (fileArray) {
3840
this.openReporter();
39-
fileArray.forEach((file) => {
40-
this.processFile(file);
41+
42+
const linterResult = this.linter.executeOnFiles(fileArray);
43+
44+
linterResult.results.forEach((fileResult) => {
45+
this.processFileResult(fileResult);
4146
});
4247
}
4348

44-
processFile (file) {
45-
let input = this.readFile(file),
46-
result = this.linter.executeOnText(input, undefined, true),
47-
severity;
49+
processFileResult (file) {
50+
let severity;
51+
52+
this.openFileIssues(file.filePath, null, /^(\s+)?\n$/gm);
4853

49-
this.openFileIssues(file, null, /^(\s+)?\n$/gm);
50-
for (let message of result.results[0].messages) {
54+
for (const message of file.messages) {
5155
switch (message.severity) {
5256
case 2:
5357
severity = this.MAJOR;

package.json

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "sonar-web-frontend-reporters",
33
"description": "sreporter is a Command-Line Interface to generate Front-End linters reporters for the SonarQube plugin",
4-
"version": "3.2.0",
4+
"version": "3.3.0",
55
"main": "./lib/api.js",
66
"bin": {
77
"sreporter": "./bin/sreporter"
@@ -39,26 +39,26 @@
3939
},
4040
"homepage": "https://github.com/groupe-sii/sonar-web-frontend-reporters#readme",
4141
"dependencies": {
42-
"chalk": "^1.1.3",
43-
"commander": "^2.9.0",
44-
"csslint": "^1.0.4",
45-
"eslint": "^3.11.1",
42+
"chalk": "^2.1.0",
43+
"commander": "^2.11.0",
44+
"csslint": "^1.0.5",
45+
"eslint": "^4.4.1",
4646
"eslint-config-angular": "^0.5.0",
47-
"eslint-plugin-angular": "^1.4.1",
48-
"glob": "^7.1.1",
47+
"eslint-plugin-angular": "^3.0.0",
48+
"glob": "^7.1.2",
4949
"glob-all": "^3.1.0",
5050
"htmlhint": "^0.9.13",
51-
"jshint": "^2.9.4",
51+
"jshint": "^2.9.5",
5252
"mkdirp": "^0.5.1",
5353
"sass-lint": "^1.10.2",
54-
"tslint": "^4.0.2",
55-
"typescript": "^2.0.10"
54+
"tslint": "^5.6.0",
55+
"typescript": "^2.4.2"
5656
},
5757
"devDependencies": {
58-
"babel-cli": "^6.18.0",
59-
"babel-preset-latest": "^6.16.0",
60-
"chai": "^3.5.0",
61-
"mocha": "^3.2.0"
58+
"babel-cli": "^6.24.1",
59+
"babel-preset-latest": "^6.24.1",
60+
"chai": "^4.1.1",
61+
"mocha": "^3.5.0"
6262
},
6363
"engines": {
6464
"node": ">=4.4.5"

test/mocks/.eslintignore-angular

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
test/mocks/eslint-angular-ignore.js

test/mocks/.eslintignore-custom

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
test/mocks/eslint-ignore.js

test/mocks/.eslintrc

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -133,10 +133,5 @@
133133
},
134134
"env": {
135135
"browser": true
136-
},
137-
"globals": [
138-
"module",
139-
"inject",
140-
"require"
141-
]
136+
}
142137
}

test/mocks/testTS.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
if(true){var a="foo";if(false){;}}//abc
1+
//comment must start with a space
2+
var a ="foo";

test/reporters/eslint-angular.reporter.mock.js

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,24 @@
11
module.exports = {
22

33
defaultOptions: {
4-
src : 'test/mocks/eslint-angular.js',
5-
report : 'test/output/eslint-angular.json',
6-
rulesFile: 'test/mocks/.eslintangularrc'
4+
src : 'test/mocks/eslint-angular.js',
5+
report : 'test/output/eslint-angular.json',
6+
rulesFile : 'test/mocks/.eslintangularrc',
7+
ignorePath: 'test/mocks/.eslintignore-angular'
8+
},
9+
10+
ignorePathOptions: {
11+
src : 'test/mocks/eslint-angular.js',
12+
report : 'test/output/eslint-angular.json',
13+
rulesFile : 'test/mocks/.eslintangularrc',
14+
ignorePath: 'test/mocks/.eslintignore-angular'
715
},
816

917
multiSrcOption: {
10-
src : [ 'test/mocks/eslint-angular.js', '!test/mocks/eslint-angular-ignore.js' ],
11-
report : 'test/output/eslint-angular.json',
12-
rulesFile: 'test/mocks/.eslintangularrc'
18+
src : [ 'test/mocks/eslint-angular.js', '!test/mocks/eslint-angular-ignore.js' ],
19+
report : 'test/output/eslint-angular.json',
20+
rulesFile : 'test/mocks/.eslintangularrc',
21+
ignorePath: 'test/mocks/.eslintignore-custom'
1322
},
1423

1524
badSrcOption: {

0 commit comments

Comments
 (0)