Questa è una versione precedente. La versione attuale è la 2.5.0. JSON diff and patch 2.5.0 · Data di rilascio:
File di installazione 2.3.0
| Architettura | Tipo | Ambito | Dimensione | Scarica | SHA256 |
|---|---|---|---|---|---|
| 64 bit | Portable | — | — | github.com | VirusTotal |
| ARM64 | Portable | — | — | github.com | VirusTotal |
Link e hash SHA256 provengono dal manifest della community di Gestione pacchetti Windows. Prima di eseguire il file scaricato conviene confrontarne l’hash.
Note di rilascio
# PathOptions
This release introduces PathOptions, a powerful new feature that enables precise control over how different parts of your JSON/YAML data are compared. PathOptions allow you to apply different comparison semantics to specific paths within your data structures, giving you fine-grained control over diff behavior.
Key Features:
- Targeted comparison options: Apply SET, MULTISET, precision, or setkeys options to specific paths using the syntax `{"@":["path","to","target"],"^":[options]}`
- Path isolation: Options only affect their specified paths and don't leak globally, allowing you to mix different comparison semantics in the same diff
- Enhanced array dispatch: Fixed critical bug where PathOptions with empty paths (root level) weren't being applied correctly for array dispatch
- Comprehensive documentation: Complete v2 Diff Language guide with new EBNF grammar, PathOption integration examples, and updated CLI help showing flag equivalents
- Extensive test coverage: Added 24 test cases demonstrating PathOption functionality across various data structures and edge cases
Examples:
### Apply SET semantics to specific array while others remain lists:
jd -opts='[{"@":["tags"],"^":["SET"]}]' a.json b.json
### Multiple PathOptions with different semantics
jd -opts='[{"@":["items"],"^":["SET"]}, {"@":["price"],"^":[{"precision":0.01}]}]' a.json b.json
This release maintains full backward compatibility while adding powerful new capabilities for sophisticated diff control scenarios.
# What's Changed
- Fix unicode color diff. by @roberthoenig in #93
- add missing closing parenthesis by @mohammadrezaataeii in #98
# New Contributors
- @mohammadrezaataeii made their first contribution in #98
Full Changelog: https://github.com/josephburnett/jd/compare/v2.2.7...v2.3.0