mirror of https://github.com/vladmandic/human
add linter to build process
parent
7910d07358
commit
0087af5684
|
@ -18,32 +18,63 @@ Build process is written as JavaScript `server/build.js` which can be modified t
|
|||
Build creates a custom `tfjs` bundle to optimize size and avoid unnecessary polyfills
|
||||
Production version of the library is fully minified while dev version runs without code minification for easier debugging
|
||||
|
||||
Build is started by running `npm run build`
|
||||
Production build runs following operations:
|
||||
|
||||
1. Compile TypeScript
|
||||
2. Create dist minified bundles
|
||||
3. Run Linter
|
||||
4. Create TS typings
|
||||
5. Create TypeDoc API specification
|
||||
|
||||
Dev build runs following operations:
|
||||
|
||||
1. Compile TypeScript
|
||||
2. Create dist non-minified bundles
|
||||
|
||||
<br>
|
||||
|
||||
## Build
|
||||
|
||||
Production build is started by running `npm run build`
|
||||
|
||||
```log
|
||||
> @vladmandic/human@0.9.9 build /home/vlado/dev/human
|
||||
> npm install && rimraf dist/* && node server/build.js && node server/changelog.js
|
||||
> @vladmandic/human@2.0.0 build /home/vlado/dev/human
|
||||
> node server/build.js
|
||||
```
|
||||
|
||||
audited 330 packages in 2.272s
|
||||
found 0 vulnerabilities
|
||||
|
||||
2020-11-21 12:06:29 INFO: @vladmandic/human version 0.9.9
|
||||
2020-11-21 12:06:29 INFO: User: vlado Platform: linux Arch: x64 Node: v15.0.1
|
||||
2020-11-21 12:06:29 INFO: Build: file startup all target: es2018
|
||||
2020-11-21 12:06:29 STATE: Build for: node type: tfjs: { imports: 1, importBytes: 39, outputBytes: 1044, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2020-11-21 12:06:29 STATE: Build for: node type: node: { imports: 35, importBytes: 403608, outputBytes: 249844, outputFiles: 'dist/human.node.js' }
|
||||
2020-11-21 12:06:29 STATE: Build for: nodeGPU type: tfjs: { imports: 1, importBytes: 43, outputBytes: 1048, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2020-11-21 12:06:29 STATE: Build for: nodeGPU type: node: { imports: 35, importBytes: 403612, outputBytes: 249852, outputFiles: 'dist/human.node-gpu.js' }
|
||||
2020-11-21 12:06:30 STATE: Build for: browserNoBundle type: tfjs: { imports: 1, importBytes: 1798, outputBytes: 260, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2020-11-21 12:06:30 STATE: Build for: browserNoBundle type: esm: { imports: 35, importBytes: 402824, outputBytes: 248844, outputFiles: 'dist/human.esm.nobundle.js' }
|
||||
2020-11-21 12:06:30 STATE: Build for: browserBundle type: tfjs: { modules: 1061, moduleBytes: 3772720, imports: 7, importBytes: 1798, outputBytes: 1531180, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2020-11-21 12:06:30 STATE: Build for: browserBundle type: iife: { imports: 35, importBytes: 1933744, outputBytes: 1783188, outputFiles: 'dist/human.js' }
|
||||
2020-11-21 12:06:31 STATE: Build for: browserBundle type: esm: { imports: 35, importBytes: 1933744, outputBytes: 1783877, outputFiles: 'dist/human.esm.js' }
|
||||
2020-11-21 12:06:32 STATE: Build for: browserBundle type: demo: { imports: 5, importBytes: 1844123, outputBytes: 1830367, outputFiles: 'dist/demo-browser-index.js' }
|
||||
2020-11-21 12:06:32 STATE: Change log updated: /home/vlado/dev/human/CHANGELOG.md
|
||||
```js
|
||||
2021-06-03 09:31:42 INFO: @vladmandic/human version 2.0.0
|
||||
2021-06-03 09:31:42 INFO: User: vlado Platform: linux Arch: x64 Node: v16.0.0
|
||||
2021-06-03 09:31:42 STATE: Application log: /home/vlado/dev/human/server/build.log
|
||||
2021-06-03 09:31:42 INFO: Toolchain: tfjs: 3.6.0 esbuild 0.12.5; typescript 4.2.4; typedoc: 0.20.36 eslint: 7.27.0
|
||||
2021-06-03 09:31:42 INFO: Build: file startup all type: production config: { minifyWhitespace: true, minifyIdentifiers: true, minifySyntax: true }
|
||||
2021-06-03 09:31:42 STATE: Build for: node type: tfjs: { imports: 1, importBytes: 102, outputBytes: 1292, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2021-06-03 09:31:42 STATE: Build for: node type: node: { imports: 40, importBytes: 420707, outputBytes: 371671, outputFiles: 'dist/human.node.js' }
|
||||
2021-06-03 09:31:42 STATE: Build for: nodeGPU type: tfjs: { imports: 1, importBytes: 110, outputBytes: 1300, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2021-06-03 09:31:42 STATE: Build for: nodeGPU type: node: { imports: 40, importBytes: 420715, outputBytes: 371675, outputFiles: 'dist/human.node-gpu.js' }
|
||||
2021-06-03 09:31:42 STATE: Build for: nodeWASM type: tfjs: { imports: 1, importBytes: 149, outputBytes: 1367, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2021-06-03 09:31:42 STATE: Build for: nodeWASM type: node: { imports: 40, importBytes: 420782, outputBytes: 371747, outputFiles: 'dist/human.node-wasm.js' }
|
||||
2021-06-03 09:31:42 STATE: Build for: browserNoBundle type: tfjs: { imports: 1, importBytes: 2478, outputBytes: 1394, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2021-06-03 09:31:42 STATE: Build for: browserNoBundle type: esm: { imports: 40, importBytes: 420809, outputBytes: 244956, outputFiles: 'dist/human.esm-nobundle.js' }
|
||||
2021-06-03 09:31:43 STATE: Build for: browserBundle type: tfjs: { modules: 1274, moduleBytes: 4114813, imports: 7, importBytes: 2478, outputBytes: 1111418, outputFiles: 'dist/tfjs.esm.js' }
|
||||
2021-06-03 09:31:43 STATE: Build for: browserBundle type: iife: { imports: 40, importBytes: 1530833, outputBytes: 1352725, outputFiles: 'dist/human.js' }
|
||||
2021-06-03 09:31:44 STATE: Build for: browserBundle type: esm: { imports: 40, importBytes: 1530833, outputBytes: 1352717, outputFiles: 'dist/human.esm.js' }
|
||||
2021-06-03 09:31:44 INFO: Running Linter: [ 'server/', 'demo/', 'src/', 'test/', [length]: 4 ]
|
||||
2021-06-03 09:32:09 INFO: Linter complete: files: 67 errors: 0 warnings: 0
|
||||
2021-06-03 09:32:09 INFO: Generate types: [ 'src/human.ts', [length]: 1 ]
|
||||
2021-06-03 09:32:14 INFO: Update Change log: [ '/home/vlado/dev/human/CHANGELOG.md', [length]: 1 ]
|
||||
2021-06-03 09:32:14 INFO: Generate TypeDocs: [ 'src/human.ts', [length]: 1 ]
|
||||
2021-06-03 09:32:32 INFO: Documentation generated at /home/vlado/dev/human/typedoc 1
|
||||
```
|
||||
|
||||
<br>
|
||||
|
||||
## Dependencies
|
||||
|
||||
Only project depdendency is [@tensorflow/tfjs](https://github.com/tensorflow/tfjs)
|
||||
Development dependencies are [eslint](https://github.com/eslint) used for code linting and [esbuild](https://github.com/evanw/esbuild) used for IIFE and ESM script bundling
|
||||
Development dependencies are:
|
||||
|
||||
- [esbuild](https://github.com/evanw/esbuild) used to compile TS sources and generate dist bundles
|
||||
- [eslint](https://github.com/eslint) used for code linting
|
||||
- [typescript](https://www.typescriptlang.org/) used to generate typings
|
||||
- [typedoc](https://typedoc.org/) used to generate API specifications
|
||||
|
|
Loading…
Reference in New Issue