Skip to content
This repository has been archived by the owner on Feb 3, 2023. It is now read-only.

Improve build, consider alternatives to GNU Make #13

Open
Lochlan opened this issue Feb 29, 2016 · 2 comments
Open

Improve build, consider alternatives to GNU Make #13

Lochlan opened this issue Feb 29, 2016 · 2 comments

Comments

@Lochlan
Copy link
Collaborator

Lochlan commented Feb 29, 2016

As of this writing we're using a makefile to build this project. However, we agree that a makefile build isn't particularly "node-like"—so let's consider alternatives!

@cdaringe @paulcpederson

@paulcpederson
Copy link
Contributor

here is a quick fairly exhaustive list of what a new build tool would have to do to replace everything Make does for us now:

  • run dev server for docs (still)
  • build docs (still)
  • compile less files for docs
  • push docs to gh-pages
  • build jsdoc parts of doc
  • run cov-reporter
  • run mocha tests
  • run eslint
  • run mocha-phantom/phantomjs for browser tests
  • clean dist
  • uglify dist
  • browserify dist
  • run precommit hooks

@pstephenson02
Copy link
Contributor

Hi! I investigated migrating a few of these tasks (specifically, the tasks related to running the test suites) this weekend and have a few notes I just thought I'd share:

  • Running the unit tests is easy enough. We can almost just copy the existing make targets into npm scripts: see a couple examples here on a branch: master...pstephenson02:dev/npm-scripts-testing
  • However: Running the web driver tests is a bit more complicated. The Makefile first concatenates a few of the tests and then browserify's them for web driver use. The issue though, if you noticed in my branch above, is that the specific web driver tests are defined in the Makefile. Npm scripts does allow you to define variables in the config section, but it does not support arrays. So we'd need to either delegate running phantom to some util module that has those test files defined/configured, or modify the tests directory and separate the web driver tests.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants