Skip to content

Conversation

@flakey5
Copy link
Member

@flakey5 flakey5 commented May 31, 2025

Closes #214

TODO:

@codecov-commenter
Copy link

codecov-commenter commented May 31, 2025

❌ 14 Tests Failed:

Tests completed Failed Passed Skipped
347 14 333 0
View the top 3 failed test(s) by shortest run time
test::`something.regexExtractedReturnType()`
Stack Traces | 0.000296s run time
[Error [ERR_TEST_FAILURE]: Cannot read properties of undefined (reading 'type')] {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: TypeError: Cannot read properties of undefined (reading 'type')
      at handleStarter (file:.../src/utils/parseParameterList.mjs:42:23)
      at parseParameter (file:.../src/utils/parseParameterList.mjs:185:21)
      at Array.map (<anonymous>)
      at parseParameterList (file:.../src/utils/parseParameterList.mjs:211:6)
      at parseParameters (file:.../utils/sections/method.mjs:38:3)
      at parseSignatures (file:.../utils/sections/method.mjs:152:25)
      at TestContext.<anonymous> (file:.../sections/__tests__/method.test.mjs:192:5)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
}
test::[<boolean>](https://mdn-link) | [<string>](https://mdn-link)
Stack Traces | 0.000398s run time
Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[32m+�[39m     '@name': undefined,
�[31m-�[39m     '@name': 'value',
�[39m      '@type': [
�[39m        'boolean',
�[39m        'string'
�[39m      ],
�[32m+�[39m     description: undefined
�[39m    }
�[39m  ]

    at async Promise.all (index 0) {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[32m+�[39m     '@name': undefined,
  �[31m-�[39m     '@name': 'value',
  �[39m      '@type': [
  �[39m        'boolean',
  �[39m        'string'
  �[39m      ],
  �[32m+�[39m     description: undefined
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:688:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Promise.all (index 0)
      at async Suite.run (node:internal/test_runner/test:1518:7)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::`paramName` {boolean} description bla bla bla
Stack Traces | 0.000421s run time
[Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[32m+�[39m []
�[31m-�[39m [
�[31m-�[39m   {
�[31m-�[39m     '@name': 'paramName',
�[31m-�[39m     '@type': 'boolean',
�[31m-�[39m     description: 'description bla bla bla'
�[31m-�[39m   }
�[31m-�[39m ]
] {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[32m+�[39m []
  �[31m-�[39m [
  �[31m-�[39m   {
  �[31m-�[39m     '@name': 'paramName',
  �[31m-�[39m     '@type': 'boolean',
  �[31m-�[39m     description: 'description bla bla bla'
  �[31m-�[39m   }
  �[31m-�[39m ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:378:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::[<boolean>](https://mdn-link) description bla bla bla
Stack Traces | 0.000487s run time
[Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[32m+�[39m     '@name': undefined,
�[31m-�[39m     '@name': 'value',
�[39m      '@type': 'boolean',
�[39m      description: 'description bla bla bla'
�[39m    }
�[39m  ]
] {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[32m+�[39m     '@name': undefined,
  �[31m-�[39m     '@name': 'value',
  �[39m      '@type': 'boolean',
  �[39m      description: 'description bla bla bla'
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:744:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::`something.doThingWithUndefinedReturnType()`
Stack Traces | 0.000555s run time
[Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  {
�[39m    signatures: [
�[39m      {
�[39m        '@returns': {
�[32m+�[39m         '@type': 'any'
�[31m-�[39m         '@type': 'undefined'
�[39m        },
�[39m        parameters: undefined
�[39m      }
�[39m    ]
�[39m  }
] {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  {
  �[39m    signatures: [
  �[39m      {
  �[39m        '@returns': {
  �[32m+�[39m         '@type': 'any'
  �[31m-�[39m         '@type': 'undefined'
  �[39m        },
  �[39m        parameters: undefined
  �[39m      }
  �[39m    ]
  �[39m  }
  
      at TestContext.<anonymous> (file:.../sections/__tests__/method.test.mjs:262:12)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: { signatures: [Array] },
    expected: { signatures: [Array] },
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::Type: [<boolean>](https://mdn-link) description bla bla bla
Stack Traces | 0.000558s run time
[Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[32m+�[39m     '@name': undefined,
�[31m-�[39m     '@name': 'value',
�[39m      '@type': 'boolean',
�[39m      description: 'description bla bla bla'
�[39m    }
�[39m  ]
] {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[32m+�[39m     '@name': undefined,
  �[31m-�[39m     '@name': 'value',
  �[39m      '@type': 'boolean',
  �[39m      description: 'description bla bla bla'
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:567:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::`paramName` {boolean}
Stack Traces | 0.000587s run time
[Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[32m+�[39m []
�[31m-�[39m [
�[31m-�[39m   {
�[31m-�[39m     '@name': 'paramName',
�[31m-�[39m     '@type': 'boolean'
�[31m-�[39m   }
�[31m-�[39m ]
] {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[32m+�[39m []
  �[31m-�[39m [
  �[31m-�[39m   {
  �[31m-�[39m     '@name': 'paramName',
  �[31m-�[39m     '@type': 'boolean'
  �[31m-�[39m   }
  �[31m-�[39m ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:328:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::[<boolean>](https://mdn-link)
Stack Traces | 0.000615s run time
Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[32m+�[39m     '@name': undefined,
�[31m-�[39m     '@name': 'value',
�[39m      '@type': 'boolean',
�[32m+�[39m     description: undefined
�[39m    }
�[39m  ]

    at new Promise (<anonymous>)
    at Array.map (<anonymous>) {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[32m+�[39m     '@name': undefined,
  �[31m-�[39m     '@name': 'value',
  �[39m      '@type': 'boolean',
  �[32m+�[39m     description: undefined
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:622:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Test.start (node:internal/test_runner/test:1003:17)
      at node:internal/test_runner/test:1516:71
      at node:internal/per_context/primordials:466:82
      at new Promise (<anonymous>)
      at new SafePromise (node:internal/per_context/primordials:435:3)
      at node:internal/per_context/primordials:466:9
      at Array.map (<anonymous>) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::Type: [<boolean>](https://mdn-link) | [<string>](https://mdn-link)
Stack Traces | 0.000619s run time
Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[32m+�[39m     '@name': undefined,
�[31m-�[39m     '@name': 'value',
�[39m      '@type': [
�[39m        'boolean',
�[39m        'string'
�[39m      ],
�[32m+�[39m     description: undefined
�[39m    }
�[39m  ]

    at async Promise.all (index 0) {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[32m+�[39m     '@name': undefined,
  �[31m-�[39m     '@name': 'value',
  �[39m      '@type': [
  �[39m        'boolean',
  �[39m        'string'
  �[39m      ],
  �[32m+�[39m     description: undefined
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:507:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Promise.all (index 0)
      at async Suite.run (node:internal/test_runner/test:1518:7)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::Type: [<boolean>](https://mdn-link)
Stack Traces | 0.000952s run time
Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[32m+�[39m     '@name': undefined,
�[31m-�[39m     '@name': 'value',
�[39m      '@type': 'boolean',
�[32m+�[39m     description: undefined
�[39m    }
�[39m  ]

    at new Promise (<anonymous>)
    at Array.map (<anonymous>) {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[32m+�[39m     '@name': undefined,
  �[31m-�[39m     '@name': 'value',
  �[39m      '@type': 'boolean',
  �[32m+�[39m     description: undefined
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:437:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Test.start (node:internal/test_runner/test:1003:17)
      at node:internal/test_runner/test:1516:71
      at node:internal/per_context/primordials:466:82
      at new Promise (<anonymous>)
      at new SafePromise (node:internal/per_context/primordials:435:3)
      at node:internal/per_context/primordials:466:9
      at Array.map (<anonymous>) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::`paramName` [<boolean>](https://mdn-link)
Stack Traces | 0.00128s run time
Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[39m      '@name': 'paramName',
�[39m      '@type': 'boolean',
�[32m+�[39m     description: undefined
�[39m    }
�[39m  ]

    at async Promise.all (index 0) {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[39m      '@name': 'paramName',
  �[39m      '@type': 'boolean',
  �[32m+�[39m     description: undefined
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:139:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Promise.all (index 0)
      at async Suite.run (node:internal/test_runner/test:1518:7)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::`paramName` [<boolean>](https://mdn-link) | [<string>](https://mdn-link)
Stack Traces | 0.00218s run time
[Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  [
�[39m    {
�[39m      '@name': 'paramName',
�[39m      '@type': [
�[39m        'boolean',
�[39m        'string'
�[39m      ],
�[32m+�[39m     description: undefined
�[39m    }
�[39m  ]
] {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  [
  �[39m    {
  �[39m      '@name': 'paramName',
  �[39m      '@type': [
  �[39m        'boolean',
  �[39m        'string'
  �[39m      ],
  �[32m+�[39m     description: undefined
  �[39m    }
  �[39m  ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:213:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Suite.processPendingSubtests (node:internal/test_runner/test:788:7) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [ [Object] ],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::`paramName`
Stack Traces | 0.0032s run time
Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[32m+�[39m []
�[31m-�[39m [
�[31m-�[39m   {
�[31m-�[39m     '@name': 'paramName',
�[31m-�[39m     '@type': 'any'
�[31m-�[39m   }
�[31m-�[39m ]

    at new Promise (<anonymous>)
    at Array.map (<anonymous>) {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[32m+�[39m []
  �[31m-�[39m [
  �[31m-�[39m   {
  �[31m-�[39m     '@name': 'paramName',
  �[31m-�[39m     '@type': 'any'
  �[31m-�[39m   }
  �[31m-�[39m ]
  
      at TestContext.<anonymous> (file:.../sections/__tests__/event.test.mjs:79:14)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Test.start (node:internal/test_runner/test:1003:17)
      at node:internal/test_runner/test:1516:71
      at node:internal/per_context/primordials:466:82
      at new Promise (<anonymous>)
      at new SafePromise (node:internal/per_context/primordials:435:3)
      at node:internal/per_context/primordials:466:9
      at Array.map (<anonymous>) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: [],
    expected: [ [Object] ],
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}
test::`something.doThingWithReturnType()`
Stack Traces | 0.00343s run time
Error [ERR_TEST_FAILURE]: Expected values to be strictly deep-equal:
�[32m+ actual�[39m �[31m- expected�[39m

�[39m  {
�[39m    signatures: [
�[39m      {
�[39m        '@returns': {
�[32m+�[39m         '@type': 'any'
�[31m-�[39m         '@type': 'string',
�[31m-�[39m         description: 'A description bla bla bla'
�[39m        },
�[39m        parameters: undefined
�[39m      }
�[39m    ]
�[39m  }

    at async Promise.all (index 0) {
  code: 'ERR_TEST_FAILURE',
  failureType: 'testCodeFailure',
  cause: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
  �[32m+ actual�[39m �[31m- expected�[39m
  
  �[39m  {
  �[39m    signatures: [
  �[39m      {
  �[39m        '@returns': {
  �[32m+�[39m         '@type': 'any'
  �[31m-�[39m         '@type': 'string',
  �[31m-�[39m         description: 'A description bla bla bla'
  �[39m        },
  �[39m        parameters: undefined
  �[39m      }
  �[39m    ]
  �[39m  }
  
      at TestContext.<anonymous> (file:.../sections/__tests__/method.test.mjs:114:12)
      at Test.runInAsyncScope (node:async_hooks:214:14)
      at Test.run (node:internal/test_runner/test:1106:25)
      at Suite.processPendingSubtests (node:internal/test_runner/test:788:18)
      at Test.postRun (node:internal/test_runner/test:1235:19)
      at Test.run (node:internal/test_runner/test:1163:12)
      at async Promise.all (index 0)
      at async Suite.run (node:internal/test_runner/test:1518:7)
      at async startSubtestAfterBootstrap (node:internal/test_runner/harness:358:3) {
    generatedMessage: true,
    code: 'ERR_ASSERTION',
    actual: { signatures: [Array] },
    expected: { signatures: [Array] },
    operator: 'deepStrictEqual',
    diff: 'simple'
  }
}

To view more test analytics, go to the Test Analytics Dashboard
📋 Got 3 mins? Take this short survey to help us improve Test Analytics.

@avivkeller avivkeller mentioned this pull request Jun 24, 2025
6 tasks
@avivkeller
Copy link
Member

@flakey5 is this still in progress? Need any help?

@flakey5
Copy link
Member Author

flakey5 commented Sep 30, 2025

Still in progress just haven't been committing, I do wanna get this ready for review within the next coming weeks though

@flakey5 flakey5 force-pushed the flakey5/20240909/new-json-gen branch from a4cd425 to d711fee Compare October 6, 2025 20:16
@vercel
Copy link

vercel bot commented Oct 6, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
api-docs-tooling Ready Ready Preview Jan 10, 2026 4:32am

@flakey5
Copy link
Member Author

flakey5 commented Nov 10, 2025

Bulk of this is done, with only two main things left:

  • Couple of failing tests for createParameterGroupings
  • Adding the @constructor property to class sections

I'm leaving this as a draft until those are done, but the rest is ready for review

Copy link
Member

@avivkeller avivkeller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the rest is ready for review

I've left a first round of reviews. Thank you so much for this effort!

@flakey5
Copy link
Member Author

flakey5 commented Nov 29, 2025

Marking ready for review, should be all there minus #287 (comment)

@flakey5 flakey5 marked this pull request as ready for review November 29, 2025 02:49
@flakey5 flakey5 requested a review from a team as a code owner November 29, 2025 02:49
@avivkeller avivkeller added this to the Web Generator Migration milestone Dec 3, 2025
Copy link
Member

@avivkeller avivkeller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More comments :-)

Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>

return {
$schema: `${BASE_URL}docs/${version}/api/${SCHEMA_FILENAME}`,
source: head.api_doc_source,
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently this is something like doc/api/buffer.md, I wonder if it'd be more useful to give an actual link to the source file like https://nodejs.org/docs/v25.0.0/api/buffer.md

Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
Co-authored-by: Aviv Keller <me@aviv.sh>
Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
Co-authored-by: Aviv Keller <me@aviv.sh>
Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
Signed-off-by: flakey5 <73616808+flakey5@users.noreply.github.com>
@avivkeller
Copy link
Member

(Re-requesting my review as a reminder to myself to review this later today)

Copy link
Member

@avivkeller avivkeller left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Keep up the good work!

Comment on lines +70 to +72
if (typeof index !== 'number') {
index = Number(index);
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When will this not be a number?

Comment on lines +86 to +108
if (entry.changes.length > 0) {
section.changes = entry.changes.map(change => ({
description: change.description,
prUrl: change['pr-url'],
version: enforceArray(change.version),
}));
}

if (entry.added_in) {
section['@since'] = enforceArray(entry.added_in);
}

if (entry.n_api_version) {
section.napiVersion = enforceArray(entry.n_api_version);
}

if (entry.removed_in) {
section.removedIn = enforceArray(entry.removed_in);
}

if (entry.deprecated_in) {
section['@deprecated'] = enforceArray(entry.deprecated_in);
}
Copy link
Member

@avivkeller avivkeller Feb 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should get in the habit of always supplying these props, even if they are empty/undefined

wdyt @ovflowd

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You mispelled my @ hahaha, but I agree :)

} else {
// Put static methods in `staticMethods` property and non-static methods
// in the `methods` property
property = entry.heading.data.text.startsWith('Static method:')
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be picked up by the classMethod RegEx, right? Do we need to check it here as well?

@ovflowd
Copy link
Member

ovflowd commented Feb 6, 2026

Imma gonna review this in a few (hopefully this weekend!)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can't we git ignore this file?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 on this, these only change when there's a change in the schema which shouldn't be that frequent. Adding this to the git ignore would just add another step to anyone wanting to contribute to this generator (and also idk if a jsdoc type ref to a non-existent file would throw a linter error or not)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

New JSON generator schema

5 participants