JsDuck Changelog

What's new in JsDuck 6.0.0 Beta

Jan 7, 2014
  • New SCSS parser using the official SASS parser:
  • Better auto-detection of SCSS variables and mixin parameters.
  • No more scanning of directories for CSS files, only for SCSS and JS files.
  • Auto-detected version data for parameters, listing of methods with new parameters on API docs index page (Issue #480)
  • New --guides-toc-level option to allow multiple levels of headings in guide table of contents (Issue #488).
  • Default list of external classes now only includes the core JavaScript classes. But one can use special syntax --external=@browser to automatically define all standard browser API classes like HTMLElement and XMLHttpRequest as externals.
  • Large refactoring of command line options parsing:
  • Most boolean options are now in --[no-]opt style.
  • Allow comma-separated paths for --tags, --images, --exclude.
  • The tag warning type can now be parameterized to ignore warnings about particular tags (Issue #500)
  • A new @class_icon field for custom tags to allow overriding the icon of a class. (Issue #456)
  • New @component tag (mostly for internal use).
  • Fix crash when parentless sub-cfg in class doc-comment. (Issue #475)
  • Fix incompatible encodings error in RKellyAdapter. (Issue #491)
  • Fix crash when method inherits from cfg. (Issue #494)
  • Eliminate the defunct cat_old_format warning type.

New in JsDuck 5.3.4 (Jan 7, 2014)

  • Fix display of +/- defaults for warning types in --help=warnings.

New in JsDuck 5.3.2 (Oct 4, 2013)

  • Fix XSS vulnerability on print pages
  • Fix --warnings=all:PATH not effecting the nodoc warning
  • Allow mixing of enabled/disabled paths in warning rules

New in JsDuck 5.3.1 (Oct 4, 2013)

  • Fix crash when running in Ruby 1.8, caused by trailing comma.

New in JsDuck 5.3.0 (Sep 30, 2013)

  • New -cache and --cache-dir options to control caching.
  • New @experimental tag.
  • Fix crash when JS getter/setter syntax used.

New in JsDuck 5.2.0 (Sep 7, 2013)

  • New nodoc warning type with parameters to replace no_doc, no_doc_member, no_doc_prop
  • Ignore UTF-8 BOM when in Ruby 1.8
  • Hide "Fires" section when no events fired

New in JsDuck 5.1.0 (Aug 21, 2013)

  • Add --exclude option for excluding a set of input files.
  • Fix handling of anchor links in guides print version.
  • Add Window and XMLHttpRequest to external classes list.

New in JsDuck 5.0.1 (Aug 21, 2013)

  • Much better error reporting for JS syntax errors.
  • Support for Object.defineProperty().
  • Fix crash with JS sparse arrays.
  • Ignore (required) after @cfg subproperties.
  • Handle JS strings without Ruby's eval(), avoiding crash in certain scenarios.
  • Handle Unicode in anchor links.
  • Fix random inconsistences caused by @inheritdoc processing.
  • Use minimum version numbers when linking gem dependencies.

New in JsDuck 5.0.0 (Aug 21, 2013)

  • New custom tags system
  • New flat export format
  • New JavaScript parser
  • Improved warnings system
  • New tags @localdoc @fires

New in JsDuck 5.0.0 Beta 5 (Jul 5, 2013)

  • Fix Unicode handling problems in RKelly.
  • Various fixes for RKellyAdapter and make the testsuite fully runnable.

New in JsDuck 5.0.0 Beta 4 (Jul 4, 2013)

  • Replace Esprima.js with pure-ruby JS parser RKelly (for now we're using our own fork of RKelly)
  • Fix crash when optional nameless parameter encountered
  • Don't auto-load jsduck.json when explicit --config option used
  • Small style fixes for tables and print

New in JsDuck 5.0.0 Beta 3 (Jun 3, 2013)

  • Redesign of custom member types system (eliminated categories, added icons, improved standard tag parsing).
  • New @fires tag and extensive auto-detection of it.
  • Refactor of auto-detection code.
  • Plus all changes in 4.x line.

New in JsDuck 4.10.3 (May 24, 2013)

  • Fix XSS issue allowing JS in URL to be executed on error page.

New in JsDuck 4.10.2 (May 24, 2013)

  • Fix handling of links like #/guide/myname.

New in JsDuck 4.10.1 (May 21, 2013)

  • Upgrade prettify lib to fix newlines handling in IE10.
  • Allow installing JSDuck with therubyracer 0.11.x.
  • Print warning for invalid guide name.

New in JsDuck 5.0.0 Beta 2 (May 10, 2013)

  • Export class members as flat list.
  • Remove the following fields from export data: component, subclasses, superclasses, mixedInto, parentMixins.
  • Lots of improvements to @inheritdoc system.
  • Add @localdoc tag for non-inheritable documentation.
  • Lots of improvements to warnings system.
  • Enabling/disabling of warnings within a specific path.
  • Print warnings for undocumented parameters.
  • Add warning type for @tag syntax errors.
  • Add warning type for repeated @tag.
  • Add --css option.
  • Allow overriding of builtin tags.
  • Remove support for old categories.json file syntax.

New in JsDuck 4.10.0 (May 10, 2013)

  • Sections in guides can be now referenced with simple #anchor-name links.
  • Experimental --search-url and --search-domain options for new external guides search.
  • Add tooltips to tabs to show full classnames.

New in JsDuck 4.9.0 (May 10, 2013)

  • See issue #363 for details of the new feature.
  • Fix problems with URL-s containing additional parameters.

New in JsDuck 4.8.0 (May 10, 2013)

  • Add --color and --no-color to force colorized terminal output.
  • Add --warnings-exit-nonzero to exit JSDuck with non-zero code when warnings present.
  • Switch to iframe for loading Vimeo videos (the standard code provided by Vimeo).

New in JsDuck 4.7.1 (May 10, 2013)

  • Fix IE 10 not opening page when guide/video/example icon clicked.

New in JsDuck 4.7.0 (May 10, 2013)

  • Remove needless require 'rubygems' statements from source.
  • Use ExecJS to allow other JavaScript runtimes besides therubyracer (e.g. nodejs).
  • Automatically read config from jsduck.json file, if present in current dir.
  • Add "Open in new window" button to basic (non-touch) examples page.
  • Add {DATE} and {JSDUCK} placeholders to --footer.
  • Add --message option for displaying prominent warning message in docs.
  • Add --debug option (equivalent of --template=template --template-links).

New in JsDuck 5.0.0 Beta (Feb 26, 2013)

  • New custom tags system

New in JsDuck 4.6.2 (Feb 26, 2013)

  • Add width and height attributes to expanded {@img} tags.
  • Report bad {@img} links in guides.
  • Handle excessive close tags in HTML auto-correction.
  • Remove min-width constraints from Docs app.
  • Improve class name auto-detection (previously only certain classnames got detected).
  • Fix crash when auto-detecting anonymous function.
  • Fix method docs of builtin Date class.
  • Fix corner case when handling indented code.

New in JsDuck 4.6.1 (Feb 26, 2013)

  • Allow Markdown files to be used with --welcome option.
  • Avoid flickering of the search results dropdown when search fails.
  • Ignore hidden members when counting of new members in classes overview page.
  • Include ECMAScript 5 methods to the docs created with --builtin-classes option.

New in JsDuck 4.6.0 (Feb 26, 2013)

  • Automatically close unclosed HTML tags and print warnings.
  • New option --ignore-html=TAG to allow custom tags to remain unclosed.
  • Remove restriction of only WebKit browsers when using --touch-examples-ui option.
  • Show title text on loading screen (instead of hard-coded "Sencha Docs").
  • Fix @return info going missing when no return type specified.
  • Fix image paths in nested guides.
  • Escape HTML in bogus type definitions.
  • Improve parsing of string in default values and type definitions.
  • Improve wording of 404 page.
  • Improve checking for circular dependencies.

New in JsDuck 4.5.1 (Feb 26, 2013)

  • Render stars behind new classes in categories view.
  • Fix documentation after @throws getting duplicated.

New in JsDuck 4.5.0 (Feb 26, 2013)

  • Print warnings for unsupported @tags.
  • Allow use of @class before object literal to document all the literal members as members of the class.
  • Much improved handling of @override tag.
  • Auto-detection of event name when this.fireEvent("foo", ...) syntax used.
  • ext-namespaces now also effects detection of Ext.extend, Ext.override and Ext.emptyFn.
  • Allow wildcard * in --external option to ignore a whole namespace.
  • Ignore all builtin JS error classes in type definitions.
  • Avoid waiting for fonts.google.com to load before the rest of the docs app.
  • Improve loading speed of class docs.
  • Allow negative numbers in type definitions.
  • Fix dependency from therubyracer gem (the newest version fails to compile).

New in JsDuck 3.3.0 (Jan 18, 2012)

  • New warning for duplicate member names.
  • Info about overridden members in parent class.
  • Redirect alternate classnames to canonical ones.
  • Detect doc-comment before Ext.emptyFn as method.
  • Allow configs to begin with uppercase letter.
  • Preserve the order of members not belonging to classes.
  • Fix crash when string "function" after doc-comment.
  • Fix crash when documenting anonymous function.
  • Fix hiding of parent members by @private in subclass.