Skip to content

Releases: josephburnett/jd

v1.9.1

19 Aug 15:13
Compare
Choose a tag to compare

32aea9a Set version 1.9.1
c3c342b V2 no longer separate module

v1.9.0

18 Aug 22:28
Compare
Choose a tag to compare

This release includes a preview of the v2 API. The v2 API
produces minimal diffs for lists. And it includes a new format
with context to support it. You can try it out with the -v2
flag.

bd4d7e2 Set version 1.9.0
6125a15 Make vendor
7985941 Add vendor target before release
2aef56f Reformat .PHONY directives
128d245 Update README.md
1f854f4 Clarify -precision comments
6446402 Noop JSON Patch [] and noop JSON Merge Patch {}
6132595 Port precision to v2
3846799 Use slices from experimental
0b05a7b Revert "Upgrade v2 to 1.21"
ef44caa Upgrade v2 to 1.21
1bccd65 go mod tidy and vendor in lib and v2
5509377 go mod vendor
04a032d Only set after context on a single diff element
60a3e81 Previous should be from list b
0beb845 Update dependencies
6a3563e Add the -v2 flag to try out the new API
17354e1 Merge branch 'master' into lcs3
53844ff A few more context tests
ec9f62f Check before and after context
8b0379e More list patch test context
6929b83 Start new diff element after reading after context
c4fcc9e Read diff context
6035605 Fix object test expectation
fa7a502 Fix some edge cases
5ce3586 More simple list diff implementation
8e742b1 Web UI with arguments give error
0a1ac0a Accept number-like keys in JSON Pointers
1e10b14 Prevent -precision with -set or -mset options
56b2cb3 Add precision to the commandline
015cbcc Add test for precision in object
cf8d025 Update instructions for including the UI
0c20aab Fix context before
7b15f05 Add context to diff
c30f084 More list patch tests for LCS
7c606b5 More list diff tests for LCS
cec575c Advance path cursor when both adding and removing
a466ab6 Do not reverse path cursor
7ebb35b Apply patch diff adds in reverse order
4d0e97b Render patch diff with multiple add and remove
ea86e0d Special case for replacing whole list
434971c Bring back checkDiffElement for object assertion
82adb4f Better expectation for regression test
ad176de Special case for -1 index
97eee0c New list patch with multiple values
d17a826 Fix list test expectation for lcs
245125f Give empty object and lists different hashes
5ae2bc8 LCS impl

v1.8.1

25 Feb 02:16
Compare
Choose a tag to compare

11eae3c Set version 1.8.1
9af84e9 Accept number-like keys in JSON Pointers

v1.8.0

24 Feb 16:23
Compare
Choose a tag to compare

b7875ef Set version 1.8.0
68c7e5c Prevent -precision with -set or -mset options
16f3e61 Add precision to the commandline
31551c5 Add test for precision in object
a2d4783 Add precision unit test
2ada885 Revert main.go from v2 back to v1 (#65)
05da460 Iss 057 (#64)
f6f8e4b Add diff and Bash syntax highlighting to README.md (#60)
dc98433 Update Makefile
b92b539 Update go.yml
5512577 Create go.yml
4324495 Use v2 format
7b2e87c Add public SET and MULTISET enums
f00afb6 Fuzz v2
ea0daab Remove metadata version
687aaf2 Fix remaining tests
70e13e6 Fix string and void tests
e6f2075 Fix set and object tests
d72ea9f More fixed tests and a few small bugs
5509cdb Fix a few tests to expect new metadata
e19751a Parse metadata lines
8a9931a Add metadata to the top of each diff element
97c701e Last refactoring to compile with options
8660d00 More updates replacing metadata with options
312e90e More refactoring with new diff types
8289497 New path type
a3681e1 Rewriting diff element types
0d9a0c5 Deleting some metadata stuff
a40b459 More v2 thoughts
9ac8932 V2 notes
05d8574 Test lib v2
3c11523 Add before and after context
052e175 Create v2 alpha
b5d115c Exit code 0 on no diff

v1.7.1

19 Feb 04:57
Compare
Choose a tag to compare

10b7565 Set version 1.7.1
bebcd85 Exit code 0 on no diff

v1.7.0

12 Feb 18:42
Compare
Choose a tag to compare

Adds ability to drive Git diffs and apply multiple patch formats.

ec27b98 Set version 1.7.0
3db3045 Support multiple patch formats
7a5a7d6 Translate diff only when format changes.
45fb635 Only translate values when the format changes.
c79c2ec Add --git-diff-driver flag.

v1.6.1

08 Aug 14:38
Compare
Choose a tag to compare
  • Bug fixes
  • Add .exe to Windows binaries

41c901c Set v1.6.1.
d9bab07 Merge branch 'master' into release-1.6.
128b555 Add .exe to Windows binaries.
98f2c9e Make RenderOption part of Metadata to avoid breaking code.
b8c8bc6 Revert "Fix broken main.go after changing Yaml and Json option types."
0259c4b Fix broken main.go after changing Yaml and Json option types.
ab369ff Comment Diff and rendering methods.
3f327b8 Minor type in RenderOption and Metadata comments.
fe155b1 Comments for JsonNode.
00ebe1f Json and Yaml methods accept RenderOption instead of Metadata.
e04fb95 Put internal methods in separate, embedded interface to make the godoc rendering cleaner.
a246ff2 Remove unnecessary metadata from internal raw method.
d58d305 Add placeholders for set and multiset semantics.
9b94985 Fix colon in localhost.
9505dec Replace list, set, mset merge patch with common impl.
f9a1a5d Pull out merge patch case from list patch.
79df83c Fix misspell in diff_read.go.
801cea5 Gofmt web/serve/serve.go.
6e608ad Staticcheck fixes.
c2c4cd4 Find issues target.
c9372e3 Add go report card.
88f4d78 Add logo and try it out link to README.png.
3358d22 Add logo_small.png.
0dfb9a3 Remove build-docker from push-docker and push-latest targets.
8a60373 Add logo_small.png.
9e117d1 Remove build-docker from push-docker and push-latest targets.
34dfc08 Update README.md
075cafe Update README.md usage.
028873d Add back run-in-docker instructions.

v1.6.0

22 Jun 20:31
Compare
Choose a tag to compare
  • Added JSON Merge Patch (RFC 7386) support. Jd can now produce and apply both JSON Merge Patch and a subset of JSON Patch (RFC 6902) files. Use the -f to select the CLI output format or select the Diff Format option in the UI.

fab3c38 Vendor dependencies because Docker can not seem to download them like ever.
e2056ca Update Dockerfile to golang 1.18.
79536ad Set version 1.6.0.
042cc02 Stop make when version not set.
3bf0e16 Separate build and push steps of release and add version and dirty checks.
25cd5a1 Add RFC numbers to diff formats.
7a28e54 Add merge diff format to main.go.
78ce844 Add merge format to UI.
d246d9b Add logo.png.
36256f8 Continue fuzzing other configurations after encountering an unsupported object key.
893b388 Fuzz make target.
6e999b5 Emit void new value for merge patches internally.
68e766a Ignore voids when reading merge diffs.
8141d7b Create empty object in merge.
61a069b Expect voids for deleting internally.
52900a7 Expect void when reading null merge patch.
3742455 Represent JSON merge nulls as voids internally.
94b98dd Add merge patch fuzzing.
68ac5c2 Delete object keys when encountering void node.
187cf56 Fix read void merge patch.
d5a0ad9 Add missed diff_common.go file.
8b3cfac Drop object idKeys.
027b386 Common patch method.
6ee0475 Put color diff behind flag.
9d24bb1 Merge pull request #47 from neutralino/color_output_diff
00cda0f add color to output diff
055209b Diff RenderMerge and initial tests.
baf7d7c Fix merge patch replacing list with object.
c2b8233 Fix merge patch object with different type.
8191df7 RFC 7386 example tests.
a3aad4a Make merge metadata all caps because it applies to the whole path.
a36242d Read merge patch.
8488135 Merge strategy for new object elements.
d78a368 Add a void node when deleting with merge strategy.
5f91785 Handle merge metadata case with non-empty path.
e1330fa Number merge diff test.
c410a55 Null merge diff tests.
e6ffef2 Set merge diff.
ab4339f Fix merge diff to replace entire multiset.
ef3931c Helper function prependMetadataMerge.
f0c36b4 Two multiset merge tests that do not pass yet.
d7908f9 List diff merge strategy.
9d97ec6 Add patch strategy to diff signature so we know what to produce.
1c36706 Void merge strategy.
e20ae8e String merge patch.
046f9df Set merge patch strategy.
e79a34f Create JSON objects on demand during merge patch.
98a7e7b JSON merge patch null deletes a node.
e2382c0 Multiset merge patch strategy.
4bfc6d0 Test for number merge patch.
72a7310 Replace entire array with merge patch strategy.
e5ec41f A few more bool merge tests.
a3a5252 Allow metadata on root node for merge patch strategy.
21769de Add patchStrategy to internal patch functions.
2a65693 Rename poly.go as metadata.go.
18549ae Add merge metadata.
14f8e51 Convert object tests into table tests.
3e68104 Test cleanup for consistency.
d24e5c5 Delete unused checkNotEqual metadata input.
5f49c10 Rename array_test as list_test.
8363e76 Update installation to include brew install jd.
9de00ba Update usage.
16cb05b Remove build test_fuzz tag and backported fuzz tests.
f7e8fb2 Upgrade dependencies.

v1.5.2

30 Mar 21:00
Compare
Choose a tag to compare

This release is composed primarily of fixes for bugs discovered via Golang fuzzing.

2098fee Set version 1.5.2.
ea33d75 Merge branch 'master' into release-1.5
8d0a261 Add screenshot of 1 billion fuzz runs!
e78e11e Return error when JSON Pointer contains object key "-".
c5d2ae9 Skip JSON Patch diffs with object key "-".
6da51dc Skip tests with JSON Pointer object keys that look like numbers.
c64c0ef Escape object keys in JSON Pointer format.
d9e84f8 Comment JSON pointer strings with only numbers as with pseudo RFC 6901 ~2.
525ed82 Use metadata when comparing object values.
5048bb6 Empty objects start with a constant hash.
2caa226 Fuzz failure: incorrect diff with nested arrays with set semantics.
aa1531e Go from backward when removing elements from a list.
d62e247 Dispatch before comparing to set or multiset.
64f59d4 Expand baseline corpus.
bd2fc26 Check for void nodes on JSON Patch render.
7064efc Convert remove value to node before comparing to test node.
86f1e19 Backport failing fuzz test.
9c67979 Add failing fuzz test to corpus.
50f3ced Fuzz all formats and array semantics.
0eeba92 Check round trip fuzzing.
b37264c Add stub fuzz test.
ed4dbb5 Add arm64 build targets.

v1.5.1

10 Feb 22:38
Compare
Choose a tag to compare

33f23de Set version 1.5.1.
52de8b0 Add arm64 build targets.