On Tue, Jun 25, 2019 at 1:00 AM Johannes Schindelin <Johannes.Schindelin@xxxxxx> wrote: > > - extension location is printed, in case you need to decode the > > extension by yourself (previously only the size is printed) > > - all extensions are printed in the same order they appear in the file > > (previously eoie and ieot are printed first because that's how we > > parse) > > - resolve undo extension is reorganized a bit to be easier to read > > - tests added. Example json files are in t/t3011 > > It might actually make sense to optionally disable showing extensions. > > You also forgot to mention that you explicitly disable handling > `<pathspec>`, which I find a bit odd, personally, as that would probably > come in real handy at times, No. I mentioned the land of high level languages before. Filtering in any Python, Ruby, Scheme, JavaScript, Java is a piece of cake and much more flexible than pathspec. Even with shell scripts, jq could do a much better job than pathspec. If you filter by pathspec, good luck trying that on extensions. It's the same reason why I will not provide a flexible way to disable extensions. I'm not starting a JSON API for Git. I provide an index file in JSON format. You do what you want with it. You have a format easy enough to import to native data structures of your favorite language. > especially when we offer this as a better way > for 3rd-party applications to interact with Git (which I think will be the > use case for this feature that will be _far_ more common than using it for > debugging). We may have conflicting goals. For me, first priority is the debug tool for Git developers. 3rd-party support is a stretch. I could move all this back to test-tool, then you can provide a 3rd-party API if you want. Or I'll withdraw this series and go back to my original plan. -- Duy