jsdoc / jsdoc/jsdoc

ERROR: Unable to parse a tag's type expression for source file

Open
#1,961 5 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
15.5k
Forks
1.5k
Avg merge
10d 23h
Merged PRs (30d)
1

Description

When i want hed created docs from existen files i getting error

this

ERROR: Unable to parse a tag's type expression for source file /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/modules/index.mjs in line 101557 with tag title "typedef" and text "{import('./').MfsContext} MfsContext": Invalid type expression "import('./').MfsContext": Expected "!", "=", "?", "[]", "|", or end of input but "(" found.
ERROR: Unable to parse a tag's type expression for source file /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/modules/index.mjs in line 101587 with tag title "type" and text "{import('ipfs-core-types/src/files').API["mkdir"]}": Invalid type expression "import('ipfs-core-types/src/files').API["mkdir"]": Expected "!", "=", "?", "[]", "|", or end of input but "(" found.

and this

ERROR: Unable to parse /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/node_modules/@parcel/babel-ast-utils/src/babelErrorUtils.js: Unexpected token (2:12)
ERROR: Unable to parse /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/node_modules/@parcel/babel-ast-utils/src/index.js: Unexpected token (3:12)
/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/parser.js:392
            if (doclet.memberof) {
                       ^

TypeError: Cannot read properties of null (reading 'memberof')
    at Parser.astnodeToMemberof (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/parser.js:392:24)
    at addSymbolMemberof (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/handlers.js:268:31)
    at newSymbolDoclet (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/handlers.js:298:13)
    at Parser.<anonymous> (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/handlers.js:365:13)
    at Parser.emit (node:events:390:28)
    at Visitor.visitNode (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/visitor.js:846:20)
    at Visitor.visit (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/visitor.js:756:21)
    at Walker.recurse (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/walker.js:694:42)
    at Parser._walkAst (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/parser.js:305:22)
    at Parser._parseSourceCode (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/parser.js:296:22)
    at Parser.parse (/home/zb/Desktop/newkind-service/node_modules/jsdoc/lib/jsdoc/src/parser.js:202:22)
    at Object.module.exports.cli.parseFiles (/home/zb/Desktop/newkind-service/node_modules/jsdoc/cli.js:365:46)
    at module.exports.cli.main (/home/zb/Desktop/newkind-service/node_modules/jsdoc/cli.js:234:18)
    at Object.module.exports.cli.runCommand (/home/zb/Desktop/newkind-service/node_modules/jsdoc/cli.js:186:9)
    at /home/zb/Desktop/newkind-service/node_modules/jsdoc/jsdoc.js:93:9
    at Object.<anonymous> (/home/zb/Desktop/newkind-service/node_modules/jsdoc/jsdoc.js:94:3)


error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Process finished with exit code 1



Input code

// regex for testing for non-latin characters
var $37b7467ccb67e16e$var$_nonLatinRegex = /[^\\u0000-\\u00ff]/;
/**
 * Pretty prints an ASN.1 object to a string.
 *
 * @param obj the object to write out.
 * @param level the level in the tree.
 * @param indentation the indentation to use.
 *
 * @return the string.
 */ $37b7467ccb67e16e$var$asn1.prettyPrint = function(obj, level, indentation) {
    var rval = '';
    // set default level and indentation
    level = level || 0;
    indentation = indentation || 2;
    // start new line for deep levels
    if (level > 0) rval += '\n';
    // create indent
    var indent = '';
    for(var i = 0; i < level * indentation; ++i)indent += ' ';
    // print class:type
    rval += indent + 'Tag: ';
    switch(obj.tagClass){
        case $37b7467ccb67e16e$var$asn1.Class.UNIVERSAL:
            rval += 'Universal:';
            break;
        case $37b7467ccb67e16e$var$asn1.Class.APPLICATION:
            rval += 'Application:';
            break;
        case $37b7467ccb67e16e$var$asn1.Class.CONTEXT_SPECIFIC:
            rval += 'Context-Specific:';
            break;
        case $37b7467ccb67e16e$var$asn1.Class.PRIVATE:
            rval += 'Private:';
            break;
    }
    if (obj.tagClass === $37b7467ccb67e16e$var$asn1.Class.UNIVERSAL) {
        rval += obj.type;
        // known types
        switch(obj.type){
            case $37b7467ccb67e16e$var$asn1.Type.NONE:
                rval += ' (None)';
                break;
            case $37b7467ccb67e16e$var$asn1.Type.BOOLEAN:
                rval += ' (Boolean)';
                break;
            case $37b7467ccb67e16e$var$asn1.Type.INTEGER:
                rval += ' (Integer)';
                break;
            case $37b7467ccb67e16e$var$asn1.Type.BITSTRING:
                rval += ' (Bit string)';
                break;
            case $37b7467ccb67e16e$var$asn1.Type.OCTETSTRING:
                rval += ' (Octet string)';
                break;
            case $37b7467ccb67e16e$var$asn1.Type.NULL:
                rval += ' (Null)';
JSDoc configuration
{
  "plugins": [
    "plugins/markdown",
    "plugins/summarize"
  ],
  "recurseDepth": 10,
  "source": {
    "include": [
      "palette/src/github.com/zababurinsv/newkind-db/"
    ],
    "exclude": ["node_modules"],
    "includePattern": ".+\\.(js(doc|x)?|mjs)$",
    "excludePattern": "(^|\\/|\\\\)_"
  },
  "sourceType": "module",
  "tags": {
    "allowUnknownTags": true,
    "dictionaries": ["jsdoc","closure"]
  },
  "markdown": {
    "parser": "gfm",
    "hardwrap": true
  },
  "templates": {
    "search": true,
    "cleverLinks": false,
    "monospaceLinks": false,
    "default": {
      "outputSourceFiles": true,
      "includeDate": false
    },
    "scripts": [],
    "favicon": "",
    "css": []
  },
  "menu":{
    "Admin Documentation": {
      "href":"https://zababurinsv.github.io/admin/",
      "target":"_blank",
      "class":"menu-item",
      "id":"repository"
    }
  },
  "opts": {
    "template": "./jsdoc/docdash/",
    "encoding": "utf8",
    "destination": "./documents",
    "recurse": true
  },
  "docdash": {
    "static": true,         // Display the static members inside the navbar
    "sort": true,           // Sort the methods in the navbar
    "sectionOrder": [               // Order the main section in the navbar (default order shown here)
      "Classes",
      "Modules",
      "Externals",
      "Events",
      "Namespaces",
      "Mixins",
      "Tutorials",
      "Interfaces"
    ],
    "disqus": "",                   // Shortname for your disqus (subdomain during site creation)
    "openGraph": {                  // Open Graph options (mostly for Facebook and other sites to easily extract meta information)
      "title": "",                // Title of the website
      "type": "website",          // Type of the website
      "image": "",                // Main image/logo
      "site_name": "",            // Site name
      "url": ""                   // Main canonical URL for the main page of the site
    },
    "meta": {                       // Meta information options (mostly for search engines that have not indexed your site yet)
      "title": "",                // Also will be used as postfix to actualy page title, prefixed with object/document name
      "description": "",          // Description of overal contents of your website
      "keyword": ""               // Keywords for search engines
    },
    "search": true,         // Display seach box above navigation which allows to search/filter navigation items
    "collapse": true,       // Collapse navigation by default except current object's navigation of the current page
    "wrap": true,           // Wrap long navigation names instead of trimming them
    "typedefs":true,       // Include typedefs in menu
    "navLevel": 3,          // depth level to show in navbar, starting at 0 (false or -1 to disable)
    "private": false,        // set to false to not show @private in navbar
    "removeQuotes":"trim",// Remove single and double quotes, trim removes only surrounding ones
    "scripts": [],                  // Array of external (or relative local copied using templates.default.staticFiles.include) js or css files to inject into HTML,
    "menu": {                       // Adding additional menu items after Home
      "Admin": {        // Menu item name
        "href":"https://zababurinsv.github.io/admin/", //the rest of HTML properties to add to manu item
        "target":"_blank",
        "class":"menu-item",
        "id":"website_link"
      }
    },
    "scopeInOutputPath": true, // Add scope from package file (if present) to the output path, true by default.
    "nameInOutputPath": true, // Add name from package file to the output path, true by default.
    "versionInOutputPath": true // Add package version to the output path, true by default.
  }
}
JSDoc debug output
Parsing /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/node_modules/@mapbox/node-pre-gyp/node_modules/semver/preload.js ...
Parsing /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/node_modules/@motrix/nat-api/index.js ...

<--- Last few GCs --->

[21946:0x5b740f0]   187339 ms: Mark-sweep (reduce) 4026.0 (4143.2) -> 4025.0 (4143.7) MB, 10546.4 / 0.0 ms  (average mu = 0.083, current mu = 0.012) allocation failure scavenge might not succeed
[21946:0x5b740f0]   197150 ms: Mark-sweep (reduce) 4026.2 (4143.7) -> 4025.4 (4144.2) MB, 9800.6 / 0.0 ms  (average mu = 0.043, current mu = 0.001) allocation failure scavenge might not succeed


<--- JS stacktrace --->
ERROR: Unable to parse a tag's type expression for source file /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/modules/index.mjs in line 158849 with tag title "typedef" and text "{import('../').PeerData} PeerData": Invalid type expression "import('../').PeerData": Expected "!", "=", "?", "[]", "|", or end of input but "(" found.
ERROR: Unable to parse a tag's type expression for source file /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/modules/index.mjs in line 158863 with tag title "type" and text "{{ peerId: PeerId, distance: Uint8Array }[]}": Invalid type expression "{ peerId: PeerId, distance: Uint8Array }[]": Expected "!", "=", "?", "|", or end of input but "[" found.
ERROR: Unable to parse a tag's type expression for source file /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/modules/index.mjs in line 158863 with tag title "type" and text "{{ peerId: PeerId, distance: Uint8Array }[]}": Invalid type expression "{ peerId: PeerId, distance: Uint8Array }[]": Expected "!", "=", "?", "|", or end of input but "[" found.
ERROR: Unable to parse a tag's type expression for source file /home/zb/Desktop/newkind-service/palette/src/github.com/zababurinsv/newkind-db/frontend/src/components/newkind-db/modules/index.mjs in line 158926 with tag title "typedef" and text "{import('peer-id')} PeerId": Invalid type expression "import('peer-id')": Expected "!", "=", "?", "[]", "|", or end of input but "(" found.


FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
 1: 0xb2c2c0 node::Abort() [/usr/bin/node]
 2: 0xa4023c node::FatalError(char const*, char const*) [/usr/bin/node]
 3: 0xd1cafe v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/usr/bin/node]
 4: 0xd1ce77 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/usr/bin/node]
 5: 0xed6945  [/usr/bin/node]
 6: 0xee7d1d v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/usr/bin/node]
 7: 0xeeaa4e v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/usr/bin/node]
 8: 0xeac032 v8::internal::Factory::AllocateRaw(int, v8::internal::AllocationType, v8::internal::AllocationAlignment) [/usr/bin/node]
 9: 0xea454c v8::internal::FactoryBase<v8::internal::Factory>::AllocateRawArray(int, v8::internal::AllocationType) [/usr/bin/node]
10: 0xea45f5 v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithFiller(v8::internal::Handle<v8::internal::Map>, int, v8::internal::Handle<v8::internal::Oddball>, v8::internal::AllocationType) [/usr/bin/node]
11: 0x1114f53 v8::internal::Handle<v8::internal::NameDictionary> v8::internal::HashTable<v8::internal::NameDictionary, v8::internal::NameDictionaryShape>::NewInternal<v8::internal::Isolate>(v8::internal::Isolate*, int, v8::internal::AllocationType) [/usr/bin/node]
12: 0x1114ff9 v8::internal::Handle<v8::internal::NameDictionary> v8::internal::BaseNameDictionary<v8::internal::NameDictionary, v8::internal::NameDictionaryShape>::New<v8::internal::Isolate>(v8::internal::Isolate*, int, v8::internal::AllocationType, v8::internal::MinimumCapacity) [/usr/bin/node]
13: 0x10c00db v8::internal::JSObject::MigrateToMap(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSObject>, v8::internal::Handle<v8::internal::Map>, int) [/usr/bin/node]
14: 0x10e407a v8::internal::LookupIterator::TransitionToAccessorProperty(v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes) [/usr/bin/node]
15: 0x10bab5d v8::internal::JSObject::DefineAccessor(v8::internal::LookupIterator*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyAttributes) [/usr/bin/node]
16: 0x10bb3b4 v8::internal::JSReceiver::ValidateAndApplyPropertyDescriptor(v8::internal::Isolate*, v8::internal::LookupIterator*, bool, v8::internal::PropertyDescriptor*, v8::internal::PropertyDescriptor*, v8::Maybe<v8::internal::ShouldThrow>, v8::internal::Handle<v8::internal::Name>) [/usr/bin/node]
17: 0x10bb88e v8::internal::JSReceiver::OrdinaryDefineOwnProperty(v8::internal::LookupIterator*, v8::internal::PropertyDescriptor*, v8::Maybe<v8::internal::ShouldThrow>) [/usr/bin/node]
18: 0x10bbbd8 v8::internal::JSReceiver::OrdinaryDefineOwnProperty(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSObject>, v8::internal::PropertyKey const&, v8::internal::PropertyDescriptor*, v8::Maybe<v8::internal::ShouldThrow>) [/usr/bin/node]
19: 0x10bbc72 v8::internal::JSReceiver::DefineOwnProperty(v8::internal::Isolate*, v8::internal::Handle<v8::internal::JSReceiver>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyDescriptor*, v8::Maybe<v8::internal::ShouldThrow>) [/usr/bin/node]
20: 0x10bc3bc v8::internal::JSReceiver::DefineProperties(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>) [/usr/bin/node]
21: 0xd9f2f6 v8::internal::Builtin_ObjectDefineProperties(int, unsigned long*, v8::internal::Isolate*) [/usr/bin/node]
22: 0x1630179  [/usr/bin/node]
^C
Process finished with exit code 130 (interrupted by signal 2: SIGINT)


Expected behavior

How do you make a document that reads correctly?

Current behavior

Documents not created

Your environment
Software Version
JSDoc DEBUG: JSDoc 3.6.7 (Sat, 15 May 2021 01:24:54 GMT)
Node.js Node.js v17.2.0
npm 8.1.4
Operating system Ubuntu 20.04

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with the supplied JSDoc configuration, input examples, and debug output. Read jsdoc/src/parser.js around line 392 and the reported type-expression parsing path; done means the documented inputs no longer produce the reported parse or null-member errors without introducing new failures.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
documentation
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.