clj-python / clj-python/libpython-clj

py. syntax is doing weird things with the clj-kondo linter

Abierto
#268 6 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Clojure
Estrellas
1.2k
Forks
74
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

The linter is doing something weird, because it assumes that py/py. is actually a reference to the symbol "py/py" with no ".".

I'm unable to write a custom :lint-as for this, because clj-kondo doesn't consider the possibility that "py." could represent a macro. ingoring :unresolved-var doesn't quite fill my usecase, as I want to remove the red squiglies under the second argument of the py. call as well.

I think clj-kondo is technically in the right here, because py. isn't supported clojure syntax, although I do like the py. notation, and it'd be nice if it was supported. I don't ask to change the notation, but it'd be nice to have a workaround that fixes these tooling issues.

https://clojure.org/reference/reader#_reader_forms

Symbols beginning or ending with '.' are reserved by Clojure.

Great Library! -- Sammy

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comienza reproduciendo la llamada py/py. con clj-kondo y comparando el comportamiento de un :lint-as personalizado con la supresión de :unresolved-var. No se nombra ningún archivo de implementación ni ninguna prueba; sigue cómo clj-kondo analiza la notación reservada py. y define la finalización como una configuración de lint funcional o un soporte documentado que elimine ambas líneas onduladas indicadas.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
clojure, python
Área
tooling
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.