Skip to content

Commit

Permalink
build(scm): merge develop into master (#82)
Browse files Browse the repository at this point in the history
### __Note:__ despite Codacy `fs` vulnerability complaints, I'm gonna move forward so that I can delete the `develop` branch.

* chore(scm): add CHANGELOG

* chore(ci): add junit test results for circle ci and fix sonar lint code smells

#13

* chore(ci): fix circle.ci junit reporter

#13

* chore(ci): add specs report to circleci

#13

* chore(scm): revise pull request template

* alphabetize options
* add all [angular conventional changelog]() change types
* include (most) SonarQube measures

* chore(scm): update PR template

* chore(scm): add standard issue template

#13

* chore(ci): add junit test results for circle ci and fix sonar lint code smells

#13

* chore(ci): fix circle.ci junit reporter

#13

* chore(ci): add specs report to circleci

#13

* chore(scm): update PR template

* chore(scm): add standard issue template

#13

* chore(quality): replace const with let per recommendation

* chore(coverity): add quality gateway

* chore(lint): alphabetize var declarations

* [bitHound](https://www.bithound.io/github/gregswindle/eslint-plugin-crc/blob/9332bb5b485e4d60c3c56bebb22757319293f311/tests/crc-model-list.spec.js#filter-lint)

#13

* chore(lint): fix var scope

* [bitHound](https://www.bithound.io/github/gregswindle/eslint-plugin-crc/blob/9332bb5b485e4d60c3c56bebb22757319293f311/tests/crc-model.spec.js#filter-lint)

#13

* chore(lint): sort vars in the same declaration block  alphabetically

* [bitHound](https://www.bithound.io/github/gregswindle/eslint-plugin-crc/blob/9332bb5b485e4d60c3c56bebb22757319293f311/tests/crc-model-formatter.spec.js#filter-lint)

#13

* chore(shrinkwrap): enforce dependency versions

* For (future) vunlerabilities
* For contribution consistency

#13

* chore(lint): remove unused dependencies

* [bitHound](https://www.bithound.io/github/gregswindle/eslint-plugin-crc/ee50bb36d308408352966a590d075469dfff1049/dependencies/npm#filter-failing-dep)

#13

* test(ignore): allow interface method without specs

#13

* chore(package): update coveralls to version 2.13.0

https://greenkeeper.io/

* chore(lint): fix unused test variable

#17

* chore(ci): shrinkwrap dependencies

#17

* feat(security): resolve dependency vulnerabilities

#17

* chore(package): update eslint to version 3.19.0

https://greenkeeper.io/

* chore(cli): uncomment cli

* chore(dep): upgrades

* Upgrade eslint
* Upgrade espree
* Upgrade nyc
* Upgrade coveralls

#15, #16, #18, #19

* chore(lint): fix no-use-before-define

#15, #16, #17, #18, #19

* mend

* chore(lint): fix uglify-js

* v0.1.5

* chore(sonar): update projectVersion to match semver

* chore(ci): fix version bumps

Add sonar-project.properties after version bumps.

* test(cli): add specs for cli

#1

* fix(package): update global to version 4.3.2

https://greenkeeper.io/

* chore(package): update babel-register to version 6.24.1

https://greenkeeper.io/

* chore(package): update minami to version 1.2.3

https://greenkeeper.io/

* chore(package): update uglify-js to version 2.8.22

https://greenkeeper.io/

* chore(ci service pruning): remove redundant ci services (#30)

* test(cli): add specs for cli

#1

* refactor(cli): rename command-line interface

* Continuously run specs/tests with nodemon
* Generate ESLint reports

#5

* style(lint): enforce es6 style

* style(es6): use es6 destructors

* chore(ci): remove circle-ci and codecov

Eliminate redundant CI tasks, since we use travis-ci and coveralls, already

#13

* test(crc-reports): add formatter

#1

* docs(README): clean up badges

#18

* chore(ci): remove redundant services

* Coverity (appears to be a paid service, now)
* Snyk (this is covered by Bithound)

#13

* chore(sonarqube): add regex for all branches

* Evaluate all branches that conform to the Angular preset for conventional-changelog
* See https://git.io/vSppK for valid branch (and commit) prefixes

#13

* chore(travis-ci): add regex delimiters

#13

* docs(README): remove sonar "develop" branch from badge


#13

* test(cli): ignore branch

#13

* chore(package): resolve vulnerabilities

* Quoteless Attributes in Templates can lead to Content Injection (handlebars@3.0.3)
* Incorrect Handling of Non-Boolean Comparisons During Minification (uglify-js@2.3.6)
* Regular Expression Denial of Service (uglify-js@2.3.6)

#13

* chore(lint): replace

* function expressions
* let with const (where applicable)

#13, #30

* chore(lint): replace

* let with const (where applicable)
* functions declarations with expressions
* allow console statements for Node.js CLI

#13, #30

* chore(packages): update dependencies

* Remove shebang-loader from devDependencies
* Shrinkwrap
* Update nested packages with vulnerabilities

#13, #30

* chore(lint): ignore "Unexpected block statement surrounding arrow body."

#13, #30

* chore(package): update isarray to latest version

Cannot remove this nested dependency even though it's deprecated.

#13, #30

* chore(lint): resolve "Unexpected block statement surrounding arrow body."

#13, #30

* chore(lint): giving up on "Unexpected block statement surrounding arrow body" for now.

#13, #30

* chore(lint): resolve "Unexpected block statement surrounding arrow body."

#13, #30

* chore(rename import): use crc-reporter instead of crc-model-cli

* chore(packages) update all dependencies to latest 🚀 (#37)

* chore(package): update sinon to version 2.2.0

https://greenkeeper.io/

* chore(packages): update dependencies

* chore(packages): update dependencies

* Espree
* Sinon
* UglifyJS

#37

* ci(release automation): install and config semantic-release

Install commitplease and configure for AngularJS Git commit conventions

#37

* chore(packages): update brace-expansion

Address ReDoS vulnerability
See https://nodesecurity.io/advisories/338

#37

* chore(packages): update dependencies

* brace-expansion
* isarray

#37

* chore(packages): update dependencies

* uglify-js@2.36
* espree@3.4.4

#37

* chore(release): v0.2.0

* chore(package): remove jsdoc-to-markdown

Install jsdoc-to-markdown globally in Travis-CI for usage instead.

* chore(security): fix dependency vulnerabilities (#42, #43)

* chore(npmignore): add directories

#47

* chore(version): update package version in config files

#42

* chore(sonar-scanner): disable sonar-scanner

Travis-CI throws errors
See https://travis-ci.org/gregswindle/eslint-plugin-crc/jobs/235829438#L613

#42

* docs(standard set): add common files

1. Issue template
2. PR template
3. Code of conduct
4. Contributing

* chore(labels): update labels

* chore(package): update dependencies to latest versions 🚀 (#44,#45,#47,#48,#49,#50,#51)

* chore(package): update chai to version 4.0.2

* chore(package): update dependencies

* require-dir: ^0.3.2
* codeclimate-test-reporter: 0.5.0
* codecov: ^2.2.0
* coveralls: ^2.13.1
* dedupe: ^2.1.0
* dirty-chai: ^2.0.0
* eslint-plugin-security: ^1.4.0
* mocha: ^3.4.2
* mocha-junit-reporter: ^1.13.0
* nodemon: ^1.11.0
* nsp: ^2.6.3
* nyc: ^11.0.2
* properties-parser: ^0.3.1
* semantic-release-cli: ^3.0.3
* sinon: ^2.3.4
* standard-version: 4.2.0
* uglify-js: ^3.0.15

#44,#45,#47,#48,#49,#50,#51

* chore(package): udate eslint (#52,#53)

Update `eslint` to latest version.

Closes #52

* chore(package): update eslint to version 4.3.0 (#64)

* fix(package): update eslint to version 4.3.0

Closes #56

* chore(scm): merge eslint branches

Merge greenkeeper/eslint-4.1.0 into greenkeeper/eslint-4.3.0.

* chore(scm): prune and dedupe

#64

* chore(package): update eslint

* Update to eslint@4.3.0
* Add a CLA template
* Clean package.json with fixpack
* Lint specs for bitHound
* Update PR template with simplified checks integrated with SonarCloud

#64

* chore(package): update nyc to version 11.1.0 (#65)

* chore(package): update nyc to version 11.1.0

* chore(packages): update dependencies

1. chai #61
2. dirty-chai #60
3. jsdoc #59
4. nsp #63
5. nyc #57
6. sinon #55
7. uglify-js #54

#65

* chore(package): update sinon to version 3.2.0 (#69)

Closes #67

* chore(package): update eslint to version 4.4.1 (#70)

Closes #68
  • Loading branch information
gregswindle committed Oct 17, 2017
1 parent 0d752ef commit b1f392e
Show file tree
Hide file tree
Showing 40 changed files with 11,371 additions and 3,669 deletions.
2 changes: 1 addition & 1 deletion .ci-cd/bump/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ const path = require('path');
const prop = require('properties-parser');

const bumpSonarProjectVersion = () => {
let sonarPropertiesEditor = prop.createEditor(path.resolve(__dirname, '../../sonar-project.properties'));
const sonarPropertiesEditor = prop.createEditor(path.resolve(__dirname, '../../sonar-project.properties'));
sonarPropertiesEditor.set('sonar.projectVersion', version);
sonarPropertiesEditor.save();
};
Expand Down
2 changes: 2 additions & 0 deletions .codeclimate.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
engines:
nodesecurity:
enabled: true
duplication:
enabled: true
config:
Expand Down
2 changes: 2 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,5 @@
/tests/performance/**
/tmp/**
test.js
*.bundle.js
*.spec.js
69 changes: 43 additions & 26 deletions .eslintrc.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
parserOptions:
sourceType: module
ecmaFeatures:
Expand All @@ -10,12 +11,15 @@ env:

extends: 'eslint:recommended'

plugins:
- security

# http://eslint.org/docs/rules/
rules:
# Possible Errors
no-await-in-loop: error
no-cond-assign: error
no-console: off
no-console: error
no-constant-condition: error
no-control-regex: error
no-debugger: error
Expand Down Expand Up @@ -110,7 +114,7 @@ rules:
no-throw-literal: off
no-unmodified-loop-condition: off
no-unused-expressions: error
no-unused-labels: off
no-unused-labels: error
no-useless-call: error
no-useless-concat: error
no-useless-escape: off
Expand All @@ -130,7 +134,7 @@ rules:

# Variables
init-declarations: off
no-catch-shadow: error
no-catch-shadow: off
no-delete-var: error
no-label-var: error
no-restricted-globals: off
Expand All @@ -139,8 +143,8 @@ rules:
no-undef-init: error
no-undef: off
no-undefined: off
no-unused-vars: off
no-use-before-define: off
no-unused-vars: error
no-use-before-define: error

# Node.js and CommonJS
callback-return: error
Expand Down Expand Up @@ -238,7 +242,7 @@ rules:
- error
- always
sort-keys: off
sort-vars: off
sort-vars: warn
space-before-blocks: off
space-before-function-paren: off
space-in-parens: off
Expand All @@ -250,35 +254,48 @@ rules:
wrap-regex: off

# ECMAScript 6
arrow-body-style: off
arrow-parens: off
arrow-spacing: off
constructor-super: off
generator-star-spacing: off
no-class-assign: off
no-confusing-arrow: off
no-const-assign: off
no-dupe-class-members: off
no-duplicate-imports: off
arrow-body-style: error
arrow-parens: error
arrow-spacing: error
constructor-super: error
generator-star-spacing: error
no-class-assign: error
no-confusing-arrow: error
no-const-assign: error
no-dupe-class-members: error
no-duplicate-imports: error
no-new-symbol: off
no-restricted-imports: off
no-this-before-super: off
no-useless-computed-key: off
no-useless-constructor: off
no-useless-rename: off
no-var: off
object-shorthand: off
prefer-arrow-callback: off
prefer-const: off
no-this-before-super: error
no-useless-computed-key: error
no-useless-constructor: error
no-useless-rename: error
no-var: error
object-shorthand: error
prefer-arrow-callback: error
prefer-const: error
prefer-destructuring: error
prefer-numeric-literals: off
prefer-numeric-literals: error
prefer-rest-params: off
prefer-reflect: off
prefer-spread: off
prefer-template: off
require-yield: off
rest-spread-spacing: off
sort-imports: off
sort-imports: warn
symbol-description: off
template-curly-spacing: off
yield-star-spacing: off
# https://github.com/nodesecurity/eslint-plugin-security#rules
# detect-buffer-noassert: error
# detect-child-process: error
# detect-disable-mustache-escape: error
# detect-eval-with-expression: error
# detect-no-csrf-before-method-override: error
# detect-non-literal-fs-filename: error
# detect-non-literal-regexp: error
# detect-non-literal-require: error
# detect-object-injection: error
# detect-possible-timing-attacks: error
# detect-pseudoRandomBytes: error
# detect-unsafe-regex: error
88 changes: 88 additions & 0 deletions .github/CLA_INDIVIDUAL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
eslint-plugin-crc Individual Contributor License Agreement
======================================================

Thank you for your interest in contributing to eslint-plugin-crc (“We” or “Us”).

This contributor agreement (“Agreement”) documents the rights granted by contributors to Us. To make this document effective, please enter the requested information at the bottom of this “Agreement” and select “I Agree.”

This is a legally binding document, so please read it carefully before agreeing to it. The Agreement may cover more than one software project managed by Us.

## 1. Definitions

**"You"** means the individual who Submits a Contribution to Us.

**"Contribution"** means any work of authorship that is Submitted by You to Us in which You own or assert ownership of the Copyright. If You do not own the Copyright in the entire work of authorship, please follow the instructions in .

**"Copyright"** means all rights protecting works of authorship owned or controlled by You, including copyright, moral and neighboring rights, as appropriate, for the full term of their existence including any extensions by You.

**"Material"** means the work of authorship which is made available by Us to third parties. When this Agreement covers more than one software project, the Material means the work of authorship to which the Contribution was Submitted. After You Submit the Contribution, it may be included in the Material.

**"Submit"** means any form of electronic, verbal, or written communication sent to Us or our representatives, including but not limited to electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, Us for the purpose of discussing and improving the Material, but excluding communication that is conspicuously marked or otherwise designated in writing by You as "Not a Contribution."

**"Submission Date"** means the date on which You Submit a Contribution to Us.

**"Effective Date"** means the date You execute this Agreement or the date You first Submit a Contribution to Us, whichever is earlier.

## 2. Grant of Rights

### 2.1 Copyright License

(a) You retain ownership of the Copyright in Your Contribution and have the same rights to use or license the Contribution which You would have had without entering into the Agreement.

(b) To the maximum extent permitted by the relevant law, You grant to Us a perpetual, worldwide, non-exclusive, transferable, royalty-free, irrevocable license under the Copyright covering the Contribution, with the right to sublicense such rights through multiple tiers of sublicensees, to reproduce, modify, display, perform and distribute the Contribution as part of the Material; provided that this license is conditioned upon compliance with Section 2.3.

### 2.2 Patent License

For patent claims including, without limitation, method, process, and apparatus claims which You own, control or have the right to grant, now or in the future, You grant to Us a perpetual, worldwide, non-exclusive, transferable, royalty-free, irrevocable patent license, with the right to sublicense these rights to multiple tiers of sublicensees, to make, have made, use, sell, offer for sale, import and otherwise transfer the Contribution and the Contribution in combination with the Material (and portions of such combination). This license is granted only to the extent that the exercise of the licensed rights infringes such patent claims; and provided that this license is conditioned upon compliance with Section 2.3.

### 2.3 Outbound License

Based on the grant of rights in Sections 2.1 and 2.2, if We include Your Contribution in a Material, We may license the Contribution under any license, including copyleft, permissive, commercial, or proprietary licenses. As a condition on the exercise of this right, We agree to also license the Contribution under the terms of the license or licenses which We are using for the Material on the Submission Date.

### 2.4 Moral Rights.

If moral rights apply to the Contribution, to the maximum extent permitted by law, You waive and agree not to assert such moral rights against Us or our successors in interest, or any of our licensees, either direct or indirect.

### 2.5 Our Rights.

You acknowledge that We are not obligated to use Your Contribution as part of the Material and may decide to include any Contribution We consider appropriate.

### 2.6 Reservation of Rights.

Any rights not expressly licensed under this section are expressly reserved by You.

## 3. Agreement

You confirm that:

(a) You have the legal authority to enter into this Agreement.

(b) You own the Copyright and patent claims covering the Contribution which are required to grant the rights under Section 2.

(c) The grant of rights under Section 2 does not violate any grant of rights which You have made to third parties, including Your employer. If You are an employee, You have had Your employer approve this Agreement or sign the Entity version of this document. If You are less than eighteen years old, please have Your parents or guardian sign the Agreement.

(d) You have followed the instructions in , if You do not own the Copyright in the entire work of authorship Submitted.

## 4. Disclaimer

EXCEPT FOR THE EXPRESS WARRANTIES IN SECTION 3, THE CONTRIBUTION IS PROVIDED "AS IS". MORE PARTICULARLY, ALL EXPRESS OR IMPLIED WARRANTIES INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE EXPRESSLY DISCLAIMED BY YOU TO US. TO THE EXTENT THAT ANY SUCH WARRANTIES CANNOT BE DISCLAIMED, SUCH WARRANTY IS LIMITED IN DURATION TO THE MINIMUM PERIOD PERMITTED BY LAW.

## 5. Consequential Damage Waiver

TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT WILL YOU BE LIABLE FOR ANY LOSS OF PROFITS, LOSS OF ANTICIPATED SAVINGS, LOSS OF DATA, INDIRECT, SPECIAL, INCIDENTAL, CONSEQUENTIAL AND EXEMPLARY DAMAGES ARISING OUT OF THIS AGREEMENT REGARDLESS OF THE LEGAL OR EQUITABLE THEORY (CONTRACT, TORT OR OTHERWISE) UPON WHICH THE CLAIM IS BASED.

## 6. Miscellaneous

6.1 This Agreement will be governed by and construed in accordance with the laws of excluding its conflicts of law provisions. Under certain circumstances, the governing law in this section might be superseded by the United Nations Convention on Contracts for the International Sale of Goods ("UN Convention") and the parties intend to avoid the application of the UN Convention to this Agreement and, thus, exclude the application of the UN Convention in its entirety to this Agreement.

6.2 This Agreement sets out the entire agreement between You and Us for Your Contributions to Us and overrides all other agreements or understandings.

6.3 If You or We assign the rights or obligations received through this Agreement to a third party, as a condition of the assignment, that third party must agree in writing to abide by all the rights and obligations in the Agreement.

6.4 The failure of either party to require performance by the other party of any provision of this Agreement in one situation shall not affect the right of a party to require such performance at any time in the future. A waiver of performance under a provision in one situation shall not be considered a waiver of the performance of the provision in the future or a waiver of the provision in its entirety.

6.5 If any provision of this Agreement is found void and unenforceable, such provision will be replaced to the extent possible with a provision that comes closest to the meaning of the original provision and which is enforceable. The terms and conditions set forth in this Agreement shall apply notwithstanding any failure of essential purpose of this Agreement or any limited remedy to the maximum extent possible under law.

This agreement is derived from the Project Harmony CLA generator:
http://www.harmonyagreements.org/
Harmony (HA-CLA-I-ANY) Version 1.0
76 changes: 76 additions & 0 deletions .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of experience,
nationality, personal appearance, race, religion, or sexual identity and
orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment
include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by **[contacting the team][team-email-mailto]**. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at [http://contributor-covenant.org/version/1/4][version].

[team-email-mailto]: mailto:greg@swindle.net?Subject=%5Beslint-plugin-swagger%5D%20Code%20of%20conduct%20concern
[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/
[team-issues-url]: https://github.com/gregswindle/eslint-plugin-swagger/issues/new

0 comments on commit b1f392e

Please sign in to comment.