Use MarkupContent for hover contents
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 65/100
Línea de trabajo
The work is in compiler-services/iris-analysis/src/hover.rs and tests-integration/src/generated/lsp.rs. Start by reading the LSP 3.18 spec on MarkupContent and the gen-lsp-types crate. Examine how hovers are currently built using MarkedString. Change the logic to build a single MarkupContent value, handling the contentFormat client capability. Update the integration test renderer and regenerate snapshots with just t lsp. Done when the #[allow(deprecated)] attributes are removed and all hover tests pass.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Context
The language server is moving from lsp-types 0.95 to gen-lsp-types, which generates its types from the LSP 3.18 metamodel. LSP 3.18 deprecates MarkedString in favour of MarkupContent, and gen-lsp-types marks MarkedString, MarkedStringWithLanguage, and their variants #[deprecated].
Hovers still build MarkedString values (Contents::MarkedString and Contents::MarkedStringList) in compiler-services/iris-analysis/src/hover.rs: signatures and kinds as purescript code blocks, annotations as plain strings, and --- separators between them. To keep the type migration free of wire and snapshot changes, those sites and the hover renderer in tests-integration/src/generated/lsp.rs are allowed with a scoped #[allow(deprecated)].
Goal
Return hover contents as MarkupContent and remove the #[allow(deprecated)] escape hatches.
Scope
- Build hover contents as a single
MarkupContent, rendering code as fencedpurescriptblocks and separating sections with Markdown rules. - Negotiate
textDocument.hover.contentFormat: use Markdown when the client supports it and fall back to plain text otherwise, rather than assuming Markdown. - Remove the
MarkedStringhelpers and the#[allow(deprecated)]attributes fromhover.rsand the integration-test renderer. - Regenerate the affected
lspfixture snapshots and review each hover change.
Tests
just t lspwith reviewed snapshot changes for hover fixtures.- A capability-negotiation test covering Markdown and plain-text clients.
- Lenguaje dominante
- Rust
- Estrellas
- 118
- Forks
- 12
- Merge medio
- 7 h 3 min
- PR fusionados (30 d)
- 110
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de purefunctor/purescript-iris
-
diagnostics enhancement language-server
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
purefunctor/purescript-iris#648 ·
Los mantenedores suelen responder en 1 día
-
ideas
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
purefunctor/purescript-iris#620 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
purefunctor/purescript-iris#613 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
purefunctor/purescript-iris#560 ·
Los mantenedores suelen responder en 1 día
-
tooling
Dificultad 4/5 3-5 días Aptitud para principiantes 58/100
purefunctor/purescript-iris#507 ·
Los mantenedores suelen responder en 1 día
Todos los issues de purefunctor/purescript-iris
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
[Bug] ComponentType classifies 0x8A8A-0xEAEA as GREASE; mls-extensions §7.5 makes them private useAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
The book has a Nix install section that chelis.ch lacks, and it names two of the three systemsAbiertoarea:ecosystem documentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Chelis-Lang/chelis#3866 ·
Los mantenedores suelen responder en 1 día
-
[安卓Feature]: 数字键盘左侧符号区域大小优化Abiertoenhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
metasequoiaime/msime#8620 ·
Los mantenedores suelen responder en 1 día
-
agent-detection macos p2 triaged
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
Los mantenedores suelen responder en 1 día