-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Add an example usage for the inputs builtin #2216
Conversation
This is a great addition- But I think I'd recommend a slightly different example, and possibly show off the use of the $ echo 1 2 3 | jq -n 'reduce inputs as $i (0; . + i)'
6 This shows off the purpose a bit better- it lets you deal with a sequence of JSON values that you don't want to slurp up all at once into a single array. Imagine you were processing structured log output and you had a file with a large number of (potentially also quite large) log entries you wanted to reduce over- you'd want to avoid slurping all of that up into an array for memory reasons. Regardless, this is definitely a gap in our documentation- If you want to update your PR to use an example like the one I provided, I'd be happy to merge it! |
You can do that? I did not know. The documentation for the -n option needs an improvement too.
Something like that. Before I figured out the
when I finally figured out the above trick I switched to
|
Thank you @pkoppstein I'm sorry this PR fell through the cracks and I completely forgot about it. I have incorporated your feedback. |
CI failed for strange reasons. Close and reopen to try again. |
I am 99.8% certain this is an issue on your end (or upstream)
|
@stedolan @wtlangford I have received no feedback on my last patch which I have submitted almost a month ago. Any of the following would be preferable to complete silence:
|
Close and reopen to restart CI |
ping? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like a nice addition. However, in jq manual you need to use four space indentation instead of a code block for the example.
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#2169, close jqlang#1148) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036) - Add non-string examples of index/1, rindex/1 (close jqlang#1422)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#2169, close jqlang#1148) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036) - Add non-string examples of index/1, rindex/1 (close jqlang#1422)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#2169, close jqlang#1148) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036) - Add non-string examples of index/1, rindex/1 (close jqlang#1422)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036) - Add non-string examples of index/1, rindex/1 (close jqlang#1422)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
- Add error/0 and mentions null input behavior (close jqlang#2231) - Explain value iterator suffix syntax .foo[] (close jqlang#1047) - Mention array slicing is also zero-based (close jqlang#2094) - Add examples of input and inputs filters (close jqlang#2216, close jqlang#2470) - Improve sort_by about multiple values (close jqlang#2103, close jqlang#2467, close jqlang#2474) - Improve foreach section and simplify examples (close jqlang#1148, close jqlang#2169) - Fix recurse/1 document on how it is identical using recurse/2 (close jqlang#2036, close jqlang#2412) - Add non-string examples of index/1, rindex/1 (close jqlang#1422) - Simplify the example of truncate_stream/1 (close jqlang#1736)
It took me too long to figure out a simple trick: you can use
., inputs
to get a stream of all the inputs including the first one. I want to add this to the manual to make this more discoverable.