Releases: homeport/dyff
dyff version v0.5-beta.12
Add neat output to JSON
Refactor existing code to remove duplicates and introduce neat JSON
output in the neat package. Clean up the suite names at the same time.
Drop minor
in output
Remove the minor value change
from the output as this makes some
kind of statement on the severity of the change. Even a small change
can mean a lot.
dyff version v0.5-beta.11
Add brief output mode
Extend dyff
with a brief output mode that only reports a summary.
Add flag to set that dyff
exits with an exit status if there are diffs.
dyff version v0.5-beta.10
Add Debug mode
The debug mode was finally added to the CLI.
dyff version v0.5-beta.9
Clean up CLI flags and README
Fix missing usage details in CLI, rework the shorthand flag names,
adjust README and add checks to sub-commands to have the right
number of arguments. Harmonize the wording in the usage and help
texts.
Switch color definition
Change custom color definition in favor for colorful
package. This
includes a improved diff output with more color differences and indent
guide lines.
Add special minor change use case
The percent threshold naturally does not work well for short strings.
For use cases where only two characters are changes, condider it a
minor change, too.
dyff version v0.5-beta.8
CLI flag clean-up
Fixed missing usage information and harmonised the shorthand and long flag names.
Certificate output tweak
Changed the certificate output by adding grouping to subject and validation period as well as improvement to the coloring of the changes.
New flag for the neat output
The vertical indent helper guide lines can now be omitted in the output by using the respective flag.
Internal code improvements
Clean-up of test cases and unification of styles within the test cases. Code refactoring of the path code, which was moved into its own source file for readability.
dyff version v0.5-beta.7
Support non-standard identifier in named lists
Add function to guess the identifier if the default identifier name,
key, or id do not work. It will guess based on the fact if there is
a string key with string value, where each value is unique in the
list as long as the list has more than n
values with n
currently
being 3. This threshold might be subject to change in the future or
become configurable.
dyff version v0.5-beta.6
Fix YAML output issue with empty structures
Add checks to spot empty structures such as empty map or empty list
to properly display its empty inline JSON style in the YAML output.
v0.5-beta.5
Add True Color support
Use more than just 16 colors to highlight changes.
Add automatic check for color and true color support
Only use true color if terminal supports it. Add new flags to enforce colors or disable them.
Remove Go YAML library fork dependency
Rewrite of the output of YAML strings to avoid having a fork dependency.
Add 4-bit fallback option
In case true color is not supported, dyff
will fall back to 16 colors and automatically check which of the reduced color sets matches best.
Improve test cases
Added checks to verify remote location loading is properly handled.
dyff version v0.5-beta.2
Add True Color support
Replaced the previous ANSI coloring library with a new internal package that comes with True Color support.
Enhanced minor change output
If only a certain percentage of a string was changed, use a different output in the human style report to better visualise the minor change in the string. Currently, this threshold is configured to be roughly 10 %.
dyff version v0.5-beta.1
Implement change root support
Add flags and implementation code to support changing the root level of a given input file, or both. Depending on the actual object that is referenced by the path that serves as the new root level, there are use cases where a list should be translated into documents, or where the list is used as the root level itself.
This enables diffs between YAMLs (or JSON) with different types of structures, for example:
---
a: foo
---
a: bar
compared with
{
"items": [
{"a": "Foo"},
{"a": "bar"}
]
}
Big thanks to @adamdecaf for the idea.