This repository has been archived by the owner on Apr 19, 2022. It is now read-only.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^1.10.2
->^2.0.1
Release Notes
eemeli/yaml
v2.0.1
Compare Source
v2.0.0
Compare Source
This update has been in the works for the last year and a half. Its prerelease versions have been thoroughly tested by a wide number of users, and I think it's finally ready for "actual" release, for use in the mythical "production".
The breaking changes introduced here are mostly originating from the v1 CST parser having become a rather difficult beast to work with. So it's here rewritten pretty much completely, now with a lexer as a first stage. Along the way, the whole project was rewritten in TypeScript and the export paths and options refactored pretty deeply.
If you've been using the library just via its
parse()
,parseDocument()
andstringify()
functions, then it's quite likely that none of the changes affect your experience in any way. However, if you've been doing something more involved, then I would strongly recommend that you review the library's documentation site for the v2 docs.Going forward, it's finally time to start experimenting with new YAML spec features that may eventually be included in YAML 1.3 and later. Those will be made available by specifying the
version: 'next'
option. However, beware! Any features available this way may be removed or have their API broken by any minor release of this library, and no compatibility guarantees with other libraries are given. In general, semver compatibility is guaranteed for features that are explicitly included in the documentation; everything else should be considered as internal implementation details.The following is an overview of the breaking changes and new features introduced in each of the prerelease steps leading up to this release; the individual releases' notes and the PRs will contain more detail, along with specific migration guides.
BREAKING CHANGES
v2.0.0-0
set()
in mappings & sequences (#185)v2.0.0-1
resolve()
API (#201)v2.0.0-3
'yaml/parse-cst'
endpoint (#223)v2.0.0-4
'yaml/types'
and some of'yaml/util'
into'yaml'
(#234)type
property from all but Scalar nodes (#240)v2.0.0-5
tokens
namespace asCST
(#252)[start, value-end, node-end]
(#259)error.offset
witherror.pos: [number, number]
(#260)v2.0.0-6
v2.0.0-9
v2.0.0-10
doc.directives
now indicates it as optional (#344)v2.0.0-11
YAML.defaultOptions
is removed (#346)directives.marker
is renamed asdirectives.docStart
(#371)v2.0.0
New Features
v2.0.0-0
set()
&setIn()
on doc with empty contents (#174)defaultKeyType
option for finer control of scalar output (#179)v2.0.0-1
asBigInt
option for sexagesimal integer valuesv2.0.0-3
logLevel
option (#215)visit(node, visitor)
to'yaml'
(#225)v2.0.0-4
'yaml/util'
that weren't exposed beforev2.0.0-5
v2.0.0-6
uniqueKeys
option (#271)COMMENT_SPACE
error; useMISSING_CHAR
for it insteadv2.0.0-7
<<
merge keys, in addition to alias valuesv2.0.0-8
aliasDuplicateObjects
(#299)clone()
methods to Document, Directives, Schema and all Nodes (#304)v2.0.0-9
keepSoureToken
parse option, addingsrcToken
values to Nodes (#309)customTags
is defined (#325)v2.0.0-10
v2.0.0-11
directives.docEnd
, for...
marker (#371)YAML.visitAsync()
(#372)v2.0.0
'next'
YAML versionConfiguration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.