#1146319 node-codemirror-state: FTBFS with node-babel 8

#1146319#5
Date:
2026-08-31 12:04:47 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202608/

A wiki page discussing possible solutions is available here:

https://wiki.debian.org/Javascript/KnownPatches?pow_referer=#node-babel7_8

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:node-codemirror-state, so that this is still
visible in the BTS web page for this package.

Thanks.
--------------------------------------------------------------------------------
[...]
    61     let st = mk(num.compute([str], s => s.facet(str).join().length),
                                          ~
    test/test-facet.ts:62:37 - error TS7006: Parameter 's' implicitly has an 'any' type.

    62                 str.compute([bool], s => s.facet(bool).toString()))
                                           ~
    test/test-facet.ts:66:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    66   it("can specify a dependency on the document", () => {
         ~~
    test/test-facet.ts:68:38 - error TS7006: Parameter '_' implicitly has an 'any' type.

    68     let st = mk(num.compute(["doc"], _ => count++))
                                            ~
    test/test-facet.ts:76:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    76   it("can specify a dependency on the selection", () => {
         ~~
    test/test-facet.ts:78:44 - error TS7006: Parameter '_' implicitly has an 'any' type.

    78     let st = mk(num.compute(["selection"], _ => count++))
                                                  ~
    test/test-facet.ts:88:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    88   it("can provide multiple values at once", () => {
         ~~
    test/test-facet.ts:89:39 - error TS7006: Parameter 's' implicitly has an 'any' type.

    89     let st = mk(num.computeN(["doc"], s => s.doc.length % 2 ? [100, 10] : []), num.of(1))
                                             ~
    test/test-facet.ts:95:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    95   it("works with a static combined facet", () => {
         ~~
    test/test-facet.ts:96:52 - error TS7006: Parameter 'ns' implicitly has an 'any' type.

    96     let f = Facet.define<number, number>({combine: ns => ns.reduce((a, b) => a + b, 0)})
                                                          ~~
    test/test-facet.ts:96:69 - error TS7006: Parameter 'a' implicitly has an 'any' type.

    96     let f = Facet.define<number, number>({combine: ns => ns.reduce((a, b) => a + b, 0)})
                                                                           ~
    test/test-facet.ts:96:72 - error TS7006: Parameter 'b' implicitly has an 'any' type.

    96     let f = Facet.define<number, number>({combine: ns => ns.reduce((a, b) => a + b, 0)})
                                                                              ~
    test/test-facet.ts:101:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    101   it("works with a dynamic combined facet", () => {
          ~~
    test/test-facet.ts:102:52 - error TS7006: Parameter 'ns' implicitly has an 'any' type.

    102     let f = Facet.define<number, number>({combine: ns => ns.reduce((a, b) => a + b, 0)})
                                                           ~~
    test/test-facet.ts:102:69 - error TS7006: Parameter 'a' implicitly has an 'any' type.

    102     let f = Facet.define<number, number>({combine: ns => ns.reduce((a, b) => a + b, 0)})
                                                                            ~
    test/test-facet.ts:102:72 - error TS7006: Parameter 'b' implicitly has an 'any' type.

    102     let f = Facet.define<number, number>({combine: ns => ns.reduce((a, b) => a + b, 0)})
                                                                               ~
    test/test-facet.ts:103:45 - error TS7006: Parameter 's' implicitly has an 'any' type.

    103     let st = mk(f.of(1), f.compute(["doc"], s => s.doc.length), f.of(3))
                                                    ~
    test/test-facet.ts:109:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    109   it("survives reconfiguration", () => {
          ~~
    test/test-facet.ts:110:38 - error TS7006: Parameter 's' implicitly has an 'any' type.

    110     let st = mk(num.compute(["doc"], s => s.doc.length), num.of(2), str.of("3"))
                                             ~
    test/test-facet.ts:111:84 - error TS7006: Parameter 's' implicitly has an 'any' type.

    111     let st2 = st.update({effects: StateEffect.reconfigure.of([num.compute(["doc"], s => s.doc.length), num.of(2)])}).state
                                                                                           ~
    test/test-facet.ts:116:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    116   it("survives unrelated reconfiguration even without deep-compare", () => {
          ~~
    test/test-facet.ts:118:16 - error TS7006: Parameter 'v' implicitly has an 'any' type.

    118       combine: v => ({count: v.length})
                       ~
    test/test-facet.ts:120:36 - error TS7006: Parameter 's' implicitly has an 'any' type.

    120     let st = mk(f.compute(["doc"], s => s.doc.length), f.of(2))
                                           ~
    test/test-facet.ts:125:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    125   it("preserves static facets across reconfiguration", () => {
          ~~
    test/test-facet.ts:131:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    131   it("creates newly added fields when reconfiguring", () => {
          ~~
    test/test-facet.ts:149:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    149   it("applies effects from reconfiguring transaction to new fields", () => {
          ~~
    test/test-facet.ts:153:14 - error TS7006: Parameter 'state' implicitly has an 'any' type.

    153       create(state) {
                     ~~~~~
    test/test-facet.ts:156:14 - error TS7006: Parameter 'val' implicitly has an 'any' type.

    156       update(val, tr) {
                     ~~~
    test/test-facet.ts:156:19 - error TS7006: Parameter 'tr' implicitly has an 'any' type.

    156       update(val, tr) {
                          ~~
    test/test-facet.ts:157:35 - error TS7006: Parameter 'val' implicitly has an 'any' type.

    157         return tr.effects.reduce((val, e) => e.is(effect) ? val + e.value : val, val)
                                          ~~~
    test/test-facet.ts:157:40 - error TS7006: Parameter 'e' implicitly has an 'any' type.

    157         return tr.effects.reduce((val, e) => e.is(effect) ? val + e.value : val, val)
                                               ~
    test/test-facet.ts:167:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    167   it("errors on cyclic dependencies", () => {
          ~~
    test/test-facet.ts:168:44 - error TS7006: Parameter 's' implicitly has an 'any' type.

    168     ist.throws(() => mk(num.compute([str], s => s.facet(str).length), str.compute([num], s => s.facet(num).join())),
                                                   ~
    test/test-facet.ts:168:90 - error TS7006: Parameter 's' implicitly has an 'any' type.

    168     ist.throws(() => mk(num.compute([str], s => s.facet(str).length), str.compute([num], s => s.facet(num).join())),
                                                                                                 ~
    test/test-facet.ts:172:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    172   it("updates facets computed from static values on reconfigure", () => {
          ~~
    test/test-facet.ts:173:36 - error TS7006: Parameter 'state' implicitly has an 'any' type.

    173     let st = mk(num.compute([str], state => state.facet(str).length), str.of("A"))
                                           ~~~~~
    test/test-facet.ts:179:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    179   it("preserves dynamic facet values when dependencies stay the same", () => {
          ~~
    test/test-facet.ts:181:32 - error TS7006: Parameter 'state' implicitly has an 'any' type.

    181     let st1 = mk(f.compute([], state => ({a: 1})), str.of("A"))
                                       ~~~~~

FAIL test/test-selection.ts
  ● Test suite failed to run

    test/test-selection.ts:2:31 - error TS7016: Could not find a declaration file for module '@codemirror/state'. '/<<PKGBUILDDIR>>/dist/index.cjs' implicitly has an 'any' type.
      Try `npm i --save-dev @types/codemirror__state` if it exists or add a new declaration (.d.ts) file containing `declare module '@codemirror/state';`

    2 import {EditorSelection} from "@codemirror/state"
                                    ~~~~~~~~~~~~~~~~~~~
    test/test-selection.ts:4:1 - error TS2593: Cannot find name 'describe'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    4 describe("EditorSelection", () => {
      ~~~~~~~~
    test/test-selection.ts:5:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    5   it("stores ranges with a primary range", () => {
        ~~
    test/test-selection.ts:11:24 - error TS7006: Parameter 'r' implicitly has an 'any' type.

    11     ist(sel.ranges.map(r => r.anchor + "/" + r.head).join(","), "0/1,3/2,4/5")
                              ~
    test/test-selection.ts:14:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    14   it("merges and sorts ranges when normalizing", () => {
         ~~
    test/test-selection.ts:25:24 - error TS7006: Parameter 'r' implicitly has an 'any' type.

    25     ist(sel.ranges.map(r => r.anchor + "/" + r.head).join(","), "0/6,6/7,7/8,9/13,13/14")
                              ~
    test/test-selection.ts:28:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    28   it("merges adjacent point ranges when normalizing", () => {
         ~~
    test/test-selection.ts:36:24 - error TS7006: Parameter 'r' implicitly has an 'any' type.

    36     ist(sel.ranges.map(r => r.anchor + "/" + r.head).join(","), "8/10,10/12")
                              ~
    test/test-selection.ts:39:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    39   it("preserves the direction of the last range when merging ranges", () => {
         ~~
    test/test-selection.ts:41:24 - error TS7006: Parameter 'r' implicitly has an 'any' type.

    41     ist(sel.ranges.map(r => r.anchor + "/" + r.head).join(","), "10/0")
                              ~

FAIL test/test-cluster.ts
  ● Test suite failed to run

    test/test-cluster.ts:1:57 - error TS7016: Could not find a declaration file for module '@codemirror/state'. '/<<PKGBUILDDIR>>/dist/index.cjs' implicitly has an 'any' type.
      Try `npm i --save-dev @types/codemirror__state` if it exists or add a new declaration (.d.ts) file containing `declare module '@codemirror/state';`

    1 import {findClusterBreak, countColumn, findColumn} from "@codemirror/state"
                                                              ~~~~~~~~~~~~~~~~~~~
    test/test-cluster.ts:4:1 - error TS2593: Cannot find name 'describe'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    4 describe("findClusterBreak", () => {
      ~~~~~~~~
    test/test-cluster.ts:6:5 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    6     it(spec, () => {
          ~~
    test/test-cluster.ts:29:1 - error TS2593: Cannot find name 'describe'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    29 describe("countColumn", () => {
       ~~~~~~~~
    test/test-cluster.ts:30:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    30   it("counts characters", () => ist(countColumn("abc", 4), 3))
         ~~
    test/test-cluster.ts:32:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    32   it("counts tabs correctly", () => ist(countColumn("a\t\tbc\tx", 4), 13))
         ~~
    test/test-cluster.ts:34:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    34   it("handles clusters", () => ist(countColumn("a😎🇫🇷", 4), 3))
         ~~
    test/test-cluster.ts:37:1 - error TS2593: Cannot find name 'describe'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    37 describe("findColumn", () => {
       ~~~~~~~~
    test/test-cluster.ts:38:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    38   it("finds positions", () => ist(findColumn("abc", 3, 4), 3))
         ~~
    test/test-cluster.ts:40:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    40   it("counts tabs", () => ist(findColumn("a\tbc", 4, 4), 2))
         ~~
    test/test-cluster.ts:42:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    42   it("handles clusters", () => ist(findColumn("a😎🇫🇷bc", 4, 4), 8))
         ~~

FAIL test/test-charcategory.ts
  ● Test suite failed to run

    test/test-charcategory.ts:1:52 - error TS7016: Could not find a declaration file for module '@codemirror/state'. '/<<PKGBUILDDIR>>/dist/index.cjs' implicitly has an 'any' type.
      Try `npm i --save-dev @types/codemirror__state` if it exists or add a new declaration (.d.ts) file containing `declare module '@codemirror/state';`

    1 import {EditorState, Extension, CharCategory} from "@codemirror/state"
                                                         ~~~~~~~~~~~~~~~~~~~
    test/test-charcategory.ts:8:1 - error TS2593: Cannot find name 'describe'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    8 describe("EditorState char categorizer", () => {
      ~~~~~~~~
    test/test-charcategory.ts:9:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    9   it("categorises into alphanumeric", () => {
        ~~
    test/test-charcategory.ts:15:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    15   it("categorises into whitespace", () => {
         ~~
    test/test-charcategory.ts:20:3 - error TS2593: Cannot find name 'it'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig.

    20   it("categorises into other", () => {
         ~~

Test Suites: 8 failed, 8 total
Tests:       0 total
Snapshots:   0 total
Time:        0.937 s
Ran all test suites.
dh_auto_test: error: /bin/sh -ex debian/tests/pkg-js/test returned exit code 1
make: *** [debian/rules:8: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------

#1146319#10
Date:
2026-08-31 16:05:49 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
node-codemirror-state, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1146319@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Xavier Guimard <yadd@debian.org> (supplier of updated node-codemirror-state package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Mon, 31 Aug 2026 16:03:43 +0200
Source: node-codemirror-state
Architecture: source
Version: 6.2.0-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Javascript Maintainers <pkg-javascript-devel@lists.alioth.debian.org>
Changed-By: Xavier Guimard <yadd@debian.org>
Closes: 1146319
Changes:
 node-codemirror-state (6.2.0-3) unstable; urgency=medium
 .
   * Fix build with typescript 6 (Closes: #1146319)
   * Declare compliance with policy 4.7.4
   * Drop "Rules-Requires-Root: no"
   * Drop "Priority: optional"
   * Apply multiarch hints from UDD
   * debian/watch version 5
Checksums-Sha1:
 ebe89b62f3e9c9c10d66e7c222c6afffde798c58 2212 node-codemirror-state_6.2.0-3.dsc
 5ccf6a804516ca1b827c422eae9a03541d2bce59 5132 node-codemirror-state_6.2.0-3.debian.tar.xz
Checksums-Sha256:
 f107fa9eea01ea4ecfc9f7f35e893e298e6ab3a93e0eb0013027484e93299f76 2212 node-codemirror-state_6.2.0-3.dsc
 8dc8ec8c8c58d8bdd8e9d3b4e5aa86f39c051081014cb90f4c9c31e4147e1f26 5132 node-codemirror-state_6.2.0-3.debian.tar.xz
Files:
 f80ed106f4c201581e16ef973046b2e1 2212 javascript optional node-codemirror-state_6.2.0-3.dsc
 a5932c648a65c02f769149a70e983945 5132 javascript optional node-codemirror-state_6.2.0-3.debian.tar.xz
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEAN/li4tVV3nRAF7J9tdMp8mZ7ukFAmqVoVsACgkQ9tdMp8mZ
7unhEw/+O7BBIBf5C0BsRZupZzEndUOYEZCwxiiOyC3l+6aDdq9pEtx7pIaXX/JM
8OVQSVc5yRCGqjVtqVfXScAZ41SbflSB6z5wsrJZ+oeHR3e+OSWB1LV94UW30+y8
ENNt9JdAs3+PO3tR7tvSTpgH40SNGR6TbH3p5Zim95Q2p/y1FJsWGor6/1C/FmiS
cH/p6G4ShN6nXRKUYsON+nZhSs+c61vfgk/0V3NU407K+PwBSWsHgVWXYHjfJlCd
CbzDVhRYJfHgOSXz2Xh7ioFVnI0CL5J62gfZIR48vKUsVGjVVAjotYsNIJhzKO/H
mNdP0VIJrSMiMi01zqxSFbdm+vOHdhNHhWSanzE9Ykvu5ugtX7abn3g5KeAHhZj0
niB2//gl7yWIa/697RZn690Z5+TpTOxYQ+ObmwgwjYWOdCoj5mxpaPW69A0wntT0
yyL8XiHWAB6U2hJXv4zaX1F1cemF0kR3gFyHq3U/tbmgx6Hb204ByPKSuMSy8LbS
3NoyHRurrYq1JwCBP8JqTfZKfChna9sgnQMhgAnMPXd+/Ku9GKuLDZBptfTMaDuX
iDgFDTzqSYQEiC2eGlFIU0G3iDOUqI52ojk+dUkR4r77fNvI5Xk3pehXAks7qR6o
um4DZRBqBxNM5GW0dzw3DScLNllfYg4oAZLwUNP2fWiXH9AFwIU=
=/SpZ
-----END PGP SIGNATURE-----