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.