Releases: jsdoc2md/jsdoc-to-markdown
v9.0.0
The default output has not changed. The minimum required Node version is still v12.17. The goals for this release were bug fixing and simplification. Feel free to comment in the release discussion or post an issue.
Breaking changes since v8.0.3
- Removed
.renderSync()
,.getTemplateDataSync()
and.getJsdocDataSync()
. The jsdoc2md API is now async-only. - Previously, passing either
option.files
oroption.source
was mandatory. Now, it is eitheroption.files
,option.source
oroption.configure
. jsdoc2md/jsdoc-api#27
Non-breaking changes
- Fixed a bug where it was possible for a handlebars template to be passed into the jsdoc-api
template
option. #303 - Support clever-links, monospace-links,
{@linkcode}
and{@linkplain}
. #301 - Fixed a 'maximum call stack size exceeded' error. The user now gets a warning if the malformed input which formerly caused the error is detected. jsdoc2md/dmd#89
- Fixed an issue where the dmd internal partials failed to load if a user's directory name contained special glob characters. jsdoc2md/dmd#82
- Added the
--EOL
option to control line-endings. Fixes jsdoc2md/dmd#92. - Fixed an issue where setting
{ pedantic: false }
confused the underlying jsdoc. jsdoc2md/jsdoc-api#22 - Can now pass an array of strings to
.source
. jsdoc2md/jsdoc-api#11 - Added support for
@hideconstructor
. jsdoc2md/dmd#94 - Print a warning when the most common mistake is detected (
@module
tag required) jsdoc2md/dmd#96 - Fixed an issue where a
@example
was excluded in the output if the doclet did not contain a description. jsdoc2md/jsdoc-parse#33
Other improvements
- Greatly optimised the dependency tree - upgraded all deps to their latest versions (removing deprecation warnings) and factored many old modules out of the project.
Upgrade notes
- Update your code replacing any use of
.renderSync()
,.getTemplateDataSync()
and.getJsdocDataSync()
with their async equivalents.- To see an example of API usage, see here.
v8.0.0
Breaking change since 7.1.1
- Upgraded jsdoc-api which now uses jsdoc version v4.0.0 internally. From v4.0.0 onward, jsdoc requires Node v12. This was a breaking change for jsdoc but not for jsdoc2md as it already requires v12+, however this jsdoc2md release is a major version increment just to be on the safe side.
Minor Updates
- Upgraded dmd which now uses marked v4.2.3
v7.1.0
v7.0.0
v6.0.0
Breaking changes since v5.0.0
- Node versions less than v10 are no longer supported
Other fixes
- Fixed crash when generating very large documentation sets using
renderSync
jsdoc2md/jsdoc-api#21 - All dependencies upgraded
v5.0.0
Breaking changes since v4.0.1
- Node versions less than v8 are no longer supported
Other fixes
- Now works on node v12 (since this issue was fixed)
- Upgraded jsdoc from v3.5.5 to 3.6.2 (via jsdoc-api)
- Upgraded dmd dependencies to remove distracting and irrelevant security warnings
v4.0.0
Breaking changes since v3.0.4
- Removed the
--html
option due to lack of use.
New features
- Upgraded underlying jsdoc to v3.5.5, meaning jsdoc2md can now process files containing
async
orawait
statements natively, without use of a babel plugin.
Upgrade notes
Upgrade recommended. There are no API changes in v4.0.0, it is backward compatible. Assuming you don't need --html
you can upgrade safely.
v3.0.0
Breaking changes since v2.0.1
- Removed support for node versions less than v4.0.0.
This is an optimisation release. By removing the requirement for polyfill libraries (core-js, babel-polyfill etc), the jsdoc2md dependency tree has shrunk to half its previous size.
There are no functional changes in this particular release.
v1.3.8
Upgraded the dependencies and added the usage stats as described in the v2.0.0 release.
No further releases are planned for jsdoc2md version 1.
v2.0.0
This release is intended to freshen up the codebase and make a few improvements while longer-term goals continue to be developed. The majority of improvements relate to performance, the API and dependency tree cleansing - the data and rendered docs output are largely unchanged. For now.
Breaking since 1.3.6
- Whole new API.
- The streaming interface has gone in favour of sync (node >= 0.12.0) and async (Promise) methods.
- Methods added to get raw jsdoc data.
- Generated docs are cached internally by default. Meaning, repeat runs against the same input will return the previous output straight from cache.
source
option added, you can now pass in source code as a string.
- Command-line tool changes
- Updated the usage guide
- options added
--namepaths
returns all namepaths found in the supplied code--source
takes source code in as a string. Useful in scripting.--jsdoc
returns the raw, unchanged jsdoc data.--clear
clears the cache--no-cache
skips the cache--version
- options changed
-c
is now the alias for--configure
instead of--member-index-format
to match the jsdoc-c
option.--conf
option renamed to--configure
to match the jsdoc--configure
option.--src
option renamed to--files
to avoid confusion between--src
and--source
- options removed
--sort-by
and--group-by
removed for now, back in a future version or by popular demand.
- Data and rendered output changes
- enum is now interpreted as a
kind
(likemember
,class
etc.) not doclet property, as before. TheisEnum
property in the--json
(and jsdoc-parse) output has gone. @private
and@ignored
doclets and are now left in the--json
(jsdoc-parse) data, and filtered out at template (dmd) level instead.
- enum is now interpreted as a
Other updates
Dependency tree
Old package and deprecation warnings should now be gone.
Documentation
Fresh tutorials in the wiki, more to come.
Usage stats
I'm curious to know whether i can drop node 0.10 or 0.12 support. Also, i'd like to know which features are used/unused, need improving or better documentation. So, the tool keeps count of the features and node versions used. Only count totals are sent, no data, filenames or source code.
To disable collection of stats, run this command:
$ echo '{ "no-usage-stats": true }' > ~/.jsdoc2md.json
jsdoc-parse changes
- Streaming interface removed. jsdoc-parse now exports a single, synchronous function to transform the raw jsdoc data.
- CLI removed.
dmd changes
- Streaming interface removed. dmd now exports both sync and sync functions generate the markdown output.
- Memoisation cache added to speed up repeat invocations.
- CLI removed.