A parser for YAML, a human-friendly data serialization standard
- Update min Dart SDK to
- Fixed span for null nodes in block lists.
- POSSIBLY BREAKING CHANGE: Make
YamlMappreserve parsed key order. This is breaking because some programs may rely on the
- Fixed deprecated API usage in README.
- Fixed lints that affect package score.
- Set max SDK version to
<3.0.0, and adjust other dependencies.
- Remove use of deprecated features.
- Updated SDK version to 2.0.0-dev.17.0
- Stop using comment-based generic syntax.
- Properly refuse mappings with duplicate keys.
- Fix an infinite loop when parsing some invalid documents.
- Fix all strong-mode warnings.
- Remove the dependency on
path, since we don't actually import it.
- Fix more strong mode warnings.
- Fix two analysis issues with DDC's strong mode.
- Fix a bug with 2.1.4 where source span information was being discarded for scalar values.
- Substantially improve performance.
- Add a hint that a colon might be missing when a mapping value is found in the wrong context.
- Fix a crashing bug when parsing block scalars.
- Properly scope
SourceSpans for scalar values surrounded by whitespace.
Rewrite the parser for a 10x speed improvement.
Support anchors and aliases (
Support explicit tags (e.g.
!!str). Note that user-defined tags are still not fully supported.
%TAGdirectives are now parsed, although again user-defined tags are not fully supported.
YamlMapnow expose the styles in which they were written (for example plain vs folded, block vs flow).
yamlWarningCallbackfield is exposed. This field can be used to customize how YAML warnings are displayed.
Fix an import in a test.
Widen the version constraint on the
- Fix a few lingering references to the old
Spanclass in documentation and tests.
For consistency with
sourceNameparameters have been renamed to
sourceUrl. They now accept Urls as well as Strings.
Fix broken type arguments that caused breakage on dart2js.
Fix an analyzer warning in
Add new publicly-accessible constructors for
YamlNodesubclasses. These constructors make it possible to use the same API to access non-YAML data as YAML data.
YamlExceptioninherit from source_map's
SpanFormatException. This improves the error formatting and allows callers access to source range information.
- Fix a variable name typo.
Backwards incompatibility: The data structures returned by
loadYamlStreamare now immutable.
Backwards incompatibility: The interface of the
YamlMapclass has changed substantially in numerous ways. External users may no longer construct their own instances.
Maps and lists returned by
loadYamlStreamnow contain information about their source locations.
loadYamlNodefunction returns the source location of top-level scalars as well.
- Improve error messages when a file fails to parse.
- Ensure that maps are order-independent when used as map keys.
YamlMapclass is deprecated. In a future version, maps returned by
loadYamlStreamwill be Dart
HashMaps with a custom equality operation.