Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

jsdoc

Package Overview
Dependencies
Maintainers
2
Versions
51
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

jsdoc - npm Package Versions

1
6

3.5.2

Diff

Changelog

Source

3.5.2 (July 2017)

  • The default template now hides parameters and properties for class constructors that are hidden with the @hideconstructor tag. (#1397)
  • JSDoc now uses an improved algorithm for locating plugins and template resources. (#1394)
  • When the @alias tag identifies an instance member (for example, @alias Foo#bar), the alias is now applied correctly. (#1385)
  • When the @alias tag is applied to a class that is within a module and is aliased to the module name, the class's instance members are now documented correctly. (#1134)
  • Fixed a crash when a @param tag uses the wrong delimiter to close the type expression (for example, @param {Object)). (#1221)
  • The Markdown plugin now converts Markdown-formatted text in the @summary tag. (#1149)
hegemonic
published 3.5.1 •

Changelog

Source

3.5.1 (July 2017)

  • Fixed an issue that prevented JSDoc from working on versions of Node.js prior to 5.10.0. (#1393)
  • If the JSDoc configuration file does not have a file extension, JSDoc now assumes that the file is in JSON format. (#1391)
hegemonic
published 3.5.0 •

Changelog

Source

3.5.0 (July 2017)

Major changes

  • JSDoc now uses the Babylon JavaScript parser, which means that JSDoc can parse any JavaScript or JSX file that is supported by the Babel compiler. For example, JSDoc can now parse JavaScript files that include all of the following language features:

    + [Decorators](https://github.com/tc39/proposal-decorators)
    + [Public and private class fields](https://github.com/tc39/proposal-class-fields)
    + [Asynchronous iterators](https://github.com/tc39/proposal-async-iteration)
    + [Dynamic `import()`](https://github.com/tc39/proposal-dynamic-import)
    + [Optional chaining](https://github.com/tc39/proposal-optional-chaining)
    
  • You can now use a JavaScript file to configure JSDoc. The JavaScript file must be a CommonJS module that exports a single configuration object. See the documentation for details and examples.

  • Fixed multiple issues with documenting ES2015 classes and modules. See "Bug fixes" for details.

  • JSDoc now requires Node.js 4.2.0 or later.

New tags

Note: Third-party templates may not support these new tags.

  • You can now use the new @async tag to indicate that a function is asynchronous (that is, that it was declared with the syntax async function foo() {}). In general, you do not need to use this tag, because JSDoc autodetects asynchronous functions. (#1188)
  • You can now use the new @generator tag to indicate that a function is a generator function. In general, you do not need to use this tag, because JSDoc autodetects generator functions. (#1158)
  • You can now use the new @hideconstructor tag to tell JSDoc to hide a class's constructor from the documentation. (#952)
  • You can now use the new @package tag to indicate that a symbol is package-private. (#962)
  • You can now use the new @yields tag to document the value that is yielded by a generator function. (#1388)

Enhancements

  • JSDoc can now parse files that contain asynchronous functions (that is, functions declared as async function foo() {}), and JSDoc autodetects when a function is asynchronous. (#1188)
  • JSDoc now autodetects generator functions. (#1158)
  • When JSDoc cannot parse a type expression, it now logs the line number on which the type expression was found. (#1057)
  • When JSDoc fires jsdocCommentFound and symbolFound events, the event now includes a columnno property indicating the column number on which the comment or symbol was found. (#1362)
  • You can now use the new sourceType configuration option to control how JavaScript files are parsed. The default value is module. Set the value to script to suppress implied strict mode; this setting will also prevent you from using ES2015 modules. (#1210)
  • You can now use the new recurseDepth configuration option to control how many levels deep JSDoc will recursively search for files. The default value is 10. (#1340)

Bug fixes

  • JSDoc now correctly documents the constructors and instance properties of ES2015 classes. (#1182)
  • JSDoc now correctly documents the constructor of an ES2015 class exported from an ES2015 module. (#1272)
  • JSDoc now uses the correct scope for exported symbols, and their children, in ES2015 modules. (#1293)
  • When JSDoc is run in a directory that has a plugins/ or templates/ directory, JSDoc can now discover plugins and templates in other directories. (#1081, #1308)
  • JSDoc no longer crashes when it reads a UTF-8 JSON file with a leading BOM. (#1256, #1297)
  • When a function is assigned to a variable, JSDoc now autodetects the function's default and repeatable parameters. (#1054)
  • JSDoc no longer crashes when the @author tag does not have a value. (#1289)
  • JSDoc now always calls process.exit() when exiting. (#1287)

Default template

  • The default template now identifies asynchronous and generator functions. (#1158, #1188)
  • The default template now displays appropriate documentation for namespaces that are also functions. (#955)
  • Images that are wider than the text area are now displayed correctly. (#1359)
hegemonic
published 3.4.3 •

Changelog

Source

3.4.3 (November 2016)

Updated JSDoc's LICENSE.md file.

hegemonic
published 3.4.2 •

Changelog

Source

3.4.2 (October 2016)

  • Classes exported from an ES2015 module are now documented correctly. (#1137)
  • Fixed an issue that prevented plugins and templates from being loaded correctly. (#1259)
  • Fixed a crash when using the experimental object spread operator in assignments. (#1258)
hegemonic
published 3.4.1 •

Changelog

Source

3.4.1 (September 2016)

Enhancements

  • When installing JSDoc from NPM, all dependencies are now pulled from NPM. (#961)
  • The configuration setting tags.allowUnknownTags may now contain an array of tag names that should be allowed. (#1159)

Bug fixes

  • When an ES2015 module's default export is a class, JSDoc now documents the class correctly. (#1113, #1120)
  • JSDoc no longer crashes when an ES2015 module exports an anonymous class. (#1113)
  • JSDoc no longer crashes when the experimental object spread operator is used. (#1141)
  • In ES2015 methods, JSDoc now autodetects whether a parameter is a default or repeatable parameter. (#1144)
  • The Markdown plugin now works correctly with inline tags that contain special characters, such as {@link chat."#channel"}. (#1035)
  • When JSDoc is run in a directory that has a plugins/ or templates/ directory, JSDoc can now discover plugins and templates in other directories. (#1081)

Templates

  • The default template now uses appropriate styles for displaying tables. (#1064)
  • The default template's CSS file no longer uses the same style for both <h2> and <h3> elements. (#1108)
  • JSDoc now includes a silent template that generates no output. This template makes it easier to use JSDoc as a linter to check for syntax errors and unrecognized tags in documentation comments. (#1160)
hegemonic
published 3.4.0 •

Changelog

Source

3.4.0 (November 2015)

Major changes

  • JSDoc is now compatible with Node.js 4.0.0 and later.
  • JSDoc no longer runs on Mozilla Rhino. Use Node.js to run JSDoc.
  • JSDoc can now parse ECMAScript 2015 code, including code that uses native classes and modules. (#555)
  • JSDoc can now parse JSX files. (#1001)
  • JSDoc's app and env global variables are now deprecated. Avoid using the app global. Use the jsdoc/env module instead of the env global. (#812)

Enhancements

  • const declarations are now automatically treated as constants. (#555)
  • Templates may now run asynchronously. To create an asynchronous template, simply return a promise from your template's publish method. (#953)

Bug fixes

  • Symbols now get the correct longname when they are defined as properties of a prototype and include special characters, such as # and . (for example, Foo.prototype['this#is#bar']). (#888)
  • Instance members that are defined as computed properties of this (for example, this['bar']) now get the correct longname. (#890)
  • When an instance member (for example, this.bar) is documented within a member of a prototype (for example, Foo.prototype.setBar), the instance member's longname is now set correctly. (#1011)
  • The @borrows tag now works with symbol names that contain whitespace. (#818)

Plugins

  • For the Markdown plugin, you can now autogenerate a heading ID for each heading by setting the configuration property markdown.idInHeadings to true. (#1032)

Template improvements

  • In the default template, you can now show the full namepath of each object in the navigation column by setting the configuration property templates.default.useLongnameInNav to true. (#986)
  • In the Haruki template, falsy default values now appear in the output. (#1063)
hegemonic
published 3.3.3 •

Changelog

Source

3.3.3 (September 2015)

  • Symbols named prototype are now handled correctly. (#891)
  • Fixed an issue that could cause JSDoc to go into an infinite loop when a module is documented twice. (#975)
  • Fixed an issue that could cause parsing errors on valid regular expressions. (#1053)
hegemonic
published 3.3.2 •

Changelog

Source

3.3.2 (June 2015)

JSDoc no longer crashes when parsing a large number of files, or a single object that has a large number of properties. (#976)

hegemonic
published 3.3.1 •

Changelog

Source

3.3.1 (June 2015)

  • Fixed a crash in the Haruki template. (#1005)
  • When a type expression includes a record type with numeric keys (for example, {0: string}), the type expression is now parsed correctly. (#1016)
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc