-
-
Notifications
You must be signed in to change notification settings - Fork 21
Closed as not planned
Labels
👀 no/externalThis makes more sense somewhere elseThis makes more sense somewhere else👎 phase/noPost cannot or will not be acted onPost cannot or will not be acted on
Description
Initial checklist
- I read the support docs
- I read the contributing guide
- I agree to follow the code of conduct
- I searched issues and discussions and couldn’t find anything (or linked relevant results below)
Affected package
Steps to reproduce
Please note that this works well with [email protected] and the bug was introduced in 2.0.2.
The following code isn't valid anymore:
import { fromMarkdown } from 'mdast-util-from-markdown'
import { gfm } from 'micromark-extension-gfm'
import { gfmFromMarkdown } from 'mdast-util-gfm'
fromMarkdown(text, 'utf8', {
extensions: [gfm()],
mdastExtensions: [gfmFromMarkdown()],
})
Typescript complains with two very long debug messages:
For gfm
:
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Extension' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Extension'.
Types of property 'contentInitial' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ConstructRecord | undefined' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ConstructRecord | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ConstructRecord' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ConstructRecord'.
'string' index signatures are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct | import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", ...' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct | import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", ...'.
Type 'Construct' is not assignable to type 'Construct | Construct[] | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct'.
Types of property 'exit' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Exiter | undefined' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Exiter | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Exiter' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Exiter'.
The 'this' types of each signature are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext'.
Types of property 'currentConstruct' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct | undefined' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct'.
Types of property 'tokenize' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Tokenizer' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Tokenizer'.
The 'this' types of each signature are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext'.
Types of property 'containerState' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState | undefined' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState'.
Types of property 'type' are incompatible.
Type 'keyof import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenTypeMap | undefined' is not assignable to type 'keyof import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenTypeMap | undefined'.
Type '"gfmFootnoteCall"' is not assignable to type 'keyof TokenTypeMap | undefined'.ts(2322)
For gfmFromMarkdown
:
Type 'Partial<Config>[]' is not assignable to type 'Extension | Extension[]'.
Type 'Partial<Config>[]' is not assignable to type 'Extension[]'.
Type 'Partial<Config>' is not assignable to type 'Extension'.
Types of property 'enter' are incompatible.
Type 'Handles | undefined' is not assignable to type 'Handles | null | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/index", { with: { "resolution-mode": "import" } }).Handles' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/types", { with: { "resolution-mode": "import" } }).Handles'.
'string' index signatures are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/index", { with: { "resolution-mode": "import" } }).Handle' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/types", { with: { "resolution-mode": "import" } }).Handle'.
The 'this' types of each signature are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/types", { with: { "resolution-mode": "import" } }).CompileContext' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/index", { with: { "resolution-mode": "import" } }).CompileContext'.
Types of property 'tokenStack' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/types", { with: { "resolution-mode": "import" } }).TokenTuple[]' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/index", { with: { "resolution-mode": "import" } }).TokenTuple[]'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/types", { with: { "resolution-mode": "import" } }).TokenTuple' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/mdast-util-from-markdown/lib/index", { with: { "resolution-mode": "import" } }).TokenTuple'.
Type at position 0 in source is not compatible with type at position 0 in target.
The types of '_tokenizer' are incompatible between these types.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext | undefined' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext'.
Types of property 'currentConstruct' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct | undefined' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Construct'.
Types of property 'tokenize' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Tokenizer' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).Tokenizer'.
The 'this' types of each signature are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenizeContext'.
Types of property 'containerState' are incompatible.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState | undefined' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState | undefined'.
Type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState' is not assignable to type 'import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).ContainerState'.
Types of property 'type' are incompatible.
Type 'keyof import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenTypeMap | undefined' is not assignable to type 'keyof import("/myproj/node_modules/.pnpm/[email protected]/node_modules/micromark-util-types/index", { with: { "resolution-mode": "import" } }).TokenTypeMap | undefined'.
Type '"gfmFootnoteCall"' is not assignable to type 'keyof TokenTypeMap | undefined'.ts(2322)
Actual behavior
The types don't work anymore
Expected behavior
The types should match
Runtime
Typescript 5.7.2
Package manager
No response
Operating system
No response
Build and bundle tools
No response
Metadata
Metadata
Assignees
Labels
👀 no/externalThis makes more sense somewhere elseThis makes more sense somewhere else👎 phase/noPost cannot or will not be acted onPost cannot or will not be acted on