- Notifications
You must be signed in to change notification settings - Fork51
Releases: sclevine/yj
Releases · sclevine/yj
yj v5.1.0
Compare
Could not load tags
Nothing to show
{{ refName }}defaultLoading
Changes
- The
-t
flag now parses/emits TOML v1.0.0 instead of v1.0.0-rc.1. - Escaped quotes in TOML keys are now supported (#20).
- The major version is now reflected in the module path (#22).
gopkg.in/yaml.v3
is upgraded to496545a.- TOML again uses
github.com/BurntSushi/toml
(v1.1.0), fixing several upstream bugs.
Notes
- The TOML encoder/decoder use new strategies for maintaining order (dynamic struct generation & key tracking).
Installation
Available for macOS via Homebrew:
$ brew install yj
Binaries for Linux, macOS, and Windows are attached below.
Alternatively, you may also install yj viago get
:
$ go get github.com/sclevine/yj/v5@v5.1.0
yj
is also available as aDocker image.
Assets9
yj v5.0.0
Compare
Could not load tags
Nothing to show
{{ refName }}defaultLoading
Changes
- Conversions between all formats now preserve map order.
- The
-t
flag now parses/emits TOML v1.0.0-rc.1 instead of v0.4.0. - The
-v
flag now prints the version of yj (#9). - YAML conversions now parse/emit floats unambiguously (#3).
- The
-n
flag is now enabled by default when converting between formats that both supportNaN
,Inf
, etc.
Notes
- YAML now uses
gopkg.in/yaml.v3
instead ofgopkg.in/yaml.v2
. - TOML now uses
github.com/pelletier/go-toml
instead ofgithub.com/BurntSushi/toml
. - For most formats, preserving map order required manually parsing the AST of the various data format libraries. This change improved other formatting issues, such as the ambiguity of floats in YAML. However, it also increased the complexity of yj significantly -- please report bugs!
Installation
Available for macOS via Homebrew:
$ brew install yj
Binaries for Linux, macOS, and Windows are attached below.
Alternatively, you may also install yj viago get
:
$ go get github.com/sclevine/yj
Assets8
yj v4.0.0
Compare
Could not load tags
Nothing to show
{{ refName }}defaultLoading
Release Notes
Features
- Add
-i
flag to indent JSON and TOML output (#4).
Breaking Changes
TOML output is now unindented by default. Pass
-i
to use the previous behavior.BurntSushi/toml applies more aggressive indentation compared to the examples in the TOML spec, and the TOML spec does not recommend (or recommend against) indenting. Opt-in indentation seems preferable.
Assets5
yj v3.1.0
Compare
Could not load tags
Nothing to show
{{ refName }}defaultLoading
Release Notes
Features
- Reduce memory footprint
- Improve output when input is empty
- Update usage text
Maintenance
- Setup CI
- Refactor extensively
- Add integration tests
- Switch to proper semver
Assets5
yj v3.0
yj v2.0
Compare
Could not load tags
Nothing to show
{{ refName }}defaultLoading
- Add support for TOML
- Remove support for candiedyaml parser
Assets5
yj v1.0
Compare
Could not load tags
Nothing to show
{{ refName }}defaultLoading
opal:yj stephen$ yj -hUsage: yj [-][rcjenkh]Converts stdin from JSON/YAML to YAML/JSON.-r Convert JSON to YAML instead of YAML to JSON-c Use CandiedYAML parser instead of GoYAML parser-n Do not covert Infinity, -Infinity, and NaN to/from strings-h Show this help messageYAML to JSON options:-e Escape HTML in JSON output (ignored for JSON to YAML)JSON to YAML (-r) options:-y Use a YAML decoder instead of a JSON decoder to parse JSON-k Attempt to parse keys as JSON objects/numbers