Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set up build/lint infrastructure #4464

Closed
11 tasks done
sgomes opened this issue Jun 29, 2016 · 4 comments
Closed
11 tasks done

Set up build/lint infrastructure #4464

sgomes opened this issue Jun 29, 2016 · 4 comments

Comments

@sgomes
Copy link
Contributor

sgomes commented Jun 29, 2016

  • Keep current lint file, modify to work in new directory structure
  • Implement JS linting
  • Implement CSS linting
  • Add npm script to run js + css linting
  • Fix any invalid files
  • Remove gulpfile and related packages
  • Set up webpack config
  • Set up Greenkeeper
  • Set up validate-commit-msg
  • Ensure all contributing docs are up to date.
  • Modify CI config
@Garbee
Copy link
Collaborator

Garbee commented Jul 12, 2016

We may want to add this on our CI end. https://dependencyci.com/ Just as an extra layer to handle any updates/community additions going forward.

traviskaufman added a commit that referenced this issue Jul 14, 2016
Additional work:

* Add postinstall command which runs `lerna bootstrap`

Part of #4464
traviskaufman added a commit that referenced this issue Jul 18, 2016
* Add Stylelint config
* Add BEM linting
* Add SCSS linting
* Fix all general lint errors
* Remove theme scss files as we won't be using them moving forward

Part of #4464
Relates to #4539
@traviskaufman
Copy link
Contributor

traviskaufman commented Jul 19, 2016

It looks like Greenkeeper seems to be the most powerful and recommended dep mgmt tool for JS projects, so I think I'm going to investigate using it.

Furthermore, we should probably decide on commit message guidelines as well. Angular has widely adopted commit message guidelines which I think would be a good choice for us. We can use validate-commit-msg to enforce it, and recommend tools like commitizen to make it super easy for contributors. This will help us with things like changelogs, for example.

Also, if we want to integrate tools like semantic-release (see #4565) in the future, having these conventions in place makes it really easy.

@sgomes
Copy link
Contributor Author

sgomes commented Jul 19, 2016

+1 to Greenkeeper. David-dm is useful, but having PRs opened automatically sounds useful, and the fact that it's the recommended tool gives us a bit more confidence.

+1 to commit messages, particularly if we can have a good error message to teach folks committing for the first time.

semantic-release bears some investigation, but I'm concerned how much work it would take on for us. In a project of our dimension, we probably want to keep a fair amount of control over release notes, versioning, release pushing, etc. Packaging and generating changelogs (which we'd then copy into the release notes) sounds like something we could definitely add some automation to, though.

traviskaufman added a commit that referenced this issue Jul 20, 2016
* Add Stylelint config
* Add BEM linting
* Add SCSS linting
* Fix all general lint errors
* Remove theme scss files as we won't be using them moving forward

Part of #4464
Relates to #4539
@traviskaufman
Copy link
Contributor

traviskaufman commented Jul 20, 2016

Greenkeeper issue: #4572

traviskaufman added a commit that referenced this issue Jul 20, 2016
* Auto-installs a `commit-msg` hook when `npm (i|install)` is run.
* Ensures that the commit message is formatted properly according to
  angular's conventions.

Note that as outlined in the `helpMsg` key, this can always be disabled
by passing the `--no-verify` option to `git-commit`.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 21, 2016
* Auto-installs a `commit-msg` hook when `npm (i|install)` is run.
* Ensures that the commit message is formatted properly according to
  angular's conventions.

Note that as outlined in the `helpMsg` key, this can always be disabled
by passing the `--no-verify` option to `git-commit`.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 21, 2016
* Auto-installs a `commit-msg` hook when `npm (i|install)` is run.
* Ensures that the commit message is formatted properly according to
  angular's conventions.

Note that as outlined in the `helpMsg` key, this can always be disabled
by passing the `--no-verify` option to `git-commit`.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 21, 2016
* Add .travis.yml file to the repo, enabling TravisCI to run against PRs
  for master and branches of.
* Set up Sauce Labs running on the last two versions of every major
  browser (excluding Android 4 and Opera). Android 4 is quite old, and
  Opera is very similar to Chrome as it uses blink/chromium under the hood.
* Fix false negative in IE11 for mdl-auto-init test.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 21, 2016
* Add .travis.yml file to the repo, enabling TravisCI to run against PRs
  for master and branches of.
* Set up Sauce Labs running on the last two versions of every major
  browser (excluding Android 4 and Opera). Android 4 is quite old, and
  Opera is very similar to Chrome as it uses blink/chromium under the
  hood.
* Work around [SauceLabs PR restriction](https://docs.travis-ci.com/user/pull-requests#Pull-Requests-and-Security-Restrictions) by falling back to running
  tests on Chrome and FF latest only when PR comes from a repo fork. SL
  Tests are then run when the PR gets merged to master.
* Fix false negative in IE11 for mdl-auto-init test.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 22, 2016
* Add .travis.yml file to the repo, enabling TravisCI to run against PRs
  for master and branches of.
* Set up Sauce Labs running on the last two versions of every major
  browser (excluding Android 4 and Opera). Android 4 is quite old, and
  Opera is very similar to Chrome as it uses blink/chromium under the
  hood.
* Work around [SauceLabs PR restriction](https://docs.travis-ci.com/user/pull-requests#Pull-Requests-and-Security-Restrictions) by falling back to running
  tests on Chrome and FF latest only when PR comes from a repo fork. SL
  Tests are then run when the PR gets merged to master.
* Fix false negative in IE11 for mdl-auto-init test.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 22, 2016
* Add .travis.yml file to the repo, enabling TravisCI to run against PRs
  for master and branches of.
* Set up Sauce Labs running on the last two versions of every major
  browser (excluding Android 4 and Opera). Android 4 is quite old, and
  Opera is very similar to Chrome as it uses blink/chromium under the
  hood.
* Work around [SauceLabs PR restriction](https://docs.travis-ci.com/user/pull-requests#Pull-Requests-and-Security-Restrictions) by falling back to running
  tests on Chrome and FF latest only when PR comes from a repo fork. SL
  Tests are then run when the PR gets merged to master.
* Fix false negative in IE11 for mdl-auto-init test.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 22, 2016
* Add .travis.yml file to the repo, enabling TravisCI to run against PRs
  for master and branches of.
* Set up Sauce Labs running on the last two versions of every major
  browser (excluding Android 4 and Opera). Android 4 is quite old, and
  Opera is very similar to Chrome as it uses blink/chromium under the
  hood.
* Work around [SauceLabs PR restriction](https://docs.travis-ci.com/user/pull-requests#Pull-Requests-and-Security-Restrictions) by falling back to running
  tests on Chrome and FF latest only when PR comes from a repo fork. SL
  Tests are then run when the PR gets merged to master.
* Fix false negative in IE11 for mdl-auto-init test.

Part of #4464
traviskaufman added a commit that referenced this issue Jul 22, 2016
* Add .travis.yml file to the repo, enabling TravisCI to run against PRs
  for master and branches of.
* Set up Sauce Labs running on the last two versions of every major
  browser (excluding Android 4 and Opera). Android 4 is quite old, and
  Opera is very similar to Chrome as it uses blink/chromium under the
  hood.
* Work around [SauceLabs PR restriction](https://docs.travis-ci.com/user/pull-requests#Pull-Requests-and-Security-Restrictions) by falling back to running
  tests on Chrome and FF latest only when PR comes from a repo fork. SL
  Tests are then run when the PR gets merged to master.
* Fix false negative in IE11 for mdl-auto-init test.

Part of #4464

[#126818909]
traviskaufman added a commit that referenced this issue Jul 25, 2016
- Update README, CONTRIBUTING, and docs/DEVELOPER with relevant v2 info
- Add support for commitizen for easy commit messages

Resolves #4464

[Delivers #126818909]
Garbee pushed a commit that referenced this issue Jul 25, 2016
- Update README, CONTRIBUTING, and docs/DEVELOPER with relevant v2 info
- Add support for commitizen for easy commit messages

Resolves #4464

[Delivers #126818909]
Garbee pushed a commit that referenced this issue Jul 26, 2016
- Update README, CONTRIBUTING, and docs/DEVELOPER with relevant v2 info
- Add support for commitizen for easy commit messages

Resolves #4464

[Delivers #126818909]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants