UNPKG

jsdoc-x

Version:

Parser for outputting a customized Javascript object from documented code via JSDoc's explain (-X) command.

176 lines (117 loc) 7.58 kB
# jsdoc-x Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org). ## [4.1.0](https://github.com/onury/jsdoc-x/compare/v4.0.3...v4.1.0) (2020-01-22) ### Changed - Updated JSDoc core dependency to v3.6.3 (latest as of Jan, 2020.) - Added `config` option that enables passing a custom configuration to the underlying JSDoc core. This bypasses all parser options. (PR by [@JustinBeaudry](https://github.com/JustinBeaudry)) - Updated other dependencies to their latest versions. ### Fixed - An issue where JSDoc core (v3.6.x) produces some duplicate symbols especially when some ES2015 exporting is used within the code. ## [4.0.3](https://github.com/onury/jsdoc-x/compare/v4.0.0...v4.0.3) (2019-01-08) ### Changed - `filter` (or `predicate`) option now also accepts a regular expression string. - Improved `cleanName()` inner method that returns clean symbol names. ## [4.0.0](https://github.com/onury/jsdoc-x/compare/v3.0.0...v4.0.0) (2018-11-18) ### Changed - **Breaking:** Requires Node.js v8 or later. This change is due to the core dependency `fs-extra` update. - Minor improvements. ## [3.0.0](https://github.com/onury/jsdoc-x/compare/v2.0.2...v3.0.0) (2018-02-24) ### Changed - **Breaking:** Requires Node.js v6 or later. (Dropped support for Node v4.) - Improved the symbol sorting logic. You can now sort by `scope`, by `access` type, by `kind`, `grouped` or `alphabetic`. See docs. - `.isMethod()` utility method to return `false` for getters/setters (which will be treated as properties, not methods). - Updated dependencies. ### Added - `getKind()` utility method. This is not the same as `symbol.kind`. i.e. JSDoc generates a constructor's kind as `"class"`. This will return `"constructor"`. - `$kind` property to documented symbols when parsed. See `utils.getKind()` method to see how it's different than `symbol.kind`. - Utility methods: `getLevels()`, `getParentName()`, `getParent()`, `getKind()`, `isEvent()`, `isGenerator()`, `isCallback()`, `isConstant()`, `isInterface()`, `isExternal()`, `isMixin()`, `isPackagePrivate()`. - More tests for `utils`. ### Fixed - An issue with `utils.isClass()` method where `meta.code.type` is not set to `ClassDeclaration`. - `.isProperty()` utility method. It'll now return `false` if symbol is a method/function. This also affects the following methods: `.isStaticProperty()`, `.isInstanceProperty()`. ## [2.0.2](https://github.com/onury/jsdoc-x/compare/v2.0.1...v2.0.2) (2018-01-18) ### Changed - Updated dependencies. ## [2.0.1](https://github.com/onury/jsdoc-x/compare/v2.0.0...v2.0.1) (2017-08-24) ### Added - `options.debug` for `.parse()` method. Fixes [#4](https://github.com/onury/jsdoc-x/issues/4). ## [2.0.0](https://github.com/onury/jsdoc-x/compare/v1.3.3...v2.0.0) (2017-08-24) ### Changed - **Breaking**: Requires Node.js v4 or newer. - Updated `jsdoc` core module from v3.4.3 to v3.5.4. This adds support for [ES2015 code](https://github.com/jsdoc3/jsdoc/releases/tag/3.5.0), new tags such as `@hideconstructor`, etc.. (See [all JSDoc changes here][jsdoc-releases]). - Any temporary files generated are now gracefully cleaned up, after parsing is complete. - Updated dependencies to latest versions. ### Fixed - An issue where constructor could not be detected due to a JSDoc bug. For example, in ES2015 code, if the constructor is not marked with `@constructs` the longname is incorrect e.g. `ClassName#ClassName` instead of `ClassName`. We fixed this both for `utils.getLongName()` and for constructor-detection within the `hierarchy` process. - An issue where some symbols were not moved to `$members` collection because of its `<anonymous>~` prefix. This has occurred when the `hierarchy` option was enabled. - An issue with [a rare case](https://github.com/onury/jsdoc-x/pull/3) that occurred when a JSDoc comment contained a specific string. - `utils.getLongName()` (was broken after JSDoc updated). ## [1.3.3](https://github.com/onury/jsdoc-x/compare/v1.3.2...v1.3.3) (2017-03-10) ### Added - `ignored` boolean option that specifies whether to exclude symbols marked with `@ignore` tag in the output. - `utils.isIgnored()`. - `utils.isDeprecated()`. ## [1.3.2](https://github.com/onury/jsdoc-x/compare/v1.3.0...v1.3.2) (2017-03-09) ### Changed - Improved symbols sorting logic/performance. ### Added - `utils.getSymbolNames()` utility method. ## [1.3.0](https://github.com/onury/jsdoc-x/compare/v1.1.0...v1.3.0) (2017-03-05) ### Changed - Updated dependencies to latest versions. ### Added - Options: `allowUnknownTags`, `dictionaries`, `includePattern`, `excludePattern`. - [JSDoc plugin](http://usejsdoc.org/about-plugins.html) support via the new `plugins` option. ## [1.1.0](https://github.com/onury/jsdoc-x/compare/v1.0.8...v1.1.0) (2016-08-13) ### Added - Utility methods: `utils.isPublic()`, `utils.isPrivate()`, `utils.isProtected()`. ### Fixed - Constructors would still show up in the output even though `@private` is set. ## [1.0.8](https://github.com/onury/jsdoc-x/compare/v1.0.5...v1.0.8) (2016-06-06) ### Changed - Sort options now sorts with `$longname`. ### Added - JSDoc overwrites the `longname` and `name` of the symbol, if it has an `alias`. Now we additionally output a `$longname` property with each symbol, that returns the correct/original long name. See [issue](https://github.com/jsdoc3/jsdoc/issues/1217) at JSDoc repo. - Utility methods: `utils.getCodeName()`, `utils.isInner()` and `utils.isTypeDef()` (alias: `utils.isCustomType()`). ### Fixed - `utils.getFullName()` (alias: `utils.getLongName()`). ## [1.0.5](https://github.com/onury/jsdoc-x/compare/v1.0.2...v1.0.5) (2016-05-30) ### Added - Utility methods `utils.notate()` and `utils.isModule()`. ### Fixed - `sort` option. Also `symbol.properties` are sorted, as well as the symbols. - `utils.isMethod()`. Added alias `utils.isFunction()` - `utils.isClass()`. ## [1.0.2](https://github.com/onury/jsdoc-x/compare/v1.0.1...v1.0.2) (2016-05-10) ### Fixed - Parsing an array of files was broken. Fixed. (PR [#2](https://github.com/onury/jsdoc-x/pull/2)) ## [1.0.1](https://github.com/onury/jsdoc-x/compare/v1.0.0...v1.0.1) (2016-05-07) ### Fixed - `utils.isMethod()`. ## [1.0.0](https://github.com/onury/jsdoc-x/compare/v0.4.8...v1.0.0) (2016-05-05) ### Added - `glob` support for `files` option of `.parse()` method. - `source` option for `.parse()` method. - `hierarchy` option for `.parse()` method. - `sort` option for `.parse()` method. - `.filter()` method for use with (already parsed) documentation array. - `utils` as a utility module for documentation symbols. ## [0.4.8](https://github.com/onury/jsdoc-x/compare/v0.4.6...v0.4.8) (2016-03-19) ### Fixed - If the parent project(s) has `jsdoc`, ours won't get installed. Since we use a specific file within `jsdoc` module, we cannot find it via `require()`. Now, fixed `jsdoc` path resolver. This will either use the local or from the parent project(s) properly. ## [0.4.6] (2016-03-19) ### Added - `output` option to write JSON file. ## [0.4.0] (2016-03-18) ### Changed - Using `child_process.spawn` instead of `execFile` since the latter has 200kb limit. ### Added - `filter`, `undocumented`, `undescribed`, `module` options. - Jasmine tests. ## [0.3.0] (2016-03-17) ### Added - Support for both Promises and callbacks. - `relativePath` option. ## [0.1.0] (2016-03-16) - Initial. [://jsdoc-releasgithubes]:https.com/jsdoc3/jsdoc/releases