jnv icon indicating copy to clipboard operation
jnv copied to clipboard

How about replacement `jq` with `jaq`?

Open ynqa opened this issue 11 months ago • 5 comments

At the time of v0.1.0, the author deemed it most appropriate to use the original jq.

However, managing C-related stuff during build time had to be undertaken, and this was underestimated at the release of v0.1.0. After actually releasing and taking a look the installation error issues that were raised, it became apparent that continuing to use jq might not be the best decision.

Then, there is a project in Rust called jaq, which is a jq-clone. I hope to discuss whether or not to replace jq with jaq, and whether it is feasible to do so.

Here's a rough outline of the pros and cons:

jq (j9)

  • pros
    • As an original implementation, all filters defined here are, of course, available for use
  • cons
    • Requires management of C dependencies, which might pose issues during build phase
      • https://github.com/ynqa/jnv/issues/6
      • https://github.com/ynqa/jnv/issues/13
      • https://github.com/ynqa/jnv/issues/1

jaq

  • pros
    • pure Rust, there is no need to manage C dependencies
  • cons
    • jq-clone, not all filters may be supported
      • e.g. https://github.com/01mf02/jaq/issues/112
      • My concern is with this point. Ideally, it would be better if all features were available for use (Or maybe it's sufficient if only the basic filters are available...?)

ynqa avatar Mar 23 '24 03:03 ynqa