Add --json output flag for batch query results

Aberta Para iniciantes
#263 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
2/5
Tempo estimado
1-3 horas
Facilidade para iniciantes
84/100
Tipo de issue
Funcionalidade
Clareza
Claramente especificada
Status de atividade
Pouca atividade
Stack de tecnologia
python, sqlite
Domínio
cli

Direção de pesquisa

Comece em litecli/main.py e inspecione as opções da CLI raiz, além do tratamento existente de --csv e --table nos ramos -e e stdin. Confirme como litecli.formatter.format_name é atribuído e, em seguida, verifique se --json aparece na ajuda e produz JSON para ambos os pontos de entrada em lote usando a consulta de exemplo; a entrada de configuração opcional deve espelhar a configuração existente table_format.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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.

Linguagem predominante
Python
Estrelas
3.3k
Forks
95
Métricas de merge de PRs
Nenhum PR com merge em 30d

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de dbcli/litecli

Todas as issues de dbcli/litecli

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.