Add --json output flag for batch query results

Abierto Apto para principiantes
#263 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
84/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Tranquilo
Stack tecnológico
python, sqlite
Área
cli

Línea de trabajo

Comienza en litecli/main.py e inspecciona las opciones de la CLI raíz, así como el manejo existente de --csv y --table en las ramas de -e y stdin. Confirma cómo se asigna litecli.formatter.format_name y, después, verifica que --json aparezca en la ayuda y produzca JSON para ambos puntos de entrada por lotes usando la consulta de ejemplo; la entrada de configuración opcional debería reflejar la configuración existente table_format.

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

Descripción

Problem

litecli already supports --csv and --table for batch output (used with -e and stdin queries), but it has no equivalent --json flag. The underlying cli_helpers library already ships a json_output_adapter.py, so the formatter is available — only the CLI flag is missing.

Solution

Add a --json flag parallel to the existing --csv and -t/--table options on the root cli command. In the -e and stdin branches of litecli/main.py, set litecli.formatter.format_name = "json" next to the existing format_name = "csv" / "tsv" assignments. The change should be ~5 lines.

A table_format = "json" entry could also be accepted in ~/.config/litecli/config, mirroring the existing table_format = "csv" knob.

Use case

Scripting and CI pipelines:

litecli mydb.sqlite -e "select id, name from users" --json | jq '.[] | select(.name | startswith("a"))'

…instead of having to pipe --csv through jq -r '@csv' round-tripping.

Lenguaje dominante
Python
Estrellas
3.3k
Forks
95
Métricas de merge de PR
Sin PR fusionados en 30 d

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.

Más de dbcli/litecli

Todos los issues de dbcli/litecli

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.