Skip to content

[bug] Missing import function matcher in TypeScript #1959

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
1 task done
Timeless0911 opened this issue Apr 28, 2025 · 5 comments · May be fixed by tree-sitter/tree-sitter-typescript#330
Closed
1 task done

[bug] Missing import function matcher in TypeScript #1959

Timeless0911 opened this issue Apr 28, 2025 · 5 comments · May be fixed by tree-sitter/tree-sitter-typescript#330
Labels
bug Something isn't working upstream Upstream issue from tree-sitter

Comments

@Timeless0911
Copy link

Timeless0911 commented Apr 28, 2025

Please read the FAQ for the bug you encountered.

  • I have read the existing FAQ

⏯ Playground Link

https://ast-grep.github.io/playground.html#eyJtb2RlIjoiQ29uZmlnIiwibGFuZyI6InR5cGVzY3JpcHQiLCJxdWVyeSI6ImNsYXNzICQkJENCUzpcclxuICAgICcnJyREUycnJ1xyXG4gICAgJCQkQ0JcclxuIiwicmV3cml0ZSI6ImNsYXNzICQkJENCUzpcclxuICAgIFwiXCJcIiREU1wiXCJcIlxyXG4gICAgYmF0Y2hfbW9kZSA9IFRydWVcclxuICAgICQkJENCIiwic3RyaWN0bmVzcyI6InNtYXJ0Iiwic2VsZWN0b3IiOiJFUlJPUiIsImNvbmZpZyI6InJ1bGU6XG4gIGFueTpcbiAgLSBraW5kOiBpbXBvcnRfc3RhdGVtZW50XG4gICAgaGFzOlxuICAgICAgZmllbGQ6IHNvdXJjZVxuICAgICAgaGFzOlxuICAgICAgICBwYXR0ZXJuOiAkSU1QIFxuICAgICAgICBraW5kOiBzdHJpbmdfZnJhZ21lbnRcbiAgLSBraW5kOiBleHBvcnRfc3RhdGVtZW50XG4gICAgaGFzOlxuICAgICAgZmllbGQ6IHNvdXJjZVxuICAgICAgaGFzOlxuICAgICAgICBwYXR0ZXJuOiAkSU1QIFxuICAgICAgICBraW5kOiBzdHJpbmdfZnJhZ21lbnRcbiAgLSBhbnk6XG4gICAgICAtIHBhdHRlcm46IHJlcXVpcmUoJEEpXG4gICAgICAtIHBhdHRlcm46IGltcG9ydCgkQSlcbiAgICBoYXM6XG4gICAgICBmaWVsZDogYXJndW1lbnRzXG4gICAgICBoYXM6XG4gICAgICAgIGhhczogXG4gICAgICAgICAgcGF0dGVybjogJElNUCBcbiAgICAgICAgICBraW5kOiBzdHJpbmdfZnJhZ21lbnRcbiIsInNvdXJjZSI6IlpvZE9iamVjdDx7XG4gICAgbW9kZTogaW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RFbnVtPFtcInVzYWdlXCIsIFwiZW50cnlcIl0+PjtcbiAgICBkZWJ1ZzogaW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RCb29sZWFuPjtcbiAgICBkeW5hbWljSW1wb3J0OiBpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZEJvb2xlYW4+O1xuICAgIGxvb3NlOiBpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZEJvb2xlYW4+O1xuICAgIGJ1Z2ZpeGVzOiBpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZEJvb2xlYW4+O1xuICAgIHNraXA6IGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kQXJyYXk8aW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZFN0cmluZywgXCJtYW55XCI+PjtcbiAgICBpbmNsdWRlOiBpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZEFycmF5PGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RTdHJpbmcsIFwibWFueVwiPj47XG4gICAgZXhjbHVkZTogaW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RBcnJheTxpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kU3RyaW5nLCBcIm1hbnlcIj4+O1xuICAgIGNvcmVKczogaW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RTdHJpbmc+O1xuICAgIHRhcmdldHM6IGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kQW55PjtcbiAgICBwYXRoOiBpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZFN0cmluZz47XG4gICAgc2hpcHBlZFByb3Bvc2FsczogaW1wb3J0KFwiLi4vLi4vLi4vY29tcGlsZWQvem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RCb29sZWFuPjtcbiAgICBmb3JjZUFsbFRyYW5zZm9ybXM6IGltcG9ydChcIi4uLy4uLy4uL2NvbXBpbGVkL3pvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCIuLi8uLi8uLi9jb21waWxlZC96b2RcIikuWm9kQm9vbGVhbj47XG59PlxuXG5ab2RPYmplY3Q8e1xuICAgIG1vZGU6IGltcG9ydChcInpvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCJ6b2RcIikuWm9kRW51bTxbXCJ1c2FnZVwiLCBcImVudHJ5XCJdPj47XG4gICAgZGVidWc6IGltcG9ydChcInpvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCJ6b2RcIikuWm9kQm9vbGVhbj47XG4gICAgZHluYW1pY0ltcG9ydDogaW1wb3J0KFwiem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcInpvZFwiKS5ab2RCb29sZWFuPjtcbiAgICBsb29zZTogaW1wb3J0KFwiem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcInpvZFwiKS5ab2RCb29sZWFuPjtcbiAgICBidWdmaXhlczogaW1wb3J0KFwiem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcInpvZFwiKS5ab2RCb29sZWFuPjtcbiAgICBza2lwOiBpbXBvcnQoXCJ6b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiem9kXCIpLlpvZEFycmF5PGltcG9ydChcInpvZFwiKS5ab2RTdHJpbmcsIFwibWFueVwiPj47XG4gICAgaW5jbHVkZTogaW1wb3J0KFwiem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcInpvZFwiKS5ab2RBcnJheTxpbXBvcnQoXCJ6b2RcIikuWm9kU3RyaW5nLCBcIm1hbnlcIj4+O1xuICAgIGV4Y2x1ZGU6IGltcG9ydChcInpvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCJ6b2RcIikuWm9kQXJyYXk8aW1wb3J0KFwiem9kXCIpLlpvZFN0cmluZywgXCJtYW55XCI+PjtcbiAgICBjb3JlSnM6IGltcG9ydChcInpvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCJ6b2RcIikuWm9kU3RyaW5nPjtcbiAgICB0YXJnZXRzOiBpbXBvcnQoXCJ6b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiem9kXCIpLlpvZEFueT47XG4gICAgcGF0aDogaW1wb3J0KFwiem9kXCIpLlpvZE9wdGlvbmFsPGltcG9ydChcInpvZFwiKS5ab2RTdHJpbmc+O1xuICAgIHNoaXBwZWRQcm9wb3NhbHM6IGltcG9ydChcInpvZFwiKS5ab2RPcHRpb25hbDxpbXBvcnQoXCJ6b2RcIikuWm9kQm9vbGVhbj47XG4gICAgZm9yY2VBbGxUcmFuc2Zvcm1zOiBpbXBvcnQoXCJ6b2RcIikuWm9kT3B0aW9uYWw8aW1wb3J0KFwiem9kXCIpLlpvZEJvb2xlYW4+O1xufT4ifQ==

💻 Code

Origin file: https://github.com/Timeless0911/ast-grep-matcher-performance/blob/main/file/zod-types.d.ts

Hi, sorry to bother you. Our project uses zod extensively and today our team members accidentally found that the following case which not all import("zod") will be matched in file above.

Since the origin file is too large, the playground is a try to reproduce, not a very strict grammatical structure. You can check the origin file for more details.

🙁 Actual behavior

Image

🙂 Expected behavior

All import statement is matched.

Additional information about the issue

This is not a serious issue, file this to record.

@HerringtonDarkholme
Copy link
Member

Upstream issue tree-sitter/tree-sitter-typescript#322

@HerringtonDarkholme HerringtonDarkholme added the upstream Upstream issue from tree-sitter label Apr 28, 2025
@Timeless0911
Copy link
Author

It seems that tree-sitter has not released a new version for a long time.

@HerringtonDarkholme
Copy link
Member

tree-sitter/tree-sitter-typescript#330

@HerringtonDarkholme HerringtonDarkholme closed this as not planned Won't fix, can't repro, duplicate, stale May 27, 2025
@HerringtonDarkholme HerringtonDarkholme closed this as not planned Won't fix, can't repro, duplicate, stale May 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working upstream Upstream issue from tree-sitter
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants