463 Commits

Author SHA1 Message Date
Jeff Williams
3fc0cd0717 handle exported ES2015 classes correctly (#1137) 2016-09-12 16:39:35 -07:00
Björn Harrtell
34c6eb9ffd Update gulp-eslint and minor style fixes to adapt to new eslint version 2016-03-31 21:17:41 +02:00
Kevin Locke
61a3599154 Support an Array of tags titles in allowUnknownTags
This commit adds support for specifying an Array of tags which are
unknown to JSDoc, but allowed without error.  It provides a more
granular way to disable such errors while retaining the benefits of
catching errant tags (e.g. typos).

The intended use case is catching errant tags when using additional
tools which support tags not recognized by JSDoc (e.g. Closure Compiler
and the tags discussed in #605).

Signed-off-by: Kevin Locke <kevin@kevinlocke.name>
2016-02-24 11:38:56 -08:00
Jeff Williams
3dbb94f157 autodetect défault and repeatable parameters in ES2015 methods (#1144) 2016-01-14 17:23:37 -08:00
vvo
b1cd9a2598 fix(object spread): support experimental object spread
As per https://github.com/sebmarkbage/ecmascript-rest-spread

This was badly failing previously.

Any insights/comments welcomed!
2016-01-05 18:10:46 +01:00
Jeff Williams
41d33e8399 fix multiple naming issues with members of a class that is the default export (#1120) 2015-12-07 15:56:07 -08:00
Jeff Williams
1bdcc52156 correctly handle classes that are the default export (#1113) 2015-12-03 06:03:20 -08:00
Jeff Williams
224e796428 prevent crash when exporting an anonymous class (#1113) 2015-11-29 14:53:55 -08:00
Jeff Williams
ba673ff4c1 cleanup 2015-11-25 16:03:45 -08:00
Tim Schaub
621f012211 Remove Rhino support 2015-10-30 13:11:43 -06:00
Jeff Williams
5a58bdf5a5 support arrow function expressions (#555) 2015-08-20 11:01:08 -07:00
Jeff Williams
4822bca6c1 whitespace 2015-08-19 09:50:46 -07:00
Jeff Williams
087f07dcd5 use the correct longname for properties documented in instance methods (#1011)
Fixes a regression caused by 65f307322ac64d965694dca8f82bf98f08a1e2e4.
2015-08-18 15:34:24 -07:00
Jeff Williams
8e47e5912a add JSX support (#1001) 2015-08-13 16:48:17 -07:00
Jeff Williams
f249630ff0 prevent crash when a FunctionDeclaration node lacks an id property (#1030) 2015-07-05 17:09:45 -07:00
Jeff Williams
7a0ec07521 attach comments to default/rest parameters (#1025) 2015-06-21 10:56:34 -07:00
Jeff Williams
01df038474 unconditionally add the necessary properties to AST nodes (#976)
Fixes a bizarre bug that caused us to assign the wrong name to object properties, apparently because the node ID was not defined at the appropriate time.
2015-06-08 15:24:55 -07:00
Jeff Williams
faba1c8b10 use the correct scope when an ES 2015 class is a memberof something else, and the class has instance members (#994) 2015-05-05 16:35:33 -07:00
Jeff Williams
cfb04e390d fix crash when assigning a class expression to an object property (#988) 2015-04-21 17:34:03 -07:00
Jeff Williams
b6e5051d2f support ES 2015 modules (#555) 2015-04-18 15:47:36 -07:00
Jeff Williams
3189d0cf06 add tests for ES 2015 constructors (#555) 2015-04-10 16:14:19 -07:00
Jeff Williams
fe9407cd71 support class expressions (#555) 2015-04-10 16:02:27 -07:00
Jeff Williams
d49d99cf2c fix linter error 2015-03-30 09:58:35 -07:00
Jeff Williams
80c2a9a38c fix crash when multiple params have inline JSDoc comments with no JSDoc tags (#972) 2015-03-30 09:56:32 -07:00
Dasa Paddock
36717281ac Add support for a markdown.hardwrap config property 2015-03-25 16:54:34 -07:00
Jeff Williams
da14fedb69 replace all occurrences of an inline tag, not just some (#936, #957) 2015-03-18 17:52:31 -07:00
Jeff Williams
4b8504cac9 support ES 2015 classes (#555, #769)
Incorporates work by @eventualbuddha.
2015-03-18 17:14:04 -07:00
Jeff Williams
0b41c89f83 don't try to parse HTML tags as type expressions (hegemonic/jsdoc-baseline#149) 2015-03-15 17:12:14 -07:00
Jeff Williams
67244c06eb quote unsafe property names (#950)
Fixes a regression introduced by the parser overhaul in 44d9ec6831e498bd082de98a5bc60abfdba2bb7f.
2015-03-13 16:56:32 -07:00
Jeff Williams
7ca432d587 allow symbol names that contain whitespace to be borrowed (#818) 2015-03-10 17:37:48 -07:00
Jeff Williams
be77aa4344 handle enums with numeric keys (#946) 2015-03-09 17:28:12 -07:00
Larry Davis
5ed70331fc handle numeric object keys correctly (#945) 2015-03-09 16:18:44 -07:00
Jeff Williams
3f1ecac83a never make AST nodes enumerable 2015-03-06 08:35:09 -08:00
Jeff Williams
4713925d78 correctly infer when the class tag contains a class description (#935)
Fixes a regression caused by f1354563965792b8dd183f5a5331f8fcc67ea319.
2015-03-05 15:08:22 -08:00
Jeff Williams
878115e1c1 autodetect string, boolean, and numeric default values of parameters (#555)
We ignore other types based on these assumptions:

1) It doesn't make sense to show variable identifiers, which may refer to (for example) module-private values that should not be documented.
2) If we tried to capture objects and arrays, we would have to iterate over them to see if they contain any variable identifiers, which would be a pain (and potentially confusing: "Why do some objects appear in the docs but not others?")
3) Most developers will not define complex default values in a function definition.
4) In many cases, object and array default values will be `{}` and `[]`, respectively, and usually those don't merit documentation.
2015-03-03 17:22:30 -08:00
Jeff Williams
1c754e98f2 fix build breakage on Rhino parser 2015-02-27 16:08:55 -08:00
Jeff Williams
96c8f6994d handle ES 2015 rest parameters (#555)
As part of this commit, we automatically flag rest parameters as repeatable, even if the JSDoc comment doesn't identify the parameter as repeatable. As a result, it's difficult to document a rest parameter as though it were a normal parameter (should you want to do that for some reason). I may revert this piece if it generates complaints.
2015-02-27 14:39:20 -08:00
Jeff Williams
a243719fb2 cleanup 2015-02-26 16:05:22 -08:00
Jeff Williams
cc4ffc762e update Espree and LICENSE file 2015-02-26 14:59:05 -08:00
Jeff Williams
65f307322a resolve this correctly in chained class declarations within modules (#894) 2015-02-23 16:58:33 -08:00
Jeff Williams
fe04fa18f9 change ID for pure JS parser to 'js'; remove half-baked ability to use arbitrary parsers; test coverage 2015-02-23 09:14:42 -08:00
Jeff Williams
8ea7078d39 modify dumper.dump() to support multiple arguments; only define the dump() global in debug mode (#812) 2015-02-18 17:24:02 -08:00
Jeff Williams
f9073e6361 turn app global into a module, and use the module instead of the global (#812)
The `app` global remains available, since templates and plugins may rely upon it, but it's deprecated as of JSDoc 3.4.0.
2015-02-18 09:27:40 -08:00
Jeff Williams
ae94af0cd8 turn env global into a module, and use the module instead of the global (#812)
The `env` global remains available, since templates and plugins may rely upon it, but it's deprecated as of JSDoc 3.4.0.
2015-02-17 19:07:10 -08:00
Jeff Williams
ea773af2ed allow Visitor instances to be created before Parser instances (#923) 2015-02-17 16:00:26 -08:00
Jeff Williams
ea1932e4fc prevent crash on non-string default values (#914) 2015-02-08 12:54:49 -08:00
Jeff Williams
f92245794b correctly handle classes that implement interfaces that extend other interfaces (#909)
The fix for this issue also introduces a regression; see jsdoc3/jsdoc#911.
2015-02-06 08:49:04 -08:00
Jeff Williams
8d896db809 process implements tags before augments tags (#906) 2015-02-05 08:25:24 -08:00
Jeff Williams
028c65c037 in param/property names, cast default values that appear to be boolean/numeric (#900) 2015-02-02 16:24:17 -08:00
Jeff Williams
fdd7b31f94 don't convert boolean/number default values to strings (#900) 2015-02-01 13:35:37 -08:00