541 Commits

Author SHA1 Message Date
Jeff Williams
2005894798 replace jsdoc/util/stripbom with strip-bom package 2019-07-28 15:40:22 -07:00
Jeff Williams
a48880f411 use @jsdoc/core to load config 2019-07-28 15:28:08 -07:00
Jeff Williams
d4321a75b4 remove jsdoc/app and global.app 2019-07-28 14:41:14 -07:00
Jeff Williams
944c899053 remove jsdoc/util/doop 2019-07-28 14:32:09 -07:00
Jeff Williams
fe6267d181 move tutorial fixtures to the fixtures directory 2019-07-28 14:17:55 -07:00
Jeff Williams
1b74fb1b84 use more expressive test matchers from jasmine-expect 2019-07-28 14:15:57 -07:00
Jeff Williams
ebe1ba1d36 Remove deprecated jsdoc/util/error module. 2019-05-12 15:13:52 -07:00
Jeff Williams
617b3236bf Replace old, vendored Jasmine with current npm package.
JSDoc-specific test functions are now properties of a `jsdoc` global, not a `jasmine` global.

Also updates license files to reflect the fact that we no longer vendor anything.
2019-05-12 15:10:38 -07:00
Jeff Williams
25f506aa57 Replace underscore with lodash. 2019-05-12 11:31:38 -07:00
Jeff Williams
d3f2cea7d1 Ensure that ES 2015 classes appear in the generated docs when they're supposed to. (#1644)
Previously, when we combined doclets, we copied the `undocumented` property if it was set to `true`. That caused the combined doclet to have this property set to `true`, although it shouldn't have. As a result, the template discarded the doclet.

The solution is to simply ignore this property when combining doclets.

Also includes related cleanup for clarity.
2019-05-12 09:42:21 -07:00
Jeff Williams
aa0b6c1bfa switch to new-ish ECMAScript syntax
With help from Lebab, plus a lot of manual cleanup. (And more cleanup to come, I'm sure.)
2019-01-15 18:39:10 -08:00
Jeff Williams
27f9a33116 migrate from babylon to @babel/parser 2019-01-13 15:22:47 -08:00
Jeff Williams
2c6bcd4407 prevent crash when an anonymous class is passed as a parameter (#1416) 2017-07-29 16:50:01 -07:00
Jeff Williams
e8bca1f490 add templates.useShortNamesInLinks config option (#738)
When this option is set to `true`, the `{@link}`, `{@linkcode}`, and `{@linkplain}` tags will use the short name, not the longname, as the link text. For example, `{@link foo.bar.baz}` will result in the link text `baz`.

This option has no effect when link text is provided as part of the tag (for example, `{@link foo.bar.baz My link text here}`).

As part of this change, I also simplified many of the tests for the `resolveLinks` method.
2017-07-23 18:35:26 -07:00
Jeff Williams
2c47d4b306 allow users to specify a highlighter for Markdown code blocks (#1412) 2017-07-23 15:01:27 -07:00
Jeff Williams
a63337b5c8 don't pretty-print code blocks that begin with "```plain" (#1361) 2017-07-23 12:30:07 -07:00
Jeff Williams
1c99ec39eb make the exports tag work correctly when combined with the enum tag (#970) 2017-07-22 20:29:56 -07:00
Jeff Williams
8191227607 use the markdown-it Markdown parser by default (#1243)
The marked parser is deprecated in JSDoc 3.6.0 and will be removed in JSDoc 3.7.0.
2017-07-22 19:00:24 -07:00
Jeff Williams
d29a4dd3c1 update JSON schema to draft-06, and use ajv to validate doclets 2017-07-22 14:12:58 -07:00
Jeff Williams
90827aab0f move externs test spec to the correct directory 2017-07-22 11:45:17 -07:00
Jeff Williams
7738610a9f support the nosideeffects tag (Closure Compiler only) (#605) 2017-07-21 18:42:53 -07:00
Jeff Williams
2f99af8fbb support the modifies tag (JSDoc and Closure Compiler) (#605) 2017-07-21 17:29:47 -07:00
Jeff Williams
56b52779c4 support the typedef tag correctly for Closure Compiler (#605) 2017-07-21 15:23:04 -07:00
Jeff Williams
e33f48c471 support the this tag correctly for Closure Compiler (#605) 2017-07-21 14:04:53 -07:00
Jeff Williams
2164532d30 support the unrestricted tag (Closure Compiler only) (#605) 2017-07-16 20:35:47 -07:00
Jeff Williams
25a271e727 support the template tag (Closure Compiler only) (#567, #605) 2017-07-16 20:05:40 -07:00
Jeff Williams
7afa146990 support the record tag (Closure Compiler only) (#605) 2017-07-16 20:00:48 -07:00
Jeff Williams
b13bb67fbb support the public tag for Closure Compiler (#605) 2017-07-16 19:51:50 -07:00
Jeff Williams
a9a68f3442 support the suppress tag (Closure Compiler only) (#605) 2017-07-16 19:14:27 -07:00
Jeff Williams
0d2a312c2e support the struct tag (Closure Compiler only) (#605) 2017-07-16 19:11:45 -07:00
Jeff Williams
60143a457f support preserve tag (Closure Compiler only) (#605) 2017-07-16 18:48:40 -07:00
Jeff Williams
e810cb7d0f support the polymerBehavior tag (Closure Compiler only) (#605) 2017-07-16 18:41:44 -07:00
Jeff Williams
5432a2a6b0 support the polymer tag (Closure Compiler only) (#605) 2017-07-16 18:38:21 -07:00
Jeff Williams
9c443c7802 support the nocompile tag (Closure Compiler only) (#605) 2017-07-16 18:34:15 -07:00
Jeff Williams
21583fe8a1 support the nocollapse tag (Closure Compiler only) (#605) 2017-07-16 18:31:08 -07:00
Jeff Williams
157255f7f7 support the noalias tag (Closure Compiler only) (#605) 2017-07-16 18:26:33 -07:00
Jeff Williams
e45a719cd0 support the implicitCast tag (Closure Compiler only) (#605) 2017-07-16 18:21:19 -07:00
Jeff Williams
adf742615e support the fileoverview tag in the Closure Compiler dictionary (#605) 2017-07-16 17:03:01 -07:00
Jeff Williams
afe7c3564a support the externs tag (Closure Compiler only) (#605) 2017-07-16 16:52:17 -07:00
Jeff Williams
d06ba2788a support the export tag (Closure Compiler only) (#605) 2017-07-16 16:47:58 -07:00
Jeff Williams
2e739594b8 support the dict tag (Closure Compiler only) (#605) 2017-07-16 16:32:04 -07:00
Jeff Williams
bca700216e support the define tag (Closure Compiler only) (#605) 2017-07-16 16:19:55 -07:00
Jeff Williams
857a346f4b add jasmine.replaceTagDictionary and jasmine.restoreTagDictionary test helpers 2017-07-16 15:19:17 -07:00
Jeff Williams
f4bf81606f fix problems with methods and properties in classes returned by arrow function expressions (#1409)
+ don't prepend `undefined` to method and property names
+ use the parent class's alias
2017-07-16 14:10:52 -07:00
Jeff Williams
cc66657512 don't ignore properties like examples on ES2015 class constructors (#1129) 2017-07-15 16:03:13 -07:00
Jeff Williams
b28379e398 make the @override tag work as expected (#1215)
The `@override` tag no longer causes all other doclet properties to be ignored. Instead, the doclet will keep its own properties and inherit any missing properties from the parent class or interface.
2017-07-15 15:33:18 -07:00
Jeff Williams
4aa3ee8f96 turn Doclet#merge into doclet.combine 2017-07-15 14:01:12 -07:00
Jeff Williams
d4c2c400c5 slight change to merge behavior 2017-07-15 09:46:52 -07:00
Jeff Williams
0551bd49ed add merge method to doclets (#1215) 2017-07-14 21:39:21 -07:00
Jeff Williams
5026e449e2 work around Babylon comment-attachment bug (#1396)
https://github.com/babel/babylon/issues/619
2017-07-13 19:19:28 -07:00