tape-testing / tape

tap-producing test harness for node and browsers
MIT License
5.77k stars 307 forks source link

Are you able to publish a new version of tape? #567

Closed IgorTodorovskiIBM closed 2 years ago

IgorTodorovskiIBM commented 2 years ago

Node v16 tape v5.3.1 is currently failing in CITGM because https://github.com/substack/tape/commit/bfeabe8694a65802ea1f0b98958dfb0f541668b1 is not yet available.

ljharb commented 2 years ago

That commit only affects tape’s tests, so publishing it wouldn’t help anything. Can you elaborate on what failure you’re seeing?

IgorTodorovskiIBM commented 2 years ago

We're seeing this:

 # Subtest: async-bug
         not ok 1 - should be equivalent
           ---
           found:
             - TAP version 13
             - '# async-error'
             - ok 1 before throw
             - ok 2 should be strictly equal
             - 'not ok 3 TypeError: Cannot read properties of null (reading ''length'')'
             - '  ---'
             - '    operator: error'
             - '    stack: |-'
             - '      TypeError: Cannot read properties of null (reading ''length'')'
             - '          at myCode ($TEST/async-await/async-bug.js:$LINE:$COL)'
             - '          at Test.myTest ($TEST/async-await/async-bug.js:$LINE:$COL)'
             - '  ...'
             - ''
             - 1..3
             - '# tests 3'
             - '# pass  2'
             - '# fail  1'
             - ''
             - ''
           wanted:
             - TAP version 13
             - '# async-error'
             - ok 1 before throw
             - ok 2 should be strictly equal
             - 'not ok 3 TypeError: Cannot read property ''length'' of null'
             - '  ---'
             - '    operator: error'
             - '    stack: |-'
             - '      TypeError: Cannot read property ''length'' of null'
             - '          at myCode ($TEST/async-await/async-bug.js:$LINE:$COL)'
             - '          at Test.myTest ($TEST/async-await/async-bug.js:$LINE:$COL)'
             - '  ...'
             - ''
             - 1..3
             - '# tests 3'
             - '# pass  2'
             - '# fail  1'
             - ''
             - ''
           at:
             line: 265
             column: 11
             file: test/async-await.js
           stack: |
             test/async-await.js:265:11
             ChildProcess.<anonymous> (test/common.js:102:9)
             ChildProcess.emit (node:events:390:28)
             Process.ChildProcess._handle.onexit (node:internal/child_process:290:12)
           source: |
             t.same(stripFullStack(stdout), [
           ...
         ok 2 - should be equivalent
         ok 3 - should be equivalent
         1..3
         # failed 1 of 3 tests

When running citgm: https://github.com/nodejs/citgm. CITGM include the latest release of tape in the lookup.json as follows: https://github.com/nodejs/citgm/blob/b73cb0f07188307e0745e09b361c64610f37c5f8/lib/lookup.json#L500

Perhaps a new release needs to be created in github?

ljharb commented 2 years ago

Ah, you didn’t specify citgm. Yes, I’d need to publish a new release for that; I’ll do so today.

ljharb commented 2 years ago

Actual wait - most packages don’t publish their tests (altho all of mine do), can’t citgm be configured to look at the master branch on GitHub? I’d rather not publish a release that doesn’t include any actual changes.

IgorTodorovskiIBM commented 2 years ago

It can be done, are you suggesting that as a temporary solution for us until a new version is published?

ljharb commented 2 years ago

Certainly until then, yes - altho it might be nicer if there was some way to use the latest version of the package, and then git checkout origin/master test or something?