v1.0.0rc2
Pre-release
Pre-release
Breaking changes
- Python API:
The API has undergone significant changes in how formatting options are handled.- The formatting parameters to
remarshal.remarshal
have been removed and replaced with format-specific option classes. It makes clear what format uses what options. - While this is a breaking change, it should have no impact as Remarshal is used through its command-line interface.
- The formatting parameters to
--json-indent
and--yaml-indent
are now synonyms. See below for why. This should also have minimal impact.
Non-breaking changes
- New Python output format:
Added support for outputting data as Python code. - Unified formatting options:
There are several improvements to make the formatting options more consistent.- A new unified
--indent
option. The option acts as a synonym for--json-indent
and--yaml-indent
. The old options remain available, though they have been hidden in the help message. - A new
--width
option acts as a synonym for--yaml-width
. Besides YAML, it sets the width for Python output.
- A new unified
- Improved the limitations section in the readme.
Upcoming v1.0
The YAML 1.2 upgrade in version 0.18 caught some downstream users off guard when their output documents were no longer valid YAML 1.1. We could have signaled big breaking changes with an increment to the major version, but Remarshal was still version 0.x. We should be done with minor breaking changes now. Let's not postpone version 1.0 because our new YAML library isn't stable. We will release version 1.0 soon. Going forward, we will be able to use semantic versioning to signal breaking changes.