Skip to content

[red-knot] IDE crate #17045

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

Merged
merged 1 commit into from
Apr 1, 2025
Merged

[red-knot] IDE crate #17045

merged 1 commit into from
Apr 1, 2025

Conversation

MichaReiser
Copy link
Member

@MichaReiser MichaReiser commented Mar 28, 2025

Summary

This PR adds a new but so far empty and unused red_knot_ide crate.

This new crate's purpose is to implement IDE-specific functionality, such as go to definition, hover, completion, etc., which are used by both the LSP and the playground.

The crate itself doesn't depend on lsptypes. The idea is that the facade crates (e.g., red_knot_server) convert external to internal types.
Not only allows this to share the logic between server and playground, it also ensures that the core functionality is easier to test because it can be tested without needing a full LSP.

Test Plan

cargo build

@MichaReiser MichaReiser added the ty Multi-file analysis & type inference label Mar 28, 2025
Copy link
Contributor

github-actions bot commented Mar 28, 2025

mypy_primer results

No ecosystem changes detected ✅

Copy link
Contributor

github-actions bot commented Mar 28, 2025

ruff-ecosystem results

Linter (stable)

✅ ecosystem check detected no linter changes.

Linter (preview)

✅ ecosystem check detected no linter changes.

Formatter (stable)

✅ ecosystem check detected no format changes.

Formatter (preview)

✅ ecosystem check detected no format changes.

@AlexWaygood AlexWaygood removed their request for review March 28, 2025 19:28
@MichaReiser
Copy link
Member Author

@charliermarsh I don't know if you have enough authority to approve red knot PRs 😂

@charliermarsh
Copy link
Member

Watch me!

Copy link
Contributor

@carljm carljm left a comment

Choose a reason for hiding this comment

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

I skipped reviewing this last week because @charliermarsh already approved it! But if you are serious about wanting another review, it looks fine to me 😆

@MichaReiser MichaReiser merged commit b57c62e into main Apr 1, 2025
23 checks passed
@MichaReiser MichaReiser deleted the micha/knot-ide branch April 1, 2025 07:36
dcreager added a commit that referenced this pull request Apr 1, 2025
* main:
  [red-knot] Add property tests for callable types (#17006)
  [red-knot] Disjointness for callable types (#17094)
  [red-knot] Flatten `Type::Callable` into four `Type` variants (#17126)
  mdtest.py: do a full mdtest run immediately when the script is executed (#17128)
  [red-knot] Fix callable subtyping for standard parameters (#17125)
  [red-knot] Fix more `redundant-cast` false positives (#17119)
  Sync vendored typeshed stubs (#17106)
  [red-knot] support Any as a class in typeshed (#17107)
  Visit `Identifier` node as part of the `SourceOrderVisitor` (#17110)
  [red-knot] Don't infer Todo for quite so many tuple type expressions (#17116)
  CI: Run pre-commit on depot machine (#17120)
  Error instead of `panic!` when running Ruff from a deleted directory (#16903) (#17054)
  Control flow graph: setup (#17064)
  [red-knot] Playground improvements (#17109)
  [red-knot] IDE crate (#17045)
  Update dependency vite to v6.2.4 (#17104)
  [red-knot] Add redundant-cast error (#17100)
  [red-knot] Narrowing on `in tuple[...]` and `in str` (#17059)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ty Multi-file analysis & type inference
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants