[1.0.0] - 2018-10-23
Major refactorization after two years, using TypeScript v3.
Added
- Support for BOM mark in the source (it is preserved and does not affects the parsing).
- Badges of the different services used to take care of the quality of the code.
- Buy me a Coffee link.
- Support for replacement with instances of
Number
. - Share .vscode setup for launch, settings, and tasks in CVS.
- .npmignore files, for distribution with minimal stuff.
- Sync test for async operation.
- Async operation.
- ~~Add prefix for
<!
(alt html comment) to the predefined prefixes.~~ - Support for replacement with more than one object property.
Changed
- Revised Readme (WIP)
- Make readonly the predefined variables
_FILE
and _VERSION
. - Integrate Coverity (static analysis), CodeClimate (quality), Codebeat (quiality/analysis) and Codecov (coverage).
- More strict ESLint rules.
- Test modularizated and ready, 100% coverage.
- Rewrite test in TypeScript
- Package "expect", now part of jest, is replaced with expect.js.
- Replacement in code accepts more than one object properties, Date and RegExp outputs strings, NaN outputs
null
. - Rewrite revars, evalExpr and remapVars, remove macro support, new logic for replacements.
- Rewrite parseOptions, modularize some functions.
- Internal modules now have named exports, main module (jscc) has default export
- Configure ESLint to use the TypeScript parser.
- First unoptimized conversion to Typescript.
- Use .eslintrc.js instead .eslintrc.yaml, the JS format is easier to maintain.
- Keep package manager locks as local.
- Use "Keep a Changelog" recommendations for the changelog.
- Update the LICENSE file to MIT (it was incorrect).
- Update devDependencies and minimum node.js version to 6.
Removed
- The undocumented option
errorHandler
was removed, which makes the logic more simpler and secure. - The "dist" folder holding the transpilled code is excluded from CVS (slim PRs, simpler CI config)
- (Internal) Remove babel, as the plugin now runs on node.js v6 or later.