Changelog
3.3.0 (May 2015)
@interface
and @implements
tags to document interfaces and their
implementations. (#720, #828)@inheritDoc
and @override
tags are now supported. (#53)@mixes
tag, all of the mixins now appear in the
symbol's documentation. (#378)--verbose
flag. (#416)-P/--package/
and -R/--readme
flags to specify the package and README file. (#708)--pedantic
flag to treat all errors as fatal errors, and to treat warnings
as errors. This flag replaces the --lenient
flag, which had roughly the opposite meaning and is no
longer available. (#416)-a/--access
flag to control whether private, protected, and public symbols
appear in the documentation. (#860, #861)--debug
flag to log detailed debugging information to the console. This
information can help you diagnose bugs in JSDoc itself. (#416)source.exclude
option in the configuration file. (#484)source.exclude
option now works correctly when JSDoc is run with the -r/--recurse
flag.
(#616)-r/--recurse
flag, it now scans for tutorials recursively. (#712)-X/--explain
option now runs much more quickly. (#633)@example
tag is indented, JSDoc now removes the extra indentation.
(#540)@param {Array.<string>} [foo=['bar']]
). (#640)@property {string} foo='bar'
). (#791)@type
tag includes a description (for example, @type {string} some text
), JSDoc now
parses the type expression correctly and discards the description. (#615)tags.dictionaries
option to ['closure']
. This option can contain the values
jsdoc
, closure
, or both. If multiple dictionaries are enabled, and a tag is defined in more than
one dictionary, JSDoc uses the definition from the first dictionary that contains the tag. (#729,
#730, #731, #732)overrides
property to the doclet that is
overriding another. The overrides
property contains the longname of the overridden symbol. (#792)type
object now includes a hidden
parsedType
property. The parsedType
property contains a syntax tree that represents the type
expression. The syntax tree is generated by Catharsis, and
its format may change in the future. (#576)id
attributes in output files are unique within that file. (#539)lib/jsdoc/schema.js
. (#327)allowUnknownTags
option is set to false
, JSDoc no longer logs warnings about the
presence of @also
and @scope
tags. (#574)module.exports
object can now be documented. (#500)Vector
in
V.Vector
), JSDoc now assigns the correct longname to the symbol. (#608)memberof
, longname
, and scope
properties. (#631)scope
property to global
for all global doclets. (#684)scope
property. (#782)Foo#bar(variation)
), the link text is now
preserved when generating HTML links. (#857)@class
, @classdesc
, and @constructor
tags, JSDoc no
longer ignores the value of the @classdesc
tag. (#806)@constant
, @external
, @member
,
@module
, @namespace
, and @param
), JSDoc now parses the tag correctly when it includes a type
but not a name. (#351, #535)@default
tag now works correctly when used with an array literal. (#604)@enum
tag now works correctly when the enumeration is part of a chain of assignments (for
example, var FOO = exports.FOO = {/* enumerated values */}
). (#702)@exports
and @module
tags now work correctly when their value includes a module:
namespace (for example, @exports module:foo
). (#786)@memberof
tag now works correctly when it refers to a module that is defined in a separate
file. (#880)@variation
tag now works correctly when its value is enclosed in parentheses (for example,
@variation (foo)
). (#850)mustNotHaveDescription
property. When this property is set to
true
, JSDoc will warn the user if the tag text includes a description (such as The description
in @param {string} foo - The description
). (#615)dictionary.normalize
, which is a synonym for
dictionary.normalise
. (#884){@link}
tags from working. (#518)@author
and @throws
tag values to HTML by default. (#736,
#878)summarize
plugin that automatically generates summaries based on the
description. (#485)underscore
plugin that finds symbols whose names begin with an underscore
and automatically tags them as @private
. (#471)doclet
property of newDoclet
events. (#584)layout.tmpl
, by setting the
templates.default.layoutFile
option in JSDoc's configuration file. The property can contain a
relative or absolute path to the replacement for layout.tmpl
. Relative paths are resolved against
the path to the configuration file; the current working directory; and the JSDoc directory, in that
order. (#480)templates.default.outputSourceFiles
option is set to false
, the documentation no
longer shows the path to each source file. (#571)templates.default.staticFiles.include
to list files that will be
copied to the output directory. For backwards compatibility, the property
templates.default.staticFiles.paths
is also supported but is deprecated. (#785)templates.default.staticFiles.include
now works correctly when an absolute path is
specified. (#939)templates.default.staticFiles
options now work correctly on Windows. (#785)templates.default.includeDate
to false
. (#910)module.exports
, the value of the @classdesc
tag now appears in
the documentation. (#740)module.exports
, and the constructor inherits from another class,
the parent class is now listed in the documentation. (#594)@example
tag, including HTML tags, is now properly escaped. (#511)@fires
tag, the tag information now appears in the documentation. (#568)@mixin
tag, the mixins are now listed in the documentation.
(#379, #602)@param
tags are used to document properties of array values (for example,
@param {Object[]} foo
and @param {string} foo[].bar
), the properties are now grouped into the
appropriate row of the parameters table. (#870)@requires
tag, the tag information now appears in the documentation. (#563)module.exports
, the documentation now displays all of
the signatures for the overloaded function. (#727)