-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
3.6.0 breaks interface exports #1644
Comments
We are bumping into similar issues in the library: https://github.com/googleapis/nodejs-resource When generating jsdoc with
and
On |
Thanks for the pointer, @bcoe. I can reproduce the issue with that repo, and this is definitely a bug in JSDoc 3.6.x. I'm continuing to investigate. The temporary solution is to pin to JSDoc 3.5.5. |
@hegemonic thank you for digging into this 👍 |
… 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.
… 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.
Fixed on master and JSDoc 3.6.2, which I just released. Thanks for your patience! |
@hegemonic thank you 👍, I will start testing it out on some repos tomorrow. |
* releases/3.6: 3.6.2 Add 3.6.2 changelog. Ensure that ES 2015 classes appear in the generated docs when they're supposed to. (jsdoc#1644) # Conflicts: # package.json
Hey @hegemonic, I just tested this with both 3.6.2 and 3.6.3 on Node versions 10.17.0 and 12.13.1, and I'm still running into the original issue. 3.5.5 continues to work as expected, aside from #1643 (which I have a temporary workaround for, so not a blocker atm). |
Could this be reopened? |
- npm: Remove `package-lock.json` in favor of `yarn.lock` - npm: Move from deprecated `opn-cli` to `open-cli` - npm: Update devDeps (except jsdoc which seems to still have a problem with ESM exports: <jsdoc/jsdoc#1644>)
pbts with JSDoc 3.6.3 does not output the correct result for Enums as well. |
I can confirm that this is still an issue with jsdoc 3.6.6, protobufjs 6.11.2, and Node 14.17.0. Please reopen, @hegemonic. |
this can be reverted after jsdoc is upgraded, which is blocked on jsdoc/jsdoc#1644
this can be reverted after jsdoc is upgraded, which is blocked on jsdoc/jsdoc#1644
this can be reverted after jsdoc is upgraded, which is blocked on jsdoc/jsdoc#1644
3.6.0 seems to have regressed in handling
@interface
and/or@export
.Using protobufjs with jsdoc@3.5.5 works as expected. After updating to 3.6.0, the
pbts
command that takes a generated JS file as input and outputs a TypeScript type definition file fails to export required interfaces.I don't know exactly what protobufjs is doing under-the-hood, but it looks like this is the relevant function that uses jsdoc.
Input code
Protobuf code like this:
Would output code that includes this:
Expected behavior
The final output should include an interface
IBalls
(and a classBalls
that implementsIBalls
).Current behavior
No
IBalls
.Your environment
The text was updated successfully, but these errors were encountered: