Compare commits

...

6 Commits

Author SHA1 Message Date
8104609306 5.3.21 2016-07-16 23:33:14 +02:00
a3077f7800 improve README 2016-07-16 23:33:10 +02:00
c947121243 5.3.20 2016-07-16 20:54:57 +02:00
4b3f0649fa now much faster due to skipping html coverage report 2016-07-16 20:54:52 +02:00
523c62530f 5.3.19 2016-07-16 20:14:47 +02:00
aa57617fc7 another fix 2016-07-16 20:14:43 +02:00
7 changed files with 42 additions and 31 deletions

View File

@ -36,20 +36,18 @@ Then add it to your package.json's script section to trigger a build:
### Default task execution order
1. Check config in ./npmts.json
1. Check config in ./npmextra.json (Check out [npmextra](https://www.npmjs.com/package/npmextra))
1. Clean up from any previous builds (old js files)
1. Install typings
1. Transpile TypeScript with **inline sourcemaps** and **declaration files**
1. Create EsDoc Documentation
1. Instrumentalize created JavaScript files with istanbul
1. Run Tests
1. Create Coverage report
1. Transpile TypeScript with **inline sourcemaps** and **declaration files** to ES6
1. Create TypeDoc Documentation from TypeScript files
1. Instrumentalize transpiled ES6 JavaScript with istanbul and run tests with Mocha
#### npmts.json
the npmts.json is the main config file. You can use it to customize the behaviour of NPMTS.
#### npmtsextra.json
the npmts section in npmtsextra.json can be used to configure npmts.
```json
{
"npmts":{
"mode":"default",
"ts":{
"./customdir/*.ts":"./"
@ -59,6 +57,7 @@ the npmts.json is the main config file. You can use it to customize the behaviou
"target":"ES6"
},
"cli":true
}
}
```
@ -111,7 +110,7 @@ thanks to autogenerated source maps.
## Tips and tricks:
* Use [npmts-g](https://www.npmjs.com/package/npmts-g) to use globally installed npmts and install npmts locally if no global npmts is available.
* Use [npmpage](https://www.npmjs.com/package/npmtspage) to create a webpage from coverage reports and EsDocs for the module
* Use [npmpage](https://www.npmjs.com/package/npmtspage) to create a webpage from coverage reports and TypeDoc for the module
* Use [hosttoday/ht-docker-node:npmts](https://hub.docker.com/r/hosttoday/ht-docker-node/) for speedy CI builds
## About the authors:

View File

@ -11,7 +11,6 @@ export declare let g: {
sourcemaps: any;
typedoc: any;
};
import "babel-preset-es2015";
export declare let lodashObject: any;
export import projectinfo = require("projectinfo");
export import path = require("path");

View File

@ -12,7 +12,6 @@ exports.g = {
sourcemaps: require("gulp-sourcemaps"),
typedoc: require("gulp-typedoc")
};
require("babel-preset-es2015");
exports.lodashObject = require('lodash/fp/object');
exports.projectinfo = require("projectinfo");
exports.path = require("path");

15
dist/npmts.tests.js vendored
View File

@ -14,19 +14,26 @@ var mocha = function (configArg) {
var stream = plugins.gulp.src([plugins.path.join(paths.cwd, "dist/*.js")])
.pipe(plugins.g.sourcemaps.init())
.pipe(plugins.g.babel({
presets: ['es2015']
presets: [
require.resolve("babel-preset-es2015")
]
}))
.pipe(plugins.g.istanbul())
.pipe(plugins.g.istanbul({}))
.pipe(plugins.g.sourcemaps.write())
.pipe(plugins.g.injectModules())
.on("finish", function () {
plugins.gulp.src([plugins.path.join(paths.cwd, "test/test.js")])
.pipe(plugins.g.babel({
presets: ['es2015']
presets: [
plugins.path.join(paths.npmtsPackageRoot, "node_modules/babel-preset-es2015/index.js")
]
}))
.pipe(plugins.g.injectModules())
.pipe(plugins.g.mocha())
.pipe(plugins.g.istanbul.writeReports())
.pipe(plugins.g.istanbul.writeReports({
dir: './coverage',
reporters: ['lcovonly', 'json', 'text', 'text-summary']
}))
.pipe(plugins.g.gFunction(function () {
plugins.beautylog.ok("Tested!");
done.resolve(configArg);

View File

@ -1,6 +1,6 @@
{
"name": "npmts",
"version": "5.3.18",
"version": "5.3.21",
"description": "write npm modules with TypeScript",
"main": "dist/index.js",
"bin": {

View File

@ -11,7 +11,6 @@ export let g = {
sourcemaps: require("gulp-sourcemaps"),
typedoc: require("gulp-typedoc")
};
import "babel-preset-es2015";
export let lodashObject = require('lodash/fp/object');
export import projectinfo = require("projectinfo");
export import path = require("path");

View File

@ -14,19 +14,27 @@ let mocha = function (configArg) {
var stream = plugins.gulp.src([plugins.path.join(paths.cwd,"dist/*.js")])
.pipe(plugins.g.sourcemaps.init())
.pipe(plugins.g.babel({
presets: ['es2015']
presets: [
require.resolve("babel-preset-es2015")
]
}))
.pipe(plugins.g.istanbul({
}))
.pipe(plugins.g.istanbul())
.pipe(plugins.g.sourcemaps.write())
.pipe(plugins.g.injectModules())
.on("finish",function(){
plugins.gulp.src([plugins.path.join(paths.cwd,"test/test.js")])
.pipe(plugins.g.babel({
presets: ['es2015']
presets: [
plugins.path.join(paths.npmtsPackageRoot,"node_modules/babel-preset-es2015/index.js")
]
}))
.pipe(plugins.g.injectModules())
.pipe(plugins.g.mocha())
.pipe(plugins.g.istanbul.writeReports())
.pipe(plugins.g.istanbul.writeReports({
dir: './coverage',
reporters: [ 'lcovonly', 'json', 'text', 'text-summary']
}))
.pipe(plugins.g.gFunction(function(){
plugins.beautylog.ok("Tested!");
done.resolve(configArg);