-
Notifications
You must be signed in to change notification settings - Fork 49
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
Maximum call stack size exceeded #89
Comments
After some more debugging I managed to get a stack trace. Looks like it might actually be a
|
I've tracked this down as far as the
The problem is that the call to |
I'm not yet sure what is causing the stack issue (i haven't traced it) but as is stressed in the wiki, an ESM module must include a This should work. /**
* @module something
*/
/**
* A description.
*/
export class Foo {
constructor() {}
} |
i get the "maximum call stack size exceeded" error when i do this
if change the export syntax, no more error
using |
I hastily refactored the function yesterday, avoiding the recursion, which fixes the issue here: /**
return a flat list containing all decendants
@param [sortBy] {string} - "kind"
@param [min] {number} - only returns if there are `min` children
@this {identifier}
@returns {identifier[]}
@static
*/
function descendants (options) {
var min = typeof options.hash.min !== 'undefined' ? options.hash.min : 2
delete options.hash.min
options.hash.memberof = this.id
var output = []
var newList = [this];
while(newList.length) {
const oldList = newList;
newList = [];
for(let el of oldList) {
for(let c of _children.call(el, options)) {
if(c.id === this.id) continue;
output.push(c);
newList.push(c)
}
}
}
if (output.length >= (min || 0)) return output
} Only to hit the same issue at another point in code, though -- probably In case it helps: when removing |
Reproduced - thanks for the reproduction case @jasonk.. It's due to this doclet's
It's at least 10 years since I wrote this app but from memory, the raw jsdoc output is flat, just an array of doclet metadata objects which have no structure.. this was not useful for feeding into a template engine like Handlebars where the output documentation was required to have structure (e.g. module -> exported class -> public/private properties/methods etc).. So the jsdoc-parse module was created to transform jsdoc output into something with structure, where the tree structure is represented using generated, unique doclet So, in this case the code encounters doclet You get the idea - recursive.. Anyway, I'll implement a fix then post again later. |
…ted. #89 Fixes a 'maximum call stack size exceeded' error.
…ted. #89 Fixes a 'maximum call stack size exceeded' error.
A fix for this is implmemented and will be in the next version.. will post again once that goes live.. In the meantime, you can test the prerelease:
|
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [googleapis](https://redirect.github.com/googleapis/google-api-nodejs-client) | [`142.0.0` -> `144.0.0`](https://renovatebot.com/diffs/npm/googleapis/142.0.0/144.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/googleapis/144.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/googleapis/144.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/googleapis/142.0.0/144.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/googleapis/142.0.0/144.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [jsdoc-to-markdown](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown) | [`8.0.3` -> `9.0.0`](https://renovatebot.com/diffs/npm/jsdoc-to-markdown/8.0.3/9.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jsdoc-to-markdown/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jsdoc-to-markdown/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jsdoc-to-markdown/8.0.3/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jsdoc-to-markdown/8.0.3/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>googleapis/google-api-nodejs-client (googleapis)</summary> ### [`v144.0.0`](https://redirect.github.com/googleapis/google-api-nodejs-client/blob/HEAD/CHANGELOG.md#14400-2024-08-30) [Compare Source](https://redirect.github.com/googleapis/google-api-nodejs-client/compare/googleapis-v143.0.0...googleapis-v144.0.0) ##### ⚠ BREAKING CHANGES - **migrationcenter:** This release has breaking changes. - **discoveryengine:** This release has breaking changes. - **content:** This release has breaking changes. - **compute:** This release has breaking changes. - **aiplatform:** This release has breaking changes. ##### Features - **aiplatform:** update the API ([5608606](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/560860666d0ddffa1424ce9c404109ce9f3ac6f7)) - **alloydb:** update the API ([ada8fc6](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/ada8fc685e70ac650421bc6eccf9d5e12e47720f)) - **artifactregistry:** update the API ([698b77f](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/698b77f53f1683f3c5c6a67c874bc66a7b1c18f6)) - **compute:** update the API ([42c636d](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/42c636d95a50083214fa77604de496f03b96d784)) - **content:** update the API ([65db039](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/65db03915d0b74ee864ec54cb23a3eb549df6ebf)) - **dataproc:** update the API ([0ce260e](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/0ce260e745c14e69a876a8ae68638229340465ad)) - **discoveryengine:** update the API ([d7d6c3f](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/d7d6c3f1726c4647f42fe1cc02e189bb1ddbc7ab)) - **healthcare:** update the API ([4767f7a](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/4767f7ac66946a69e766b3560d36142f52681be9)) - **migrationcenter:** update the API ([d42c0fd](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/d42c0fd2364d050bf206f650ffd7a7bc865b7aec)) - regenerate index files ([2f2ab88](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/2f2ab8899c2296147016111461b9ee8a80d8c5ec)) - **securitycenter:** update the API ([b82bcee](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/b82bceec5286bf7e018e33c6674ed17b7f644698)) - **servicenetworking:** update the API ([770e82d](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/770e82d4274e4121b68730ee809c841a7cf103d5)) ##### Bug Fixes - **analyticsadmin:** update the API ([9b434bb](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/9b434bb40d59f70cdf0873986109d68fd5f0c4ee)) - **analyticsdata:** update the API ([725603f](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/725603f462bdee7a46e53c3fca6a83590d326a7c)) - **assuredworkloads:** update the API ([d19c969](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/d19c9692a940fac059512bf2059e9f0e954f49f7)) - **cloudasset:** update the API ([09063b6](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/09063b6fa3f09756153326cef180c5750409d655)) - **cloudfunctions:** update the API ([158373f](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/158373f1d84156c77b347f5925fa1bcde28acc8a)) - **places:** update the API ([f9b8acb](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/f9b8acbc01ca8d32a86827fb7813f7b0a10c06a6)) - **retail:** update the API ([f2c43de](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/f2c43de9cf0fb7f398ae00147c7578bde1bdca5a)) - **sheets:** update the API ([2c4f5c4](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/2c4f5c4289630060b4ab221715790867492d222c)) - **workspaceevents:** update the API ([dbdb567](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/dbdb5670b40f930facb092aa26e0540bf41e9d77)) ### [`v143.0.0`](https://redirect.github.com/googleapis/google-api-nodejs-client/blob/HEAD/CHANGELOG.md#14300-2024-08-27) [Compare Source](https://redirect.github.com/googleapis/google-api-nodejs-client/compare/googleapis-v142.0.0...googleapis-v143.0.0) ##### ⚠ BREAKING CHANGES - **vmmigration:** This release has breaking changes. - **dialogflow:** This release has breaking changes. - **dfareporting:** This release has breaking changes. - **compute:** This release has breaking changes. - **backupdr:** This release has breaking changes. - **alloydb:** This release has breaking changes. ##### Features - **accessapproval:** update the API ([cf90cc5](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/cf90cc55062dc3ba4708ccbcaff90f4ebbc1853b)) - **alloydb:** update the API ([a65f1c6](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/a65f1c6b3afc77831875f13ff365f81446ce20b1)) - **androidmanagement:** update the API ([5366254](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/5366254d09e981b9e0dd97a7d66bec74dc362099)) - **androidpublisher:** update the API ([39227ab](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/39227abcc4e15f60b66eba06e8f12e4f988ad008)) - **assuredworkloads:** update the API ([4a6bb6a](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/4a6bb6afb5f48331b77b393f83afcc89aeeb3a43)) - **backupdr:** update the API ([42f5614](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/42f561492446c7acd519b2fae69d8d26826fa86b)) - **batch:** update the API ([3d92a17](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/3d92a17f62147ec8b2835235b662f1cad0b22e9c)) - **chat:** update the API ([24087bb](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/24087bba4d4c8841e04f97fd87d075bfcbfd91c7)) - **cloudasset:** update the API ([2f72369](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/2f7236928e32e49a3144b2fd4937931ac770f9ff)) - **cloudkms:** update the API ([d790478](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/d79047865541d80777c203276cf7cd2c1263da3b)) - **compute:** update the API ([07afb29](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/07afb29aacc1065a71c07c2f3fac9add8aa2b824)) - **connectors:** update the API ([e313580](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/e313580d2d6bdcb4a90a00376b12b6dba101300b)) - **containeranalysis:** update the API ([f67b2f1](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/f67b2f199f41f639f824f6872a5dc1f36b0e9bc4)) - **container:** update the API ([c798230](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/c798230310d4fbada896c2a5c8dc5a322aaefd8e)) - **customsearch:** update the API ([b0db98e](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/b0db98e665385c8ac8a52a070ff20a9943c104ed)) - **dataflow:** update the API ([1f67690](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/1f6769038476c3668f525cac94b4fb8ef8c7fbb6)) - **dataplex:** update the API ([ed2ce18](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/ed2ce18e28fd05eff735da24b0af68437ccae0a8)) - **dfareporting:** update the API ([f690620](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/f690620a4dc6c0f4b2390cf7bd4e7520fefc1606)) - **dialogflow:** update the API ([7e85135](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/7e8513507641937ced2254fd140f98488226de17)) - **discoveryengine:** update the API ([a71fc00](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/a71fc0044dc152600f98fab793bd4da9f38afae2)) - **displayvideo:** update the API ([64a72df](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/64a72df736168da551b9e1ada86b3a2595291ffd)) - **firebasedynamiclinks:** update the API ([8f190a1](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/8f190a1b12e4d2d1ff7ef4357f023bf442c1653f)) - **firebaseml:** update the API ([b6ef740](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/b6ef740ae5920f2d8fcb1260c144063c6c5bd250)) - **gkeonprem:** update the API ([c344788](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/c3447883c154ee15b5412989824f7a7c677f856c)) - **healthcare:** update the API ([f267f00](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/f267f00de372bb5ea2a2a8e53a80f71fa4939c4a)) - **looker:** update the API ([96cf760](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/96cf76098cf60a929957856d8e4acc4e8735e697)) - **merchantapi:** update the API ([f9aa1e5](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/f9aa1e52ab76989b668106f466e634994a78386f)) - **migrationcenter:** update the API ([1c2cc5f](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/1c2cc5f4e24ec807ec18b0e5341bf4528418e903)) - **networkmanagement:** update the API ([3c4d5be](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/3c4d5bedeebefae2c2a4c553c15fd8e97314d8f1)) - **networkservices:** update the API ([08c6b8f](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/08c6b8f4d2f9228cc03c9ea33b7b8b27d6b5f83e)) - **notebooks:** update the API ([80ae519](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/80ae51937f70b562e729cf7002fc383e7dd40a16)) - **privateca:** update the API ([1601667](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/1601667b9453f0794ff0b836a1da203c388ad455)) - **recaptchaenterprise:** update the API ([f26a373](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/f26a3735f9f180854b1ddf90e38cd52718b541b9)) - **redis:** update the API ([98cd830](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/98cd830d6378293f1f09d356c512fabbbe873230)) - regenerate index files ([ecd017c](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/ecd017c8f0dbfbbcf9c99884462fce5e36965466)) - **run:** update the API ([008997a](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/008997a09ab9b04010e1a6990e2027bca81ab5c7)) - **searchads360:** update the API ([44d0e72](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/44d0e72d60589a4640760f4025c479af340d57a2)) - **servicenetworking:** update the API ([e673e80](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/e673e80007c4ce25a1e7ebb808b5f677e7f32d59)) - **solar:** update the API ([36d8685](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/36d868518c22daaf01b43b26d4ec4dc6e5666e90)) - **sqladmin:** update the API ([fe2dacf](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/fe2dacfc9d9e22b886933adfa1bcd7eb532185f7)) - **storage:** update the API ([cae4993](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/cae49936785d6e4532bf5e78c4a4aec48ba1139c)) - **translate:** update the API ([841a829](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/841a82938451a65ba84422285229061afbd7a5aa)) - **vmmigration:** update the API ([614baa2](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/614baa252fdccd0fb3d7b444570733ae34374af4)) - **workflowexecutions:** update the API ([7e5f42a](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/7e5f42a7c7b74d580dabe8dcc94ebfe95fdb9ac5)) - **workflows:** update the API ([467b748](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/467b748af9574c1e16d23fb3fc4ad5f1df999e48)) - **workstations:** update the API ([4b60597](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/4b6059747dd903095babcd69a7f56f7d3d076ec2)) - **youtube:** update the API ([3d838e7](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/3d838e7dc4a5fa26933a0042355cad3f63d8b9a6)) ##### Bug Fixes - **analyticsadmin:** update the API ([90c32f5](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/90c32f578b1ca14cc97b972430dc3c46b90225d8)) - **androidenterprise:** update the API ([bc97b0e](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/bc97b0e91f823a24ed71802070f508d3063d03c8)) - **artifactregistry:** update the API ([3702a0d](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/3702a0d062838d9c11e5b54bbac1c3703e94fc9f)) - **bigquery:** update the API ([2aca035](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/2aca0358c5cd5f5d83b9aaf276ebe84dd5a93a44)) - **chromemanagement:** update the API ([71a65a8](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/71a65a88bb182e71a54c2c1134b35a73e979c3f8)) - **cloudcontrolspartner:** update the API ([5ed5388](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/5ed53884e9a1ea1cc400977996a3a3e51c35ab97)) - **cloudtasks:** update the API ([ab3a2bc](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/ab3a2bc0892c51516b473e7c20f7cd8978e9b883)) - **cloudtrace:** update the API ([e6d9ca4](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/e6d9ca416645e58b93b41b462f96875d8316687c)) - **datastream:** update the API ([73a27e5](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/73a27e556dd1cf98a57d879cb1416fcc9c5bd3d7)) - **dlp:** update the API ([52cf151](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/52cf151b18840bfdd8b04b08dd5f99b55a0eb2bd)) - **drive:** update the API ([d1f9ef2](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/d1f9ef2c0cee23a87f3033b9565fcfb70b3df974)) - **gkehub:** update the API ([75d45d7](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/75d45d767bc0c0ad8c03c4855cd43f896b67c91d)) - **retail:** update the API ([2179668](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/2179668e37934ee952551833881bfa1d7b2056bd)) - **secretmanager:** update the API ([144ba15](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/144ba152a0cccc9b1c20f522cbe0255ab6fd97d9)) - **spanner:** update the API ([ccac052](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/ccac0528486986aa6aabd08defd08b68b7c4060f)) - **texttospeech:** update the API ([c9e1e37](https://redirect.github.com/googleapis/google-api-nodejs-client/commit/c9e1e374cc6c6e578d81c57c41b6b95e6e21c4f1)) </details> <details> <summary>jsdoc2md/jsdoc-to-markdown (jsdoc-to-markdown)</summary> ### [`v9.0.0`](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/releases/tag/v9.0.0) [Compare Source](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/compare/v8.0.3...v9.0.0) The default output has not changed. The minimum required Node version is still v12.17. The goals for this release were bug fixing and simplification. Feel free to comment in the [release discussion](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/discussions/305) or post an issue. #### Breaking changes since v8.0.3 - Removed `.renderSync()`, `.getTemplateDataSync()` and `.getJsdocDataSync()`. The jsdoc2md API is now async-only. - Previously, passing either `option.files` or `option.source` was mandatory. Now, it is either `option.files`, `option.source` or `option.configure`. [https://github.com/jsdoc2md/jsdoc-api/issues/27](https://redirect.github.com/jsdoc2md/jsdoc-api/issues/27) #### Non-breaking changes - Fixed a bug where it was possible for a handlebars template to be passed into the jsdoc-api `template` option. [#​303](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/issues/303) - Support clever-links, monospace-links, `{@​linkcode}` and `{@​linkplain}`. [#​301](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/issues/301) - Fixed a 'maximum call stack size exceeded' error. The user now gets a warning if the malformed input which formerly caused the error is detected. [https://github.com/jsdoc2md/dmd/issues/89](https://redirect.github.com/jsdoc2md/dmd/issues/89) - Fixed an issue where the dmd internal partials failed to load if a user's directory name contained special glob characters. [https://github.com/jsdoc2md/dmd/issues/82](https://redirect.github.com/jsdoc2md/dmd/issues/82) - Added the `--EOL` option to control line-endings. Fixes [https://github.com/jsdoc2md/dmd/issues/92](https://redirect.github.com/jsdoc2md/dmd/issues/92). - Fixed an issue where setting `{ pedantic: false }` confused the underlying jsdoc. [https://github.com/jsdoc2md/jsdoc-api/issues/22](https://redirect.github.com/jsdoc2md/jsdoc-api/issues/22) - Can now pass an array of strings to `.source`. [https://github.com/jsdoc2md/jsdoc-api/issues/11](https://redirect.github.com/jsdoc2md/jsdoc-api/issues/11) - Added support for `@hideconstructor`. [https://github.com/jsdoc2md/dmd/issues/94](https://redirect.github.com/jsdoc2md/dmd/issues/94) - Print a warning when the most common mistake is detected (`@module` tag required) [https://github.com/jsdoc2md/dmd/issues/96](https://redirect.github.com/jsdoc2md/dmd/issues/96) - Fixed an issue where a `@example` was excluded in the output if the doclet did not contain a description. [https://github.com/jsdoc2md/jsdoc-parse/issues/33](https://redirect.github.com/jsdoc2md/jsdoc-parse/issues/33) #### Other improvements - Greatly optimised the dependency tree - upgraded all deps to their latest versions (removing deprecation warnings) and factored many old modules out of the project. #### Upgrade notes - Update your code replacing any use of `.renderSync()`, `.getTemplateDataSync()` and `.getJsdocDataSync()` with their async equivalents. - To see an example of API usage, see [here](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/wiki/How-to-create-one-output-file-per-class). </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 2pm on Monday" in timezone Europe/Zurich, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/adobe/spacecat-shared). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41OS4yIiwidXBkYXRlZEluVmVyIjoiMzguNTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [jsdoc-to-markdown](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown) | [`8.0.3` -> `9.0.0`](https://renovatebot.com/diffs/npm/jsdoc-to-markdown/8.0.3/9.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jsdoc-to-markdown/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jsdoc-to-markdown/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jsdoc-to-markdown/8.0.3/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jsdoc-to-markdown/8.0.3/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>jsdoc2md/jsdoc-to-markdown (jsdoc-to-markdown)</summary> ### [`v9.0.0`](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/releases/tag/v9.0.0) [Compare Source](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/compare/v8.0.3...v9.0.0) The default output has not changed. The minimum required Node version is still v12.17. The goals for this release were bug fixing and simplification. Feel free to comment in the [release discussion](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/discussions/305) or post an issue. #### Breaking changes since v8.0.3 - Removed `.renderSync()`, `.getTemplateDataSync()` and `.getJsdocDataSync()`. The jsdoc2md API is now async-only. - Previously, passing either `option.files` or `option.source` was mandatory. Now, it is either `option.files`, `option.source` or `option.configure`. [https://github.com/jsdoc2md/jsdoc-api/issues/27](https://redirect.github.com/jsdoc2md/jsdoc-api/issues/27) #### Non-breaking changes - Fixed a bug where it was possible for a handlebars template to be passed into the jsdoc-api `template` option. [#​303](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/issues/303) - Support clever-links, monospace-links, `{@​linkcode}` and `{@​linkplain}`. [#​301](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/issues/301) - Fixed a 'maximum call stack size exceeded' error. The user now gets a warning if the malformed input which formerly caused the error is detected. [https://github.com/jsdoc2md/dmd/issues/89](https://redirect.github.com/jsdoc2md/dmd/issues/89) - Fixed an issue where the dmd internal partials failed to load if a user's directory name contained special glob characters. [https://github.com/jsdoc2md/dmd/issues/82](https://redirect.github.com/jsdoc2md/dmd/issues/82) - Added the `--EOL` option to control line-endings. Fixes [https://github.com/jsdoc2md/dmd/issues/92](https://redirect.github.com/jsdoc2md/dmd/issues/92). - Fixed an issue where setting `{ pedantic: false }` confused the underlying jsdoc. [https://github.com/jsdoc2md/jsdoc-api/issues/22](https://redirect.github.com/jsdoc2md/jsdoc-api/issues/22) - Can now pass an array of strings to `.source`. [https://github.com/jsdoc2md/jsdoc-api/issues/11](https://redirect.github.com/jsdoc2md/jsdoc-api/issues/11) - Added support for `@hideconstructor`. [https://github.com/jsdoc2md/dmd/issues/94](https://redirect.github.com/jsdoc2md/dmd/issues/94) - Print a warning when the most common mistake is detected (`@module` tag required) [https://github.com/jsdoc2md/dmd/issues/96](https://redirect.github.com/jsdoc2md/dmd/issues/96) - Fixed an issue where a `@example` was excluded in the output if the doclet did not contain a description. [https://github.com/jsdoc2md/jsdoc-parse/issues/33](https://redirect.github.com/jsdoc2md/jsdoc-parse/issues/33) #### Other improvements - Greatly optimised the dependency tree - upgraded all deps to their latest versions (removing deprecation warnings) and factored many old modules out of the project. #### Upgrade notes - Update your code replacing any use of `.renderSync()`, `.getTemplateDataSync()` and `.getJsdocDataSync()` with their async equivalents. - To see an example of API usage, see [here](https://redirect.github.com/jsdoc2md/jsdoc-to-markdown/wiki/How-to-create-one-output-file-per-class). </details> --- ### Configuration 📅 **Schedule**: Branch creation - "after 2pm on Monday" in timezone Europe/Zurich, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/adobe/spacecat-audit-post-processor). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOC41OS4yIiwidXBkYXRlZEluVmVyIjoiMzguNTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
I had a whole bunch of source files that caused jsdoc2md to throw
RangeError: Maximum call stack size exceeded.
when I attempted to render them. I managed to reduce the issue down to this minimal reproduction (with v 5.0.3):Foo.js:
template.hbs:
Result:
It doesn't appear to matter whether or not there is content in the jsdoc block, it seems like the only things required to trigger it are a doc block before the class and the class must have a constructor.
More info, if it's helpful...
The text was updated successfully, but these errors were encountered: