20 pontos por GN⁺ 2024-08-19 | 1 comentários | Compartilhar no WhatsApp
  • Ferramenta que permite consultar e modificar estruturas de dados usando strings de seletor
    • Suporta JSON, YAML, TOML, XML e CSV, sem dependências em tempo de execução
    • Não é necessário aprender uma nova ferramenta para lidar com diferentes formatos de dados
    • Usa uma sintaxe padrão de seletores, então, depois de aprender uma vez, é possível consultar/modificar todos os formatos de dados compatíveis
  • Pode ser instalada via homebrew, ASDF, scoop, docker, Nix ou por binários compilados da release mais recente
    • Também oferece suporte a autocompletar no terminal
  • Features
    • Consulta/seleção de dados em arquivos de dados estruturados
    • Atualização de dados em arquivos de dados estruturados
    • Criação de arquivos de dados
    • Suporte a vários formatos/tipos de dados
    • Conversão entre formatos/tipos de dados
    • Uso de sintaxe padrão de consulta/seletor em todos os formatos de dados
    • Sem dependências em tempo de execução
    • Disponível para Linux, Mac e Windows
    • Pode ser importada e usada no seu próprio projeto
    • Pode ser executada via Docker
    • Mais rápida que jq/yq
    • Hook de pre-commit
  • Playground
    • Oferece um playground para testar comandos do dasel
    • O código-fonte do playground pode ser visto em github.com/TomWright/daselplayground
  • Benchmarks
    • Os resultados dos testes mostram que o dasel é até 3 vezes mais rápido que o jq e até 15 vezes mais rápido que o yq
    • Pode ser conferido no diretório de benchmarks

Resumo do GN⁺

  • O Dasel é uma ferramenta que suporta vários formatos de dados e permite consultar e modificar dados facilmente usando uma sintaxe padrão de seletores
  • Não tem dependências em tempo de execução, pode ser usada em várias plataformas e é mais rápida que jq/yq
  • Oferece vários métodos de instalação e hook de pre-commit, facilitando a integração ao ambiente de desenvolvimento
  • É útil para projetos que precisam de conversão entre formatos de dados ou que lidam com múltiplos formatos de dados
  • Ferramentas com funcionalidades semelhantes incluem jq, yq etc.

1 comentários

 
GN⁺ 2024-08-19
Comentários do Hacker News
  • A ideia de consultar armazenamentos de dados não relacionais usando uma sintaxe no estilo SQL é boa
    • Fiquei pensando se seria possível consultar todos os formatos de armazenamento de dados com SQL
  • Se você prefere consultas no estilo jq, pode usar o qq
  • É possível lidar com vários formatos usando o Nushell
  • Parece que essas ferramentas ganham destaque a cada trimestre
    • Estou esperando que as pessoas mostrem ou listem ferramentas que atendam aos seus casos de uso específicos
    • Sempre aprendo muita coisa
  • Projeto legal, mas é preciso uma linguagem de consulta padronizada
    • É difícil internalizar a sintaxe de consulta do jq
    • Fico relutante em investir no aprendizado quando não é um padrão amplamente adotado
    • JMESPath pode ser o caminho a seguir
    • gron é intuitivo e funciona bem com outras ferramentas
  • Já usei muito esse tipo de ferramenta em Go
    • Às vezes você quer apenas transformar um yaml sem fazer o parsing
    • Poder selecionar, substituir e adicionar dados em documentos yaml existentes ajuda bastante na automação
  • Uma ferramenta semelhante para arquivos ini
  • Mais uma lista de ferramentas
  • Recentemente tive a experiência de usar JMESPath na AWS
    • Fico curioso sobre qual ferramenta de dados estruturados é mais fácil de aprender, melhor documentada e mais rápida de escrever
    • Pergunto se alguém conhece um bom artigo de comparação
    • Ainda uso jq por padrão
  • O yq já faz isso, mas segundo o README é lento