dyff

/ˈdʏf/ - diff tool for YAML files, and sometimes JSON

MIT License

Stars
1.3K
Committers
22

Bot releases are hidden (Show)

dyff - dyff release v1.4.2

Published by harbourmaster over 3 years ago

Fixes #165 to add arm64 to the list of supported architectures for both Linux and macOS systems. Thank you @maciej-wilczynski for bringing it up.

Changelog

fd36841 Bump to Go 1.16

dyff - dyff release v1.4.1

Published by harbourmaster over 3 years ago

Internal intermediate release that includes changes to onboard arm64 to the list of supported architectures.

Changelog

05b1174 Add arm64 to the list of architectures
144472f Bump github.com/onsi/ginkgo from 1.16.2 to 1.16.4
691f996 Bump github.com/onsi/gomega from 1.12.0 to 1.13.0
eccc3f6 Fix Go version setup in GitHub Actions

dyff - dyff release v1.4.0

Published by harbourmaster over 3 years ago

Fixed #157 by adding --filter flag to between command. Both path styles are supported when using the filter. Thank you to @rvignesh89 for the idea and @dalbar for the implementation.

Changelog

c0b4213 Add support for DotStyle filter paths
54ecad4 Reports can be filtered on set of paths
6d5a567 Reports can be filtered on set of paths
3699ab3 Bump github.com/gonvenience/ytbx from 1.4.0 to 1.4.1
981751a Move tool install into separate step
0893152 Update dependabot.yml
cb4c0e5 Upgrade to GitHub-native Dependabot
34a83aa Bump dependencies
2d2bfe9 Add snap install instructions to README
cf593b3 Add snap build and upload

dyff - dyff release v1.3.0

Published by harbourmaster over 3 years ago

Changed dyff to be kubectl diff compatible using the KUBECTL_EXTERNAL_DIFF environment variable. See README for instructions on how to use it. Thanks to @mrVanboy for bringing it up in #148.

Changelog

903d468 Change dyff to be kubectl diff compatible (#148)

dyff - dyff release v1.2.4

Published by harbourmaster over 3 years ago

Fixed issue #146 by bumping neat dependency to a new release that is properly quoting special strings. Thank you @hubiierik for reporting the issue.

Changelog

55e0c2f Fix invalid YAML output issue
cf16ae5 Fix inconsistent error messages
2ea4d9b Make yaml command flags normal flags
df24bba Sort simple list entry for hash calculation

dyff - dyff release v1.2.3

Published by HeavyWombat over 3 years ago

Fixed issue #143 where duplicate entries in a simple list were not handled as expected.

Changelog

8a35140 Bump dependencies
d5c56c9 Increase gocyclo threshold to 20
a2425f9 Improve simple list comparison with duplicates
c11592d Recreate Go sum file
65ea5a2 Bump github.com/onsi/gomega from 1.10.5 to 1.11.0

dyff - dyff release v1.2.2

Published by HeavyWombat over 3 years ago

Fixed issue #133 where a multi document YAML file was not correctly written. Thank you @kondurian for finding and reporting the issue.

Removed the --debug flag as it was never implemented internally.

Changelog

bada7c0 Fix multi document YAML restructure issue
c2f1e58 Refactor yaml command test case contexts
b869fe7 Bump bunt package to use new color flags
db8f588 Add develop branch to build and test action
202b007 Fix unhandled error warning for YAML delete
ca58449 Remove unused debug mode
2b41915 Fix TYPOs in comments and messages
0839c2d Fix grammar finding
aa82c8d Add .idea to .gitignore
539e435 Fix Makefile finding
feb4083 Reorganised import paths
5c09f43 Fix test command for tap
d54f768 Configure build and test to ignore tags
4ed2581 Fix missing HOMEBREW_TAP_GITHUB_TOKEN variable
e4d9ba9 Remove arm64 support in GoReleaser
f6e4968 Update Go Sum file
7ecb6dd Remove dot in GoReleaser brew strategy

dyff - dyff release v1.2.1

Published by HeavyWombat over 3 years ago

Refresher release that only contains updated dyff banner creation code.

Please note: This is the first release that uses the new GoReleaser based build. The most notable change is that the release binaries are now shipped as tarballs. The respective Shell script helpers were updated to support the new download locations.

Changelog

d0aafa5 Add release name template to GoReleaser
1c279fb Add option to have commit timestamp for build
4c0a36a Bump github.com/spf13/cobra from 1.1.1 to 1.1.3
921733d Move badges into headline
44d09f0 Replace build status badge to GitHub action status
dfec68c Replace GoDoc with Go Reference
332391f Introduce release automation using GitHub actions
100b36a Remove Travis configuration
958bd42 Introduce GoReleaser configuration
f59a7fa Introduce build and test GitHub action
5dc3c13 Rewrite download script to be generic
8c720a1 Refactor banner creation code
cb8e95e Bump github.com/gonvenience/bunt from 1.2.0 to 1.3.0
f659297 Bump github.com/lucasb-eyer/go-colorful from 1.0.3 to 1.2.0

dyff - dyff release v1.2.0

Published by HeavyWombat over 3 years ago

Added new flag --detect-kubernetes, which enables additional logic to detect list entries by name in Kubernetes lists, for example kubectl --namespace foobar get pods --output=yaml. These lists use the name key that is nested under the metadata key.

Big thanks to @tmc for the PRs.

dyff - dyff release v1.1.4

Published by HeavyWombat almost 4 years ago

Fixed issue #132 where Go printf-style format markers where evaluated in the output strings. Thanks to @telyn for finding the issue.

dyff - dyff release v1.1.3

Published by HeavyWombat almost 4 years ago

Fixed the same escape character issue for the compact JSON output (--plain).

dyff - dyff release v1.1.2

Published by HeavyWombat almost 4 years ago

Fixed json command output issue where escape characters were lost in the output. Thanks to @SaschaSchwarze0 for finding these issues.

dyff - dyff release v1.1.1

Published by HeavyWombat almost 4 years ago

Fixed issue #120 by bumping to a newer version of neat that comes with a fix for the JSON timestamp quoting problem.

dyff - dyff release v1.1.0

Published by HeavyWombat about 4 years ago

Added new command last-applied, which creates a difference report using a Kubernetes YAML and the previous configuration of that YAML that is stored in the special metadata field kubectl.kubernetes.io/last-applied-configuration.

Example:

$ kubectl --namespace foobar get configmap foo-settings --output yaml | dyff last-applied -
     _        __  __
   _| |_   _ / _|/ _|  between /metadata/annotations/kubectl.kubernetes.io/last-applied-configuration
 / _' | | | | |_| |_       and <STDIN>
| (_| | |_| |  _|  _|
 \__,_|\__, |_| |_|   returned one difference
        |___/

data.foo
  ± value change
    - bat
    + bar

dyff - dyff release v1.0.5

Published by HeavyWombat about 4 years ago

Fixed issue where dyff throws a panic when trying to report a change to a timestamp.

Thanks to @kernel164 for bringing up the issue (#111).

dyff - dyff release v1.0.4

Published by HeavyWombat about 4 years ago

Added new command line flag --ignore-order-changes (short option is -i, think ignore) to omit order changes in the report.

Thanks to @Self-Perfection for bringing up the issue (#108).

dyff - dyff release v1.0.3

Published by HeavyWombat about 4 years ago

Added new command line flag --omit-header (short option is -b, think brief) to omit the dyff banner header with the file names and the summary report.

Thanks to @abourree for bringing up the issue (#105).

dyff - dyff release v1.0.2

Published by HeavyWombat over 4 years ago

Fixed wrong indention in output of type changes.

dyff - dyff release v1.0.1

Published by HeavyWombat almost 5 years ago

Fixed issue with panic when comparing files that use YAML anchors and aliases.

Fixed wrong indention in lists in lists.

dyff - dyff release v1.0.0

Published by HeavyWombat almost 5 years ago

First dyff release with the complete re-work of the internal logic to solely rely on Go YAML library v3 Node type. For the library part of dyff, this brings a much cleaner interface for all functions and code simplifications. The command line tool part of dyff mostly benefits from the possibility to have YAML Anchors and Aliases as well as comments natively supported.