JavaScript Style Guidelines for OpenStack.
Go to file
OpenDev Sysadmins 96195f64a5 OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:49:00 +00:00
doc Change openstack-dev to openstack-discuss 2018-12-14 17:13:31 +08:00
spec Update descriptions of ES6-related options 2016-05-12 16:01:19 +00:00
.editorconfig Initial Commit 2015-06-23 18:40:37 -07:00
.eslintrc Disallow space between a function & opening paren 2016-10-27 13:44:24 +00:00
.eslintrc-es2015 Added config with ES2015-only rules 2016-07-29 12:04:22 +03:00
.gitignore Copy .gitignore from js-generator-openstack template 2016-11-02 13:30:33 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:49:00 +00:00
.npmrc Added npm default config. 2015-08-18 14:45:23 -07:00
.zuul.yaml import zuul job settings from project-config 2018-09-09 06:18:59 -04:00
LICENSE Initial Commit 2015-06-23 18:40:37 -07:00
README.md Added config with ES2015-only rules 2016-07-29 12:04:22 +03:00
bindep.txt Fix the gate npm docs failure 2016-10-21 17:22:30 +00:00
es2015.js Added config with ES2015-only rules 2016-07-29 12:04:22 +03:00
index.js Added config with ES2015-only rules 2016-07-29 12:04:22 +03:00
load-config.js Added config with ES2015-only rules 2016-07-29 12:04:22 +03:00
package.json Replace openstack.org git:// URLs with https:// 2019-03-24 20:33:32 +00:00

README.md

eslint-config-openstack

OpenStack has a set of style guidelines for clarity. OpenStack is a very large code base, spanning dozens of git trees, with over a thousand developers contributing every 6 months. As such, common style helps developers understand code in reviews, move between projects smoothly, and overall make the code more maintainable.

Even though eslint permits overriding rules on a per-project basis, it should be the goal of every project to stay as close to the common guidelines as possible.

Installation

To add these rules to your project, follow these steps.

  1. npm install --save-dev eslint eslint-config-openstack
  2. Add extends: "openstack" to your .eslintrc yaml file. If your project is using ES2015, add extends: "openstack/es2015" instead.

Approval Policies

If you would like to contribute, please follow OpenStack's contribution guidelines.

Rules only land with consensus

Patches that activate, deactivate, or modify rules, should only be merged if a consensus of reviewers is reached. In this case, consensus means at least five positive votes (+1 or +2), with no -1 votes. Cores may not override and/or ignore -1 votes.

Library upgrades require two cores

Patches that upgrade eslint only require two core approvers to land. These patches must add new upstream rules in a deactivated state, and delete any deprecated rules.

Policy upgrades require all cores

Updates to policies and governance on this project require +2 votes from all direct cores on the project. Core votes from the parent OpenStack QA project are optional.

Patches should be abandoned after a month of inactivity

Cores should attempt to keep the list of extant patches small and managable. As such, they should talk to any author whose patch has failed to garner the necessary support, and has experienced one month of inactivity. Reasonable notice should be given to the author before a patch is abandoned.