Introduction à Dasel
Dasel, abréviation de « data-selector », est un outil puissant qui permet d’interroger et de modifier des structures de données à l’aide de chaînes de sélection. Il se distingue par sa capacité à gérer divers formats de données tels que JSON, YAML, TOML, XML et CSV, tout en n’ayant aucune dépendance d’exécution.
Un outil polyvalent
Fini le temps où il fallait apprendre de nouveaux outils pour chaque format de données. Dasel utilise une syntaxe de sélection standardisée, quel que soit le format de données. Cela signifie qu’une fois que vous maîtrisez Dasel, vous pouvez immédiatement interroger et modifier n’importe quel type de données pris en charge, sans avoir besoin d’outils supplémentaires.
Table des matières
- Introduction à Dasel
- Un outil polyvalent
- Démarrage rapide
- Fonctionnalités
- Documentation
- Playground
- Benchmarks
- Pré-commit
Démarrage rapide
Dasel est facilement accessible via plusieurs gestionnaires de paquets tels que Homebrew, ASDF, Scoop, Docker, Nix, ou encore sous forme de binaires compilés à partir de la dernière version. Pour les développeurs, il est également possible d’installer une version de développement avec la commande suivante :
go install github.com/tomwright/dasel/v2/cmd/dasel@master
Fonctionnalités
Dasel se distingue par sa flexibilité et sa simplicité d’utilisation. Il permet non seulement d’interroger des données, mais aussi de les modifier de manière efficace. Par exemple, vous pouvez facilement extraire des informations spécifiques d’un fichier JSON complexe ou mettre à jour des valeurs dans un document YAML sans effort supplémentaire.
Documentation et Playground
Pour ceux qui souhaitent approfondir leurs connaissances, la documentation complète de Dasel est disponible en ligne. De plus, un environnement de test interactif, ou « playground », permet aux utilisateurs d’expérimenter avec les commandes et de voir les résultats en temps réel, facilitant ainsi l’apprentissage.
Benchmarks et performances
Les performances de Dasel sont impressionnantes, avec des benchmarks qui montrent sa rapidité et son efficacité par rapport à d’autres outils similaires. Cela en fait un choix idéal pour les développeurs qui travaillent avec de grandes quantités de données et qui ont besoin d’un outil fiable et performant.
Conclusion
Dasel est un outil incontournable pour quiconque travaille avec des données dans divers formats. Sa capacité à unifier la syntaxe de sélection et à fonctionner sans dépendances en fait un choix pratique et efficace pour les développeurs modernes.
« `markdown
Installation de Dasel
Pour installer Dasel, exécutez la commande suivante :
go install github.com/tomwright/dasel/v2/cmd/dasel@master
Pour plus de détails, consultez la documentation d’installation.
Choisir des données
Pour sélectionner des données dans un fichier JSON, utilisez la commande suivante :
echo '{"name": "Tom"}' | dasel -r json 'name'
Pour plus d’informations, référez-vous à la documentation de sélection.
Conversion de JSON à YAML
Pour convertir un fichier JSON en YAML, vous pouvez utiliser :
echo '{"name": "Tom"}' | dasel -r json -w yaml
Consultez la documentation pour plus de détails sur la sélection.
Modification de données
Pour mettre à jour une valeur dans un fichier JSON, utilisez :
echo '{"name": "Tom"}' | dasel put -r json -t string -v '[email protected]' 'email'
Pour plus d’informations, consultez la documentation sur la mise à jour.
Suppression de données
Pour supprimer une entrée d’un fichier JSON, utilisez :
echo '{"email": "[email protected]", "name": "Tom"}' | dasel delete -r json '.email'
Pour plus de détails, référez-vous à la documentation de suppression.
Complétion dans le terminal
Pour activer la complétion dans le terminal, ajoutez ce qui suit à votre fichier ~/.zshrc
et rechargez votre terminal :
export fpath=(~/zsh/site-functions $fpath)
mkdir -p ~/zsh/site-functions
dasel completion zsh > ~/zsh/site-functions/_dasel
compinit
Pré-commit
Ajoutez des hooks dasel
à votre fichier .pre-commit-config.yaml
:
- repo: https://github.com/TomWright/dasel
rev: v1.25.1
hooks:
- id: dasel-validate
Pour une exécution native de dasel, ou utilisez :
dasel-validate-docker
pour exécuter dasel avec les images Docker officielles.dasel-validate-bin
pour exécuter dasel avec le binaire officiel.
Problèmes et Discussions
Les discussions sont activées sur ce dépôt. Pour clarifier où communiquer, voici quelques indications :
Veuillez signaler un problème si :
- Vous découvrez un bug.
- Vous avez une demande de fonctionnalité clairement définie.
Ouvrez une discussion si :
- Vous avez une question.
- Vous n’êtes pas sûr de la manière d’utiliser dasel.
- Vous avez une idée mais ne savez pas comment la mettre en œuvre.
- Vous avez réalisé quelque chose d’intéressant avec dasel et souhaitez le partager.
- Tout autre sujet !
Fonctionnalités
- Interroger et sélectionner des données à partir de fichiers structurés.
- Mettre à jour des données dans des fichiers structurés.
- Créer des fichiers de données.
- Supporte plusieurs formats/types de données.
- Convertir entre différents formats/types de données.
- Utilise une syntaxe de requête/ sélecteur standardisée pour tous les formats de données.
- Aucune dépendance d’exécution requise.
- Compatible avec Linux, Mac et Windows.
- Peut être importé et utilisé dans vos propres projets.
- Exécution via Docker.
- Plus rapide que jq/yq.
- Hooks de pré-commit disponibles.
Documentation
La documentation officielle de Dasel est accessible à l’adresse daseldocs.tomwright.me.
Environnement de test
Vous pouvez tester les commandes dasel dans un environnement de test.
Le code source de cet environnement est disponible sur github.com/TomWright/daselplayground.
Performances
Selon mes tests, Dasel est jusqu’à 3 fois plus rapide que jq et 15 fois plus rapide que yq.
« `
Évolution des Observateurs d’Étoiles
Consultez le répertoire des références.