New Features
- Refactor exports (#99, #107)
- In addition to main export, use only
yaml/parse-cst
,yaml/types
andyaml/util
- Drop public export of custom tag objects
- Rename
tags
option ascustomTags
, and allow/prefer string identifiers for built-in custom tags - Add warnings to deprecated endpoints (set
_YAML_SILENCE_DEPRECATION_WARNINGS
to disable) - Drop babel-plugin-add-module-exports, using instead custom untranspiled CommonJS files for public exports
- In addition to main export, use only
- Add protection for exponential entity expansion attacks, such as Billion laughs and quadratic expansion attacks (#104)
- Add
maxAliasCount
option, defaulting to max 100 aliases for any anchor - For Object, stringify mapping key as YAML rather than JSON
- Add
- Simplify custom tag creation
- Add default stringifier
(item, ...) => item.toString(...)
for collections - Add
Schema#createPair(key, value, ctx)
; dropcreate{Map,Seq}
exports - Improve & expand documentation on custom tags
- Add default stringifier
- Preserve float formatting when parsed to Document (#97)
- Add optional
minFractionDigits
property to numbers - Add
EXP
format handling for float numbers - Allow scalar resolvers to return a Scalar instance
- Add optional
- Add
prettyErrors
option, which makes errors prettier and drops theirsource
reference (#96) - Add common ancestor
YAMLError
for error classes - Reorganise files, e.g. separating
tags/
fromschema/
and addingconstants.js
Bugfixes
- Tag presence in AST node now corresponds to explicit tags in YAML source (#97)
- Add
Pair#addToJSMap(ctx, map)
, fixing merge of anchor seq withmapAsMap: true