Browserify centric plugin that allows multiple builds, rename files with known extensions in order to provide alternative versions of apps and components
This plugin requires Grunt >=0.4.5
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-version-compile --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-version-compile');
In your project's Gruntfile, add a section named compileVersion
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
compileVersion: {
versions: [''],
root: '',
task: ''
},
});
Type: Array of strings
An array of version names to use. These must match the filenames you want to scan for. So 'alt' will search for .alt.js or .alt.css files
Type: String
Default value: '.'
So you can reduce the amount of scanning you do and restrict the search to a specific directory
Type: String
What task to run for each language. The language will be appended to the task, so if your task is build
and your versions contains alt
the task build:alt
will be run, as well as just 'build'.
This will:
- Run the build task
- Rename all
.alt.js
files found recursively in thelib
directory to.js
, renaming the existing file to-old.js
- Run the
build:alt
task. This allows you to have multiple outputs - Rename all
-old.js
files back to their original name, and rename the.js
files back to.alt.js
grunt.initConfig({
compileVersion: {
versions: ['alt'],
root: 'lib',
task: 'build'
},
});
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
0.1.0 Initial release 0.1.1 Added support for Grunt v1 0.1.2 Updated repo location 0.1.3 Updated NPM badge path