20 पॉइंट द्वारा GN⁺ 2024-08-19 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • ऐसा टूल जो selector string का उपयोग करके डेटा संरचनाओं को query और modify करने देता है
    • JSON, YAML, TOML, XML, CSV को सपोर्ट करता है और कोई runtime dependency नहीं है
    • अलग-अलग data formats को संभालने के लिए नया टूल सीखने की ज़रूरत नहीं
    • standard selector syntax का उपयोग करके एक बार सीखने पर सभी supported data formats को query/modify किया जा सकता है
  • homebrew, ASDF, scoop, docker, Nix या latest release के compiled binary से install किया जा सकता है
    • terminal autocomplete भी सपोर्ट करता है
  • Features
    • structured data files में डेटा query/select करना
    • structured data files के डेटा को update करना
    • data files बनाना
    • कई data formats/types का support
    • data formats/types के बीच conversion
    • सभी data formats में standard query/selector syntax का उपयोग
    • कोई runtime dependency नहीं
    • Linux, Mac, Windows पर उपलब्ध
    • अपने प्रोजेक्ट में import करके उपयोग किया जा सकता है
    • Docker के जरिए चलाया जा सकता है
    • jq/yq से तेज़
    • Pre-commit hook
  • Playground
    • dasel command को टेस्ट करने के लिए playground उपलब्ध है
    • playground का source code github.com/TomWright/daselplayground पर देखा जा सकता है
  • Benchmarks
    • टेस्ट नतीजों में dasel, jq से अधिकतम 3 गुना और yq से अधिकतम 15 गुना तेज़ है
    • benchmark directory में देखा जा सकता है

GN⁺ का सार

  • Dasel एक ऐसा टूल है जो कई data formats को support करता है और standard selector syntax के साथ उन्हें आसानी से query और modify कर सकता है
  • इसमें कोई runtime dependency नहीं है, यह कई platforms पर उपलब्ध है, और jq/yq से तेज़ है
  • कई installation methods और pre-commit hook देकर इसे development environment में आसानी से integrate किया जा सकता है
  • data formats के बीच conversion की ज़रूरत हो या कई data formats वाले projects हों, वहाँ यह उपयोगी है
  • इसी तरह के features वाले tools में jq, yq आदि शामिल हैं

1 टिप्पणियां

 
GN⁺ 2024-08-19
Hacker News टिप्पणियाँ
  • SQL स्टाइल सिंटैक्स का उपयोग करके non-relational data stores को क्वेरी करने का विचार अच्छा है
    • यह सोचने पर मजबूर करता है कि क्या सभी data storage formats को SQL से क्वेरी किया जा सकता है
  • अगर आप jq स्टाइल क्वेरी पसंद करते हैं, तो qq का उपयोग कर सकते हैं
  • Nushell का उपयोग करके कई तरह के formats को संभाला जा सकता है
  • लगता है हर quarter में ऐसे tools ध्यान खींचते हैं
    • मैं इंतज़ार करता रहता हूँ कि लोग ऐसे tools दिखाएँ या सूचीबद्ध करें जो उनके खास use cases को support करते हों
    • हमेशा बहुत कुछ सीखने को मिलता है
  • प्रोजेक्ट बढ़िया है, लेकिन एक standardized query language की ज़रूरत है
    • jq query syntax को आत्मसात करना मुश्किल है
    • अगर वह व्यापक रूप से अपनाया गया standard नहीं है, तो उसे सीखने में निवेश करने में झिझक होती है
    • JMESPath आगे का रास्ता हो सकता है
    • gron सहज है और दूसरे tools के साथ अच्छी तरह काम करता है
  • Go में ऐसे tools का बहुत इस्तेमाल किया है
    • कभी-कभी yaml को parse किए बिना सिर्फ transform करना होता है
    • मौजूदा yaml documents में data को select, replace और add कर पाना automation में बहुत मददगार है
  • ini files के लिए एक समान tool
  • tools की एक और सूची
  • हाल ही में AWS में JMESPath इस्तेमाल करने का अनुभव रहा
    • जिज्ञासा है कि कौन-सा structured data tool सीखने में आसान है, बेहतर documented है, और लिखने में तेज़ है
    • पूछता है कि क्या किसी को कोई अच्छा comparison article पता है
    • अभी भी डिफ़ॉल्ट रूप से jq का उपयोग करता हूँ
  • yq यह काम पहले से करता है, लेकिन README के अनुसार यह धीमा है