Skip to content

Releases: jsdoc2md/jsdoc-to-markdown

v2.0.0 Pre-release

09 Aug 21:56
Compare
Choose a tag to compare
v2.0.0 Pre-release Pre-release
Pre-release

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.
    • .clear() method added - clears the cache.
  • Command-line tool changes
    • Updated the usage guide
    • options added
      • --source takes source code in as a string. Useful in scripting.
      • --jsdoc returns the raw, unchanged jsdoc data.
      • --clear clears the cache
    • 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 (like member, class etc.) not doclet property, as before. The isEnum 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.

Dependency tree

Old packages and deprecation warnings should now be gone.

Documentation

I'll write a fresh set of documentation (tutorials and an FAQ) next, making more use of the Wiki.

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 will now keep count of the options and node versions used. Only counts/stats are sent, no filenames or source code. Please read the usage-stats docs and source for all the details. You're welcome to view the stats, just send me a google account email and i'll grant you read access to the reports.

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.

Install the prerelease

$ npm install -g jsdoc-to-markdown@^2.0.0-alpha

Related repos:
https://github.com/jsdoc2md/jsdoc-to-markdown/tree/next
https://github.com/jsdoc2md/jsdoc-api
https://github.com/jsdoc2md/jsdoc-parse/tree/next
https://github.com/jsdoc2md/dmd/tree/sync