Describe the bug
Parsing the file located here with yaml.parse(str, {merge:true}) takes a very long time. Could there be something non-linear in the length of the file?
Currently it's under 500k:
$ wc bibliography.yaml
18610 48360 489877 bibliography.yaml
To Reproduce
Steps to reproduce the behaviour.
const yaml = require('yaml');
const fs = require('fs');
fs.readFile("bibliography.yaml", 'utf8', (_, data) => {
console.time('yaml-parse');
const loaded = yaml.parse(data, {merge: true});
console.timeEnd('yaml-parse');
});
Output:
Expected behaviour
A clear and concise description of what you expected to happen.
By comparison, doing the same thing with js-yaml takes only:
const yaml = require('js-yaml');
const fs = require('fs');
fs.readFile("bibliography.yaml", 'utf8', (_, data) => {
console.time('yaml-load');
const loaded = yaml.load(data);
console.timeEnd('yaml-load');
});
Output:
Versions (please complete the following information):
- Environment: Node v18.17.1
yaml: 2.4.1
Additional context
Add any other context about the problem here.
Describe the bug
Parsing the file located here with
yaml.parse(str, {merge:true})takes a very long time. Could there be something non-linear in the length of the file?Currently it's under 500k:
To Reproduce
Steps to reproduce the behaviour.
Output:
Expected behaviour
A clear and concise description of what you expected to happen.
By comparison, doing the same thing with
js-yamltakes only:Output:
Versions (please complete the following information):
yaml: 2.4.1Additional context
Add any other context about the problem here.