Skip to content
Gordon Smith edited this page Jun 22, 2020 · 11 revisions

v2.x.x

All of the steps have been automated in package.json, as an example here are the steps used to create the various v2.x.x builds:

Prerequisites

git clone https://github.com/hpcc-systems/Visualization.git hpcc-js
cd hpcc-js
  • Checkout the master branch
git checkout master
  • Install dependencies
npm install

Building for Local development

npm run build-dev

Full build and minimization

npm run build
npm run minimize

Full Release (version bump, build and publish)

npm run publish

v1.x.x

Building a release consists of the following logical steps:

  1. Ensure correct versions of third party libraries are local on the build machine.
  2. Change the version number.
  3. Build the framework.
  4. Create new "bX.Y.Z" branch.
  5. Append the build files.
  6. Tag the version.
  7. Push the branch + Tag to GitHub.

Note: npm 12 + gulp 3 do not work well together, the solution was to force "graceful-fs" to version "4.2.3".

Most of these steps have been automated in gulp, as an example here are the steps used to create v1.18.0-rc4:

git fetch upstream
git checkout candidate-1.18.x
git reset --hard upstream/candidate-1.18.x
npm ci
npm run bump -- --version 1.18.0-rc4
npm run tag-release -- --upstream

Note: The "bX.Y.Z" branch is needed for any project which wants to include the Framework as a submodule @ a given tag (vX.Y.Z), this is due to a limitation in git submodule, which will fail to get a tagged version if no branch contains its commit hash.

For older releases (prior to 1.18.0-rc3) use:

git fetch upstream
git checkout candidate-1.10.0
git reset --hard upstream/candidate-1.10.0
npm install && npm update && bower install && bower update
gulp bump --version 1.10.0-rc2
gulp tag-release --upstream

Building with a licensed copy of AM Charts:

First fetch the sources for the version you want to build:

git fetch upstream
git fetch --tags upstream
git checkout v1.10.4
git reset --hard upstream/v1.10.4
npm install && npm update && bower install && bower update

Next swap out the "public" version of AM charts for the licensed version (ensure you are swapping in a matching version!):

rm -rf ./bower_components/amcharts3
cp ./licensed_amchart3 ./bower_components/amcharts3

...and finally do the build:

gulp build-all