Update dependency peggy to v4 (main)#212280
Conversation
|
/ci |
1 similar comment
|
/ci |
|
Pinging @elastic/kibana-visualizations (Team:Visualizations) |
|
Pinging @elastic/kibana-data-discovery (Team:DataDiscovery) |
|
@lukasolson @markov00 This is a big version bump, but other than some minor test failures due to error formatting changes, it passes CI. Any idea if merging this would be a bad idea, or do we think it makes sense? |
4b66868 to
89ab389
Compare
|
/ci |
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
|
/ci |
lukasolson
left a comment
There was a problem hiding this comment.
Checked it out locally to make sure the build steps are still working properly when we make changes to the grammar.peggy files and it seems as if they are.
|
/ci |
|
Just kicked off another CI build for this since it doesn't happen automatically when merging |
💚 Build Succeeded
Metrics [docs]Async chunks
Page load bundle
History
|
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [peggy](https://peggyjs.org/) ([source](https://github.com/peggyjs/peggy)) | devDependencies | major | [`^1.2.0` -> `^4.2.0`](https://renovatebot.com/diffs/npm/peggy/1.2.0/4.2.0) | --- ### Release Notes <details> <summary>peggyjs/peggy (peggy)</summary> ### [`v4.2.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#420) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.1.1...v4.2.0) Released: 2024-11-19 ##### New features - [#&elastic#8203;568](https://github.com/peggyjs/peggy/pull/568) Upgrading to TypeScript 5.6 allowed for generating `parser.d.ts`, which should may help people that use Peggy programmatically in nonstandard ways. ##### Bug fixes - [#&elastic#8203;567](https://github.com/peggyjs/peggy/issues/567) Load config files and plugins correctly on Windows by using file: URIs in import(). ##### Documentation - [#&elastic#8203;566](https://github.com/peggyjs/peggy/pull/566) Slight tweaks to document generation. ### [`v4.1.1`](https://github.com/peggyjs/peggy/releases/tag/v4.1.1) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.3...v4.1.1) v4.1.0 did not actually get published due to a workflow issue that should be sorted out now. ##### New features - [#&elastic#8203;477](https://github.com/peggyjs/peggy/issues/477) Option to output .d.ts files next to .js from CLI. - [#&elastic#8203;530](https://github.com/peggyjs/peggy/issues/531) Allow es6 plugins from CLI - [#&elastic#8203;532](https://github.com/peggyjs/peggy/issues/532) Allow es6 options files from the CLI ##### Bug fixes - [#&elastic#8203;531](https://github.com/peggyjs/peggy/issues/531) Clean up rollup hacks from CLI code. - [#&elastic#8203;514](https://github.com/peggyjs/peggy/issues/514) Allow execution of the `peggy` binary on Windows by handling node runtime flags manually, executing a sub-instance of node to actually run `peggy`. - [#&elastic#8203;538](https://github.com/peggyjs/peggy/pull/509) Fixed error in TS types for `peg$maxFailExpected` and `peg$maxFailPos`. - [#&elastic#8203;551](https://github.com/peggyjs/peggy/pull/551) Moved to package-extract instead of a custom script for version file generation. ### [`v4.0.3`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#403) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.2...v4.0.3) Released: 2024-06-19 ##### New features - [#&elastic#8203;509](https://github.com/peggyjs/peggy/pull/509) Add and implement ES6 export button ##### Bug fixes - [#&elastic#8203;493](https://github.com/peggyjs/peggy/issues/493) Allow use of an empty array, null, or undefined as allowedStartRules option - [#&elastic#8203;505](https://github.com/peggyjs/peggy/pull/505) Fix vscode-eslint settings to work with eslint flat config - [#&elastic#8203;507](https://github.com/peggyjs/peggy/pull/507) Remove stray semicolon in CSS - [#&elastic#8203;508](https://github.com/peggyjs/peggy/pull/508) Fix broken text input in web version - [#&elastic#8203;512](https://github.com/peggyjs/peggy/issues/512) Add "StartRules" to peg.d.ts - [#&elastic#8203;513](https://github.com/peggyjs/peggy/issues/513) Allow whitespace between plucked word and its pattern. - [#&elastic#8203;520](https://github.com/peggyjs/peggy/issues/520) Grammar with token "constructor" fails to generate - [#&elastic#8203;522](https://github.com/peggyjs/peggy/issues/522) Switched from puppeteer to playwright for web tests, and added them to CI. ##### Documentation - [#&elastic#8203;506](https://github.com/peggyjs/peggy/pull/506) Added END OF INPUT (`!.`). ### [`v4.0.2`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#402) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.1...v4.0.2) Released: 2024-02-26 ##### Bug fixes - [#&elastic#8203;490](https://github.com/peggyjs/peggy/issues/490) Throw error when imports are used in unsupported formats. Supported formats are now only "es" and "commonjs". - [#&elastic#8203;494](https://github.com/peggyjs/peggy/pull/494) Updated docs to make `--allowedRules *` more clear - [#&elastic#8203;495](https://github.com/peggyjs/peggy/issues/495) from-mem inadvertantly made the minimum supported node version v20.8. Updated to latest from-mem. ### [`v4.0.1`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#401) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.0...v4.0.1) Released: 2024-02-23 ##### Bug fixes - [#&elastic#8203;478](https://github.com/peggyjs/peggy/issues/478) Add "npx" to some doc examples. - [#&elastic#8203;479](https://github.com/peggyjs/peggy/issues/479) Refactor `cli/fromMem.js` into separate project [from-mem](https://github.com/peggyjs/from-mem/). - [#&elastic#8203;481](https://github.com/peggyjs/peggy/issues/481) Add CLI test for \--library - [#&elastic#8203;483](https://github.com/peggyjs/peggy/issues/483) fix errors in typescript file. ### [`v4.0.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#400) [Compare Source](https://github.com/peggyjs/peggy/compare/v3.0.2...v4.0.0) Released: 2024-02-13 ##### Major Changes - [#&elastic#8203;379](https://github.com/peggyjs/peggy/issues/379) Fix infinite recursion issue by moving reportInfiniteRecursion to the new prepare pass, and having it fail after finding the first issue. This will require plugin authors to ensure that reportInfiniteRecursion is in the new pass correctly. - [#&elastic#8203;417](https://github.com/peggyjs/peggy/pull/417) BREAKING: change to AST to allow topLevelInitializer and initializer to be arrays, in support of multi-file inputs. This will require plugin updates. The CLI and API now take multiple files as input, where the first file is your main library, and subsequent files consist of a library of other rules. The CLI can take file names of the form `npm:<package-name>/<filename>` to load library rules from an NPM package that is installed relative to the previous non-npm file name, or to the current working directory if this is the first file name. - [#&elastic#8203;420](https://github.com/peggyjs/peggy/pull/420) BREAKING: Node v16+ is now required for running the CLI or using Peggy as a library. Generated code still targets older runtimes. - [#&elastic#8203;456](https://github.com/peggyjs/peggy/pull/456) BREAKING: Allow imports from external compiled grammars inside a source grammar, using `import {rule} from "external.js"`. Note that this syntax will generate either `import` or `require` in the JavaScript output, depending on the value of the `format` parameter. This will need explicit support from plugins, with a few new AST node types and a few visitor changes. - [#&elastic#8203;463](https://github.com/peggyjs/peggy/issues/463) Drop support for Internet Explorer. Move to eslint flat configs in order to lint minimized browser code for compatibility with `defaults, maintained node versions, not op_mini all`. ##### Minor Changes - [#&elastic#8203;400](https://github.com/peggyjs/peggy/pull/400) Use `@generated` in generated code - [#&elastic#8203;404](https://github.com/peggyjs/peggy/issues/404) Add support for -w/--watch to the command line interface. - [#&elastic#8203;415](https://github.com/peggyjs/peggy/issues/415) Added `browser` key to package.json, pointing to Webpack output. - [#&elastic#8203;420](https://github.com/peggyjs/peggy/pull/420) Updated dependencies to avoid audit warnings. - [#&elastic#8203;425](https://github.com/peggyjs/peggy/pull/425) Add a pass to simplify single-character choices - [#&elastic#8203;427](https://github.com/peggyjs/peggy/pull/427) Avoid double extraction of substrings in various MATCH\_ bytecodes - [#&elastic#8203;430](https://github.com/peggyjs/peggy/pull/430) Make generate-js.js ts clean - [#&elastic#8203;432](https://github.com/peggyjs/peggy/pull/432) Add peggy.code-workspace - [#&elastic#8203;435](https://github.com/peggyjs/peggy/pull/435) Setup tsconfig to detect use of library functions from es6 or later - [#&elastic#8203;436](https://github.com/peggyjs/peggy/pull/436) Get rid of tsd - [#&elastic#8203;437](https://github.com/peggyjs/peggy/pull/437) Better type checking for visitor - [#&elastic#8203;438](https://github.com/peggyjs/peggy/pull/438) Make test build deterministic - [#&elastic#8203;439](https://github.com/peggyjs/peggy/pull/439) Make peg$computePosDetails a little faster - [#&elastic#8203;440](https://github.com/peggyjs/peggy/issues/440) Create directories for output and source-map if they do not exist, rather than erroring. - [#&elastic#8203;446](https://github.com/peggyjs/peggy/pull/446) Add a right-associative `ExponentiationExpression` rule (operator `**`) to `javascript.pegjs` example grammar. - [#&elastic#8203;451](https://github.com/peggyjs/peggy/pull/451) Make stack.js ts clean - [#&elastic#8203;452](https://github.com/peggyjs/peggy/pull/452) Fixes to prepare generate-bytecode.js for ts-check - [#&elastic#8203;453](https://github.com/peggyjs/peggy/pull/453) Make generate-bytecode.js ts-clean - [#&elastic#8203;460](https://github.com/peggyjs/peggy/pull/453) Allow `-t` and `-T` testing from the CLI with `--format es`. ##### Bug Fixes - [#&elastic#8203;405](https://github.com/peggyjs/peggy/pull/405) Doc example doesn't correspond to code example. From [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;415](https://github.com/peggyjs/peggy/issues/415) Make docs match reality with `import`. - [#&elastic#8203;426](https://github.com/peggyjs/peggy/pull/426) Fix typo in XML example. - [#&elastic#8203;434](https://github.com/peggyjs/peggy/issues/434) Fixed bad example in docs. - [#&elastic#8203;445](https://github.com/peggyjs/peggy/issues/415) Fix indentation in `examples/javascript.pegjs`. - [#&elastic#8203;450](https://github.com/peggyjs/peggy/issues/450) Fixed misleading documentation. - [#&elastic#8203;466](https://github.com/peggyjs/peggy/issues/466) Add docs for developers. ### [`v3.0.2`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#302) [Compare Source](https://github.com/peggyjs/peggy/compare/v3.0.1...v3.0.2) Released: 2023-03-21 ##### Minor Changes - [#&elastic#8203;392](https://github.com/peggyjs/peggy/issues/392) Removed the --optimize command line argument, which has been invalid since v1.2. From [@&elastic#8203;hildjj](https://github.com/hildjj). ##### Bug Fixes - [#&elastic#8203;371](https://github.com/peggyjs/peggy/issues/371) Error using online Peggy - "Can't find variable: util". From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;374](https://github.com/peggyjs/peggy/issues/374) CLI throws exception on grammar errors. From [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;381](https://github.com/peggyjs/peggy/issues/381) Repetitions with code blocks for min or max not handling non-integer returns correctly. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;382](https://github.com/peggyjs/peggy/pull/382) Update grammarSource documentation. From [@&elastic#8203;AndrewRayCode](https://github.com/AndrewRayCode). - [#&elastic#8203;384](https://github.com/peggyjs/peggy/issues/384) Improve the error.format() documentation. From [@&elastic#8203;AndrewRayCode](https://github.com/AndrewRayCode). - [#&elastic#8203;386](https://github.com/peggyjs/peggy/issues/386) Ensure '\*' as allowed-start-rule is documented for CLI. From [@&elastic#8203;hildjj](https://github.com/hildjj). ### [`v3.0.1`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#301) [Compare Source](https://github.com/peggyjs/peggy/compare/v3.0.0...v3.0.1) Released: 2022-03-05 ##### Minor Changes - [#&elastic#8203;329](https://github.com/peggyjs/peggy/issues/329) Allow plugin options in generate. This change loosens type checking strictness to allow for options unknown to Peggy, but used by plugins such as ts-pegjs. From [@&elastic#8203;hildjj](https://github.com/hildjj). ##### Bug Fixes - [#&elastic#8203;329](https://github.com/peggyjs/peggy/issues/329) Allow type definition for ParserBuildOptions to include plugin options. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;346](https://github.com/peggyjs/peggy/issues/346) Allow extra semicolons between rules. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;347](https://github.com/peggyjs/peggy/issues/347) Disallow '$' as an initial character in identifiers. This is not a breaking change because no grammar could have successfully used these in the past. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;354](https://github.com/peggyjs/peggy/pull/354) Various minor nits in the docs, including indentation and ensuring that the CNAME file is correct. - [#&elastic#8203;357](https://github.com/peggyjs/peggy/issues/357) Fix infinite recursion possibility in repetition delimeters. From [@&elastic#8203;hildjj](https://github.com/hildjj) and [@&elastic#8203;Mingun](https://github.com/Mingun). - [#&elastic#8203;359](https://github.com/peggyjs/peggy/issues/359) Do not treat as many words as reserved. Clarify the documentation about identifiers. Ensure that it is more clear that the target language being generated determines what words are reserved. Clarify that reserved word checking is only done for labels. From [@&elastic#8203;nene](https://github.com/nene). - [#&elastic#8203;364](https://github.com/peggyjs/peggy/issues/364) Fix passing an incorrect external label to the expression inside the `repeated` node. From [@&elastic#8203;Mingun](https://github.com/Mingun). ### [`v3.0.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#300) [Compare Source](https://github.com/peggyjs/peggy/compare/v2.0.1...v3.0.0) Released: 2023-02-21 ##### Major Changes - [#&elastic#8203;280](https://github.com/peggyjs/peggy/issues/280) Add inline examples to the documentation, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;240](https://github.com/peggyjs/peggy/issues/240) Generate SourceNodes for bytecode, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;338](https://github.com/peggyjs/peggy/pull/338) BREAKING CHANGE. Update dependencies, causing minimum supported version of node.js to move to 14. Generated grammar source should still work on older node versions and some older browsers, but testing is currently manual for those. from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;291](https://github.com/peggyjs/peggy/pull/291): Add support for repetition operator `expression|min .. max, delimiter|`, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;339](https://github.com/peggyjs/peggy/pull/339): BREAKING CHANGE. Updated the list of JavaScript reserved words. This will break existing grammars that use any of the new words in their rule or label names. from [@&elastic#8203;hildjj](https://github.com/hildjj) Important information for plug-in authors: PR [#&elastic#8203;291](https://github.com/peggyjs/peggy/issues/291) added 4 new opcodes to the bytecode: - `IF_LT` - `IF_GE` - `IF_LT_DYNAMIC` - `IF_GE_DYNAMIC` and added a new AST node and a visitor method `repeated`. Do not forget to update your plug-ins. Important information for grammar authors: the following words, which used to be valid identifiers for rules and labels, are now treated as JavaScript reserved words, and will cause errors at compile time if you are using them: - abstract - arguments - as - async - boolean - byte - char - double - eval - final - float - from - get - goto - int - long - native - of - set - short - synchronized - throws - transient - volatile ##### Minor Changes - [#&elastic#8203;274](https://github.com/peggyjs/peggy/issues/274) `"*"` is now a valid `allowedStartRule`, which means all rules are allowed, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;229](https://github.com/peggyjs/peggy/issues/229) new CLI option `-S <rule>` or `--start-rule <rule>` to specify the start rule when testing, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;236](https://github.com/peggyjs/peggy/issues/236) Website: show line numbers in parser input textarea, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;280](https://github.com/peggyjs/peggy/issues/280) new output type `source-with-inline-map`, which generates source text with an inline map, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;285](https://github.com/peggyjs/peggy/issues/285) Require that a non-empty string be given as a grammarSource if you are generating a source map, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;206](https://github.com/peggyjs/peggy/pull/206): New output type `ast` and an `--ast` flag for the CLI to get an internal grammar AST for investigation (can be useful for plugin writers), from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;294](https://github.com/peggyjs/peggy/pull/294) Website: show errors in the editors, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;297](https://github.com/peggyjs/peggy/pull/297) Website: add Discord widget, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;299](https://github.com/peggyjs/peggy/issues/299) Add example grammar for a [SemVer.org](https://semver.org) semantic version string, from [@&elastic#8203;dselman](https://github.com/dselman) - [#&elastic#8203;307](https://github.com/peggyjs/peggy/issues/307) Allow grammars to have relative offsets into their source files (e.g. if embedded in another doc), from [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;308](https://github.com/peggyjs/peggy/pull/308) Add support for reading test data from stdin using `-T -`, from [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;313](https://github.com/peggyjs/peggy/pull/313) Create the website using eleventy, from [@&elastic#8203;camcherry](https://github.com/camcherry) ##### Bug Fixes - [#&elastic#8203;283](https://github.com/peggyjs/peggy/issues/283) Fix incorrect type information for DiagnosticCallback, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;287](https://github.com/peggyjs/peggy/issues/287) Allow large outputs to be received without blocking on the CLI tests, from [@&elastic#8203;hildjj](https://github.com/hildjj) ### [`v2.0.1`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#201) [Compare Source](https://github.com/peggyjs/peggy/compare/v2.0.0...v2.0.1) Released: 2022-01-01 ##### Major Changes - None ##### Minor Changes - [#&elastic#8203;261](https://github.com/peggyjs/peggy/pull/261): Remove documentation from README.md, instead linking to the HTML documentation. HTML documentation on <https://peggyjs.org> is now served from the `docs` branch, so that it won't update as we change the `main` branch. `main` must be merged onto `docs` as a part of the release process going forward. - [#&elastic#8203;266](https://github.com/peggyjs/peggy/issues/266): Expose the private field `problems` in the `Session` class, from [@&elastic#8203;hildjj](https://github.com/hildjj). ##### Bug Fixes - [#&elastic#8203;263](https://github.com/peggyjs/peggy/issues/263): Broken link to unpkg. This bug was a symptom of a relatively bad issue in the 2.0.0 release, where the web version of peggy was put in the wrong place, and therefore not tested in the release process. From [@&elastic#8203;hildjj](https://github.com/hildjj). ### [`v2.0.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#200) [Compare Source](https://github.com/peggyjs/peggy/compare/v1.2.0...v2.0.0) Released: 2022-05-28 ##### Major Changes - [#&elastic#8203;163](https://github.com/peggyjs/peggy/pull/163): Add support for generating source maps, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;160](https://github.com/peggyjs/peggy/pull/160): Introduce an API for reporting errors, warnings and information messages from passes. New API allows reporting several diagnostics at once with intermediate results checking after each compilation stage, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;218](https://github.com/peggyjs/peggy/pull/218): Add a `sourceMappingURL` to the generated code, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;248](https://github.com/peggyjs/peggy/pull/248): Remove support for Node.js version 10. When updating dependencies, too many of the tools we use no longer work on the Node 10, which went out of security maintenance more than a year ago. Added support for Node.js version 18, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;251](https://github.com/peggyjs/peggy/pull/251): Make `commander` and `source-map-generator` full dependencies. These are not needed for the pre-packaged web build, but will be used by Node or people that are doing their own packaging for the web, from [@&elastic#8203;hildjj](https://github.com/hildjj) ##### Minor Changes - [#&elastic#8203;167](https://github.com/peggyjs/peggy/pull/167): New CLI, from [@&elastic#8203;hildjj](https://github.com/hildjj) - Backward compatible with the previous - New -t/--test and -T/--testfile flags to directly test the generated grammar - [#&elastic#8203;169](https://github.com/peggyjs/peggy/issues/169): Expose string escape functions, `stringEscape()` and `regexpClassEscape()`, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;175](https://github.com/peggyjs/peggy/pull/175): Check allowedStartRules for validity, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;185](https://github.com/peggyjs/peggy/pull/185): Updated eslint rules, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;196](https://github.com/peggyjs/peggy/pull/196): Add example grammars for XML and source-mapping, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;204](https://github.com/peggyjs/peggy/pull/204): Increase coverage for the tests, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;210](https://github.com/peggyjs/peggy/pull/210): Refactor CLI testing, from [@&elastic#8203;hildjj](https://github.com/hildjj) ##### Bug fixes - [#&elastic#8203;164](https://github.com/peggyjs/peggy/pull/164): Fix some errors in the typescript definitions, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;170](https://github.com/peggyjs/peggy/issues/170): Add missing argument in function call, from [@&elastic#8203;darlanalves](https://github.com/darlanalves) - [#&elastic#8203;182](https://github.com/peggyjs/peggy/issues/182): Fix typo in documentation, from [@&elastic#8203;zargold](https://github.com/zargold) - [#&elastic#8203;197](https://github.com/peggyjs/peggy/pull/197): Fix a regression of redundant commas in the character classes in the error messages, introduced in [`fad4ab7`](https://github.com/peggyjs/peggy/commit/fad4ab74d1de67ef1902cd22d479c81ccab73224), from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;198](https://github.com/peggyjs/peggy/pull/198): Make all build scripts run on Windows, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;199](https://github.com/peggyjs/peggy/pull/199): Test web version locally, using puppeteer, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;211](https://github.com/peggyjs/peggy/pull/211):Command-line -t requires from wrong directory, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;212](https://github.com/peggyjs/peggy/pull/212): Parse errors with zero length give badly-formatted errors, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;214](https://github.com/peggyjs/peggy/pull/214): Failing tests don't format errors - [#&elastic#8203;216](https://github.com/peggyjs/peggy/issues/216): Fix typescript definition of SyntaxError, from [@&elastic#8203;cmfcmf](https://github.com/cmfcmf) - [#&elastic#8203;220](https://github.com/peggyjs/peggy/issues/220): Fix rollup warnings, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;285](https://github.com/peggyjs/peggy/issues/285): Work around source-map bug by throwing an exception if no grammarSource is given when generating source maps, from [@&elastic#8203;hildjj](https://github.com/hildjj). </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - 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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJiYWNrcG9ydDphbGwtb3BlbiIsInJlbGVhc2Vfbm90ZTpza2lwIl19--> --------- Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com> Co-authored-by: Matthias Wilhelm <matthias.wilhelm@elastic.co> Co-authored-by: Lukas Olson <lukas@elastic.co> (cherry picked from commit 238324a) # Conflicts: # package.json # src/plugins/vis_types/timeseries/server/lib/vis_data/response_processors/series/math.test.js # x-pack/platform/plugins/shared/lens/public/editor_frame_service/editor_frame/workspace_panel/__snapshots__/workspace_panel.test.tsx.snap # yarn.lock
|
Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync. |
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [peggy](https://peggyjs.org/) ([source](https://github.com/peggyjs/peggy)) | devDependencies | major | [`^1.2.0` -> `^4.2.0`](https://renovatebot.com/diffs/npm/peggy/1.2.0/4.2.0) | --- ### Release Notes <details> <summary>peggyjs/peggy (peggy)</summary> ### [`v4.2.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#420) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.1.1...v4.2.0) Released: 2024-11-19 ##### New features - [#&elastic#8203;568](https://github.com/peggyjs/peggy/pull/568) Upgrading to TypeScript 5.6 allowed for generating `parser.d.ts`, which should may help people that use Peggy programmatically in nonstandard ways. ##### Bug fixes - [#&elastic#8203;567](https://github.com/peggyjs/peggy/issues/567) Load config files and plugins correctly on Windows by using file: URIs in import(). ##### Documentation - [#&elastic#8203;566](https://github.com/peggyjs/peggy/pull/566) Slight tweaks to document generation. ### [`v4.1.1`](https://github.com/peggyjs/peggy/releases/tag/v4.1.1) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.3...v4.1.1) v4.1.0 did not actually get published due to a workflow issue that should be sorted out now. ##### New features - [#&elastic#8203;477](https://github.com/peggyjs/peggy/issues/477) Option to output .d.ts files next to .js from CLI. - [#&elastic#8203;530](https://github.com/peggyjs/peggy/issues/531) Allow es6 plugins from CLI - [#&elastic#8203;532](https://github.com/peggyjs/peggy/issues/532) Allow es6 options files from the CLI ##### Bug fixes - [#&elastic#8203;531](https://github.com/peggyjs/peggy/issues/531) Clean up rollup hacks from CLI code. - [#&elastic#8203;514](https://github.com/peggyjs/peggy/issues/514) Allow execution of the `peggy` binary on Windows by handling node runtime flags manually, executing a sub-instance of node to actually run `peggy`. - [#&elastic#8203;538](https://github.com/peggyjs/peggy/pull/509) Fixed error in TS types for `peg$maxFailExpected` and `peg$maxFailPos`. - [#&elastic#8203;551](https://github.com/peggyjs/peggy/pull/551) Moved to package-extract instead of a custom script for version file generation. ### [`v4.0.3`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#403) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.2...v4.0.3) Released: 2024-06-19 ##### New features - [#&elastic#8203;509](https://github.com/peggyjs/peggy/pull/509) Add and implement ES6 export button ##### Bug fixes - [#&elastic#8203;493](https://github.com/peggyjs/peggy/issues/493) Allow use of an empty array, null, or undefined as allowedStartRules option - [#&elastic#8203;505](https://github.com/peggyjs/peggy/pull/505) Fix vscode-eslint settings to work with eslint flat config - [#&elastic#8203;507](https://github.com/peggyjs/peggy/pull/507) Remove stray semicolon in CSS - [#&elastic#8203;508](https://github.com/peggyjs/peggy/pull/508) Fix broken text input in web version - [#&elastic#8203;512](https://github.com/peggyjs/peggy/issues/512) Add "StartRules" to peg.d.ts - [#&elastic#8203;513](https://github.com/peggyjs/peggy/issues/513) Allow whitespace between plucked word and its pattern. - [#&elastic#8203;520](https://github.com/peggyjs/peggy/issues/520) Grammar with token "constructor" fails to generate - [#&elastic#8203;522](https://github.com/peggyjs/peggy/issues/522) Switched from puppeteer to playwright for web tests, and added them to CI. ##### Documentation - [#&elastic#8203;506](https://github.com/peggyjs/peggy/pull/506) Added END OF INPUT (`!.`). ### [`v4.0.2`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#402) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.1...v4.0.2) Released: 2024-02-26 ##### Bug fixes - [#&elastic#8203;490](https://github.com/peggyjs/peggy/issues/490) Throw error when imports are used in unsupported formats. Supported formats are now only "es" and "commonjs". - [#&elastic#8203;494](https://github.com/peggyjs/peggy/pull/494) Updated docs to make `--allowedRules *` more clear - [#&elastic#8203;495](https://github.com/peggyjs/peggy/issues/495) from-mem inadvertantly made the minimum supported node version v20.8. Updated to latest from-mem. ### [`v4.0.1`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#401) [Compare Source](https://github.com/peggyjs/peggy/compare/v4.0.0...v4.0.1) Released: 2024-02-23 ##### Bug fixes - [#&elastic#8203;478](https://github.com/peggyjs/peggy/issues/478) Add "npx" to some doc examples. - [#&elastic#8203;479](https://github.com/peggyjs/peggy/issues/479) Refactor `cli/fromMem.js` into separate project [from-mem](https://github.com/peggyjs/from-mem/). - [#&elastic#8203;481](https://github.com/peggyjs/peggy/issues/481) Add CLI test for \--library - [#&elastic#8203;483](https://github.com/peggyjs/peggy/issues/483) fix errors in typescript file. ### [`v4.0.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#400) [Compare Source](https://github.com/peggyjs/peggy/compare/v3.0.2...v4.0.0) Released: 2024-02-13 ##### Major Changes - [#&elastic#8203;379](https://github.com/peggyjs/peggy/issues/379) Fix infinite recursion issue by moving reportInfiniteRecursion to the new prepare pass, and having it fail after finding the first issue. This will require plugin authors to ensure that reportInfiniteRecursion is in the new pass correctly. - [#&elastic#8203;417](https://github.com/peggyjs/peggy/pull/417) BREAKING: change to AST to allow topLevelInitializer and initializer to be arrays, in support of multi-file inputs. This will require plugin updates. The CLI and API now take multiple files as input, where the first file is your main library, and subsequent files consist of a library of other rules. The CLI can take file names of the form `npm:<package-name>/<filename>` to load library rules from an NPM package that is installed relative to the previous non-npm file name, or to the current working directory if this is the first file name. - [#&elastic#8203;420](https://github.com/peggyjs/peggy/pull/420) BREAKING: Node v16+ is now required for running the CLI or using Peggy as a library. Generated code still targets older runtimes. - [#&elastic#8203;456](https://github.com/peggyjs/peggy/pull/456) BREAKING: Allow imports from external compiled grammars inside a source grammar, using `import {rule} from "external.js"`. Note that this syntax will generate either `import` or `require` in the JavaScript output, depending on the value of the `format` parameter. This will need explicit support from plugins, with a few new AST node types and a few visitor changes. - [#&elastic#8203;463](https://github.com/peggyjs/peggy/issues/463) Drop support for Internet Explorer. Move to eslint flat configs in order to lint minimized browser code for compatibility with `defaults, maintained node versions, not op_mini all`. ##### Minor Changes - [#&elastic#8203;400](https://github.com/peggyjs/peggy/pull/400) Use `@generated` in generated code - [#&elastic#8203;404](https://github.com/peggyjs/peggy/issues/404) Add support for -w/--watch to the command line interface. - [#&elastic#8203;415](https://github.com/peggyjs/peggy/issues/415) Added `browser` key to package.json, pointing to Webpack output. - [#&elastic#8203;420](https://github.com/peggyjs/peggy/pull/420) Updated dependencies to avoid audit warnings. - [#&elastic#8203;425](https://github.com/peggyjs/peggy/pull/425) Add a pass to simplify single-character choices - [#&elastic#8203;427](https://github.com/peggyjs/peggy/pull/427) Avoid double extraction of substrings in various MATCH\_ bytecodes - [#&elastic#8203;430](https://github.com/peggyjs/peggy/pull/430) Make generate-js.js ts clean - [#&elastic#8203;432](https://github.com/peggyjs/peggy/pull/432) Add peggy.code-workspace - [#&elastic#8203;435](https://github.com/peggyjs/peggy/pull/435) Setup tsconfig to detect use of library functions from es6 or later - [#&elastic#8203;436](https://github.com/peggyjs/peggy/pull/436) Get rid of tsd - [#&elastic#8203;437](https://github.com/peggyjs/peggy/pull/437) Better type checking for visitor - [#&elastic#8203;438](https://github.com/peggyjs/peggy/pull/438) Make test build deterministic - [#&elastic#8203;439](https://github.com/peggyjs/peggy/pull/439) Make peg$computePosDetails a little faster - [#&elastic#8203;440](https://github.com/peggyjs/peggy/issues/440) Create directories for output and source-map if they do not exist, rather than erroring. - [#&elastic#8203;446](https://github.com/peggyjs/peggy/pull/446) Add a right-associative `ExponentiationExpression` rule (operator `**`) to `javascript.pegjs` example grammar. - [#&elastic#8203;451](https://github.com/peggyjs/peggy/pull/451) Make stack.js ts clean - [#&elastic#8203;452](https://github.com/peggyjs/peggy/pull/452) Fixes to prepare generate-bytecode.js for ts-check - [#&elastic#8203;453](https://github.com/peggyjs/peggy/pull/453) Make generate-bytecode.js ts-clean - [#&elastic#8203;460](https://github.com/peggyjs/peggy/pull/453) Allow `-t` and `-T` testing from the CLI with `--format es`. ##### Bug Fixes - [#&elastic#8203;405](https://github.com/peggyjs/peggy/pull/405) Doc example doesn't correspond to code example. From [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;415](https://github.com/peggyjs/peggy/issues/415) Make docs match reality with `import`. - [#&elastic#8203;426](https://github.com/peggyjs/peggy/pull/426) Fix typo in XML example. - [#&elastic#8203;434](https://github.com/peggyjs/peggy/issues/434) Fixed bad example in docs. - [#&elastic#8203;445](https://github.com/peggyjs/peggy/issues/415) Fix indentation in `examples/javascript.pegjs`. - [#&elastic#8203;450](https://github.com/peggyjs/peggy/issues/450) Fixed misleading documentation. - [#&elastic#8203;466](https://github.com/peggyjs/peggy/issues/466) Add docs for developers. ### [`v3.0.2`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#302) [Compare Source](https://github.com/peggyjs/peggy/compare/v3.0.1...v3.0.2) Released: 2023-03-21 ##### Minor Changes - [#&elastic#8203;392](https://github.com/peggyjs/peggy/issues/392) Removed the --optimize command line argument, which has been invalid since v1.2. From [@&elastic#8203;hildjj](https://github.com/hildjj). ##### Bug Fixes - [#&elastic#8203;371](https://github.com/peggyjs/peggy/issues/371) Error using online Peggy - "Can't find variable: util". From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;374](https://github.com/peggyjs/peggy/issues/374) CLI throws exception on grammar errors. From [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;381](https://github.com/peggyjs/peggy/issues/381) Repetitions with code blocks for min or max not handling non-integer returns correctly. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;382](https://github.com/peggyjs/peggy/pull/382) Update grammarSource documentation. From [@&elastic#8203;AndrewRayCode](https://github.com/AndrewRayCode). - [#&elastic#8203;384](https://github.com/peggyjs/peggy/issues/384) Improve the error.format() documentation. From [@&elastic#8203;AndrewRayCode](https://github.com/AndrewRayCode). - [#&elastic#8203;386](https://github.com/peggyjs/peggy/issues/386) Ensure '\*' as allowed-start-rule is documented for CLI. From [@&elastic#8203;hildjj](https://github.com/hildjj). ### [`v3.0.1`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#301) [Compare Source](https://github.com/peggyjs/peggy/compare/v3.0.0...v3.0.1) Released: 2022-03-05 ##### Minor Changes - [#&elastic#8203;329](https://github.com/peggyjs/peggy/issues/329) Allow plugin options in generate. This change loosens type checking strictness to allow for options unknown to Peggy, but used by plugins such as ts-pegjs. From [@&elastic#8203;hildjj](https://github.com/hildjj). ##### Bug Fixes - [#&elastic#8203;329](https://github.com/peggyjs/peggy/issues/329) Allow type definition for ParserBuildOptions to include plugin options. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;346](https://github.com/peggyjs/peggy/issues/346) Allow extra semicolons between rules. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;347](https://github.com/peggyjs/peggy/issues/347) Disallow '$' as an initial character in identifiers. This is not a breaking change because no grammar could have successfully used these in the past. From [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;354](https://github.com/peggyjs/peggy/pull/354) Various minor nits in the docs, including indentation and ensuring that the CNAME file is correct. - [#&elastic#8203;357](https://github.com/peggyjs/peggy/issues/357) Fix infinite recursion possibility in repetition delimeters. From [@&elastic#8203;hildjj](https://github.com/hildjj) and [@&elastic#8203;Mingun](https://github.com/Mingun). - [#&elastic#8203;359](https://github.com/peggyjs/peggy/issues/359) Do not treat as many words as reserved. Clarify the documentation about identifiers. Ensure that it is more clear that the target language being generated determines what words are reserved. Clarify that reserved word checking is only done for labels. From [@&elastic#8203;nene](https://github.com/nene). - [#&elastic#8203;364](https://github.com/peggyjs/peggy/issues/364) Fix passing an incorrect external label to the expression inside the `repeated` node. From [@&elastic#8203;Mingun](https://github.com/Mingun). ### [`v3.0.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#300) [Compare Source](https://github.com/peggyjs/peggy/compare/v2.0.1...v3.0.0) Released: 2023-02-21 ##### Major Changes - [#&elastic#8203;280](https://github.com/peggyjs/peggy/issues/280) Add inline examples to the documentation, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;240](https://github.com/peggyjs/peggy/issues/240) Generate SourceNodes for bytecode, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;338](https://github.com/peggyjs/peggy/pull/338) BREAKING CHANGE. Update dependencies, causing minimum supported version of node.js to move to 14. Generated grammar source should still work on older node versions and some older browsers, but testing is currently manual for those. from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;291](https://github.com/peggyjs/peggy/pull/291): Add support for repetition operator `expression|min .. max, delimiter|`, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;339](https://github.com/peggyjs/peggy/pull/339): BREAKING CHANGE. Updated the list of JavaScript reserved words. This will break existing grammars that use any of the new words in their rule or label names. from [@&elastic#8203;hildjj](https://github.com/hildjj) Important information for plug-in authors: PR [#&elastic#8203;291](https://github.com/peggyjs/peggy/issues/291) added 4 new opcodes to the bytecode: - `IF_LT` - `IF_GE` - `IF_LT_DYNAMIC` - `IF_GE_DYNAMIC` and added a new AST node and a visitor method `repeated`. Do not forget to update your plug-ins. Important information for grammar authors: the following words, which used to be valid identifiers for rules and labels, are now treated as JavaScript reserved words, and will cause errors at compile time if you are using them: - abstract - arguments - as - async - boolean - byte - char - double - eval - final - float - from - get - goto - int - long - native - of - set - short - synchronized - throws - transient - volatile ##### Minor Changes - [#&elastic#8203;274](https://github.com/peggyjs/peggy/issues/274) `"*"` is now a valid `allowedStartRule`, which means all rules are allowed, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;229](https://github.com/peggyjs/peggy/issues/229) new CLI option `-S <rule>` or `--start-rule <rule>` to specify the start rule when testing, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;236](https://github.com/peggyjs/peggy/issues/236) Website: show line numbers in parser input textarea, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;280](https://github.com/peggyjs/peggy/issues/280) new output type `source-with-inline-map`, which generates source text with an inline map, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;285](https://github.com/peggyjs/peggy/issues/285) Require that a non-empty string be given as a grammarSource if you are generating a source map, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;206](https://github.com/peggyjs/peggy/pull/206): New output type `ast` and an `--ast` flag for the CLI to get an internal grammar AST for investigation (can be useful for plugin writers), from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;294](https://github.com/peggyjs/peggy/pull/294) Website: show errors in the editors, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;297](https://github.com/peggyjs/peggy/pull/297) Website: add Discord widget, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;299](https://github.com/peggyjs/peggy/issues/299) Add example grammar for a [SemVer.org](https://semver.org) semantic version string, from [@&elastic#8203;dselman](https://github.com/dselman) - [#&elastic#8203;307](https://github.com/peggyjs/peggy/issues/307) Allow grammars to have relative offsets into their source files (e.g. if embedded in another doc), from [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;308](https://github.com/peggyjs/peggy/pull/308) Add support for reading test data from stdin using `-T -`, from [@&elastic#8203;hildjj](https://github.com/hildjj). - [#&elastic#8203;313](https://github.com/peggyjs/peggy/pull/313) Create the website using eleventy, from [@&elastic#8203;camcherry](https://github.com/camcherry) ##### Bug Fixes - [#&elastic#8203;283](https://github.com/peggyjs/peggy/issues/283) Fix incorrect type information for DiagnosticCallback, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;287](https://github.com/peggyjs/peggy/issues/287) Allow large outputs to be received without blocking on the CLI tests, from [@&elastic#8203;hildjj](https://github.com/hildjj) ### [`v2.0.1`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#201) [Compare Source](https://github.com/peggyjs/peggy/compare/v2.0.0...v2.0.1) Released: 2022-01-01 ##### Major Changes - None ##### Minor Changes - [#&elastic#8203;261](https://github.com/peggyjs/peggy/pull/261): Remove documentation from README.md, instead linking to the HTML documentation. HTML documentation on <https://peggyjs.org> is now served from the `docs` branch, so that it won't update as we change the `main` branch. `main` must be merged onto `docs` as a part of the release process going forward. - [#&elastic#8203;266](https://github.com/peggyjs/peggy/issues/266): Expose the private field `problems` in the `Session` class, from [@&elastic#8203;hildjj](https://github.com/hildjj). ##### Bug Fixes - [#&elastic#8203;263](https://github.com/peggyjs/peggy/issues/263): Broken link to unpkg. This bug was a symptom of a relatively bad issue in the 2.0.0 release, where the web version of peggy was put in the wrong place, and therefore not tested in the release process. From [@&elastic#8203;hildjj](https://github.com/hildjj). ### [`v2.0.0`](https://github.com/peggyjs/peggy/blob/HEAD/CHANGELOG.md#200) [Compare Source](https://github.com/peggyjs/peggy/compare/v1.2.0...v2.0.0) Released: 2022-05-28 ##### Major Changes - [#&elastic#8203;163](https://github.com/peggyjs/peggy/pull/163): Add support for generating source maps, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;160](https://github.com/peggyjs/peggy/pull/160): Introduce an API for reporting errors, warnings and information messages from passes. New API allows reporting several diagnostics at once with intermediate results checking after each compilation stage, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;218](https://github.com/peggyjs/peggy/pull/218): Add a `sourceMappingURL` to the generated code, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;248](https://github.com/peggyjs/peggy/pull/248): Remove support for Node.js version 10. When updating dependencies, too many of the tools we use no longer work on the Node 10, which went out of security maintenance more than a year ago. Added support for Node.js version 18, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;251](https://github.com/peggyjs/peggy/pull/251): Make `commander` and `source-map-generator` full dependencies. These are not needed for the pre-packaged web build, but will be used by Node or people that are doing their own packaging for the web, from [@&elastic#8203;hildjj](https://github.com/hildjj) ##### Minor Changes - [#&elastic#8203;167](https://github.com/peggyjs/peggy/pull/167): New CLI, from [@&elastic#8203;hildjj](https://github.com/hildjj) - Backward compatible with the previous - New -t/--test and -T/--testfile flags to directly test the generated grammar - [#&elastic#8203;169](https://github.com/peggyjs/peggy/issues/169): Expose string escape functions, `stringEscape()` and `regexpClassEscape()`, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;175](https://github.com/peggyjs/peggy/pull/175): Check allowedStartRules for validity, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;185](https://github.com/peggyjs/peggy/pull/185): Updated eslint rules, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;196](https://github.com/peggyjs/peggy/pull/196): Add example grammars for XML and source-mapping, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;204](https://github.com/peggyjs/peggy/pull/204): Increase coverage for the tests, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;210](https://github.com/peggyjs/peggy/pull/210): Refactor CLI testing, from [@&elastic#8203;hildjj](https://github.com/hildjj) ##### Bug fixes - [#&elastic#8203;164](https://github.com/peggyjs/peggy/pull/164): Fix some errors in the typescript definitions, from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;170](https://github.com/peggyjs/peggy/issues/170): Add missing argument in function call, from [@&elastic#8203;darlanalves](https://github.com/darlanalves) - [#&elastic#8203;182](https://github.com/peggyjs/peggy/issues/182): Fix typo in documentation, from [@&elastic#8203;zargold](https://github.com/zargold) - [#&elastic#8203;197](https://github.com/peggyjs/peggy/pull/197): Fix a regression of redundant commas in the character classes in the error messages, introduced in [`fad4ab7`](https://github.com/peggyjs/peggy/commit/fad4ab74d1de67ef1902cd22d479c81ccab73224), from [@&elastic#8203;Mingun](https://github.com/Mingun) - [#&elastic#8203;198](https://github.com/peggyjs/peggy/pull/198): Make all build scripts run on Windows, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;199](https://github.com/peggyjs/peggy/pull/199): Test web version locally, using puppeteer, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;211](https://github.com/peggyjs/peggy/pull/211):Command-line -t requires from wrong directory, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;212](https://github.com/peggyjs/peggy/pull/212): Parse errors with zero length give badly-formatted errors, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;214](https://github.com/peggyjs/peggy/pull/214): Failing tests don't format errors - [#&elastic#8203;216](https://github.com/peggyjs/peggy/issues/216): Fix typescript definition of SyntaxError, from [@&elastic#8203;cmfcmf](https://github.com/cmfcmf) - [#&elastic#8203;220](https://github.com/peggyjs/peggy/issues/220): Fix rollup warnings, from [@&elastic#8203;hildjj](https://github.com/hildjj) - [#&elastic#8203;285](https://github.com/peggyjs/peggy/issues/285): Work around source-map bug by throwing an exception if no grammarSource is given when generating source maps, from [@&elastic#8203;hildjj](https://github.com/hildjj). </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - 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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJiYWNrcG9ydDphbGwtb3BlbiIsInJlbGVhc2Vfbm90ZTpza2lwIl19--> --------- Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com> Co-authored-by: Matthias Wilhelm <matthias.wilhelm@elastic.co> Co-authored-by: Lukas Olson <lukas@elastic.co>
|
Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync. |
1 similar comment
|
Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync. |
# Backport This will backport the following commits from `main` to `9.0`: - [Update dependency peggy to v4 (main) (#212280)](#212280) Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com> Co-authored-by: Davis McPhee <davis.mcphee@elastic.co>
|
Looks like this PR has backport PRs but they still haven't been merged. Please merge them ASAP to keep the branches relatively in sync. |
|
I don't think this needs to be backported. Renovate has |
@nickofthyme, is there any reason we don't want to backport to at least 9.0 and 8.x? Missing backports that touch That's all to say, if there aren't significant risks in backporting dependency upgrades, we should generally try to backport them to as many old but supported branches as possible (which is why |
|
@azasypkin In this case I have no clue what I don't believe It would be more sensible to me if the default was all active branches (i.e.
I would agree with this for patches and security fixes, everything else is all risk and little reward. |
@azasypkin I believe we should never manually resolve conflicts on a |
Do you mean that your team doesn't actually use peggy, and the ownership defined in Lines 3660 to 3678 in 6e5fe31
That's what I'm trying to figure out since I'm not an owner of this dependency and don't have any context. Were there any breaking changes in peggy upgrades that you feel are risky, or do you generally lack confidence in the quality of peggy updates? I see it's a part of I'm asking because we're also working on ensuring that Kibana predominantly uses dependencies that are "healthy" and that we have enough confidence in them.
What do you mean by active? Today, IIRC, we define active branches as those we're planning to release from - meaning 8.17, 8.18, 8.19 (8.x), 9.0, and 9.1 (main). That's exactly what The goal is to keep all branches that our users rely on in production with up to date dependencies (for all Elastic products, not just Kibana). If there's a good reason to exclude a particular dependency upgrade from all-open, that's fine, but it should be a concise and explicit decision with a clear rationale.
Correct, that's what I mean by a manual backport (which also requires an additional review), as opposed to a backport fully handled by the automation (based on backport tool) when there are no conflicts in |
|
(FWIW, this particular |
No it is the correct team but I personally am not intimately familiar with
I think this is the opposite mindset -- I would reverse this statement to ask "what is the benefit to backporting this dependency?" Regardless of the type of dependency. I didn't realize it was a part of
I love this idea but I don't think that means backporting all upgrades to all open versions.
Sorry idk the specific internal naming. By active I was meaning the branches currently accepting features. Right now this would be
Exactly! I think we should come to an agreement across kibana/elastic about the best approach. The main thing that scares me is updating Take #216284 for example, we are upgrading This is simply my take and I in the end I think it's a balance and a case-by-case decision. But having a formal document for our approach and general guidelines would really nice, if it doesn't exist already! |
|
I did a quick search and find these two references: In not sure how that tinymath actually ends up using this. wrt where to backport:
I agree I don't see much reason not to do this. There is some lead time still, and we will benefit from having the code aligned. If we are hesitant due to the "opaqueness" of this change (and I don't know how significant this change is at all), I do agree we could skip backport to 8.17. I'd only do this if there is a particular reason this change looks "dangerous".
Yes, but the paradigm is shifting: with Serverless, Kibana is released from
Yes. This is annoying edge case imho. This is neither a feature nor a bug fix. It's an automated patch. This leans more towards bug fix imho.
Agreed that this is an edge-case and can be clarified. afaict, we don't have clear guidelines for these renovate version bumps. I can follow up on this to see if can get broader clarification on "chores" like this. Recommendation:
|
|
This has already been backported:
I've closed the other backport PRs. |
Thanks, @thomasneirynck, that's a very good point and one of the main reasons we strive to keep our dependencies up to date and limit their growth. Whatever we merge on Thursday might reach users as early as Tuesday, and it's unlikely that manual verification will catch issues before production is impacted. That's why we should rely on thorough reviews of dependency upgrades (including reading release notes) and automated testing. Depending on the level of confidence in a particular dependency, we might need to tweak minimumReleaseAge to upgrade only when it's considered stable enough.
++, it's regular maintenance that's closer to bug fixes than features, as long as we don't make interfaces of third-party dependencies part of our own public interfaces (e.g., for
Yeah, we can definitely add more details to our
Agreed on both, @thomasneirynck, I'll take an action item for our team to codify these in our existing dev docs.
Well, let's be a bit more pragmatic - how likely is it that a dev dependency upgrade with a green CI and a review from owners who know the dependency will break anything? 🙂
I wouldn't be as confident claiming that, considering that a member of the security team is upgrading the Vega dependency himself - even backporting it to 7.17 😛 -- Anyway, thanks a lot, folks, for the discussion - it's valuable. There are certainly things we can improve and clarify in our documentation and communication, but we should also acknowledge that our security, maintenance, and risk posture is evolving. Something that was considered OK in the past won't necessarily be OK in the future, and reviews of dependency upgrades might require just as much attention as any other feature or bug-fix review. |
This PR contains the following updates:
^1.2.0->^4.2.0Release Notes
peggyjs/peggy (peggy)
v4.2.0Compare Source
Released: 2024-11-19
New features
parser.d.ts, which should may help people that use Peggy programmatically in nonstandard ways.Bug fixes
Documentation
v4.1.1Compare Source
v4.1.0 did not actually get published due to a workflow issue that should
be sorted out now.
New features
Bug fixes
peggybinary on Windows by handling node runtime flags manually, executing a sub-instance of node to actually runpeggy.peg$maxFailExpectedandpeg$maxFailPos.v4.0.3Compare Source
Released: 2024-06-19
New features
Bug fixes
array, null, or undefined as allowedStartRules option
to work with eslint flat config
web version
plucked word and its pattern.
to playwright for web tests, and added them to CI.
Documentation
!.).v4.0.2Compare Source
Released: 2024-02-26
Bug fixes
--allowedRules *more clearmade the minimum supported node version v20.8. Updated to latest from-mem.
v4.0.1Compare Source
Released: 2024-02-23
Bug fixes
examples.
Refactor
cli/fromMem.jsinto separate projectfrom-mem.
--library
typescript file.
v4.0.0Compare Source
Released: 2024-02-13
Major Changes
issue by moving reportInfiniteRecursion to the new prepare pass, and having
it fail after finding the first issue. This will require plugin authors
to ensure that reportInfiniteRecursion is in the new pass correctly.
allow topLevelInitializer and initializer to be arrays, in support of
multi-file inputs. This will require plugin updates. The CLI and API now
take multiple files as input, where the first file is your main library, and
subsequent files consist of a library of other rules. The CLI can take file
names of the form
npm:<package-name>/<filename>to load library rules froman NPM package that is installed relative to the previous non-npm file name,
or to the current working directory if this is the first file name.
required for running the CLI or using Peggy as a library. Generated code
still targets older runtimes.
from external compiled grammars inside a source grammar, using
import {rule} from "external.js". Note that this syntax will generate eitherimportorrequirein the JavaScript output, depending on the value ofthe
formatparameter. This will need explicit support fromplugins, with a few new AST node types and a few visitor changes.
Internet Explorer. Move to eslint flat configs in order to lint minimized
browser code for compatibility with
defaults, maintained node versions, not op_mini all.Minor Changes
@generatedin generatedcode
to the command line interface.
browserkey to package.json, pointing to Webpack output.avoid audit warnings.
substrings in various MATCH_ bytecodes
output and source-map if they do not exist, rather than erroring.
ExponentiationExpressionrule (operator**) tojavascript.pegjsexample grammar.-tand-Ttestingfrom the CLI with
--format es.Bug Fixes
import.examples/javascript.pegjs.v3.0.2Compare Source
Released: 2023-03-21
Minor Changes
command line argument, which has been invalid since v1.2. From @hildjj.
Bug Fixes
on grammar errors. From @hildjj
for min or max not handling non-integer returns correctly. From @hildjj.
documentation. From @AndrewRayCode.
documentation. From @AndrewRayCode.
allowed-start-rule is documented for CLI. From @hildjj.
v3.0.1Compare Source
Released: 2022-03-05
Minor Changes
generate. This change loosens type checking strictness to allow for options
unknown to Peggy, but used by plugins such as ts-pegjs. From @hildjj.
Bug Fixes
between rules. From @hildjj.
character in identifiers. This is not a breaking change because no grammar
could have successfully used these in the past. From @hildjj.
docs, including indentation and ensuring that the CNAME file is correct.
possibility in repetition delimeters. From @hildjj and @Mingun.
words as reserved. Clarify the documentation about identifiers. Ensure
that it is more clear that the target language being generated determines
what words are reserved. Clarify that reserved word checking is only
done for labels. From @nene.
external label to the expression inside the
repeatednode. From @Mingun.v3.0.0Compare Source
Released: 2023-02-21
Major Changes
the documentation, from @hildjj
bytecode, from @hildjj
dependencies, causing minimum supported version of node.js to move to 14.
Generated grammar source should still work on older node versions and some
older browsers, but testing is currently manual for those. from @hildjj
repetition operator
expression|min .. max, delimiter|, from @Mingunthe list of JavaScript reserved words. This will break existing grammars
that use any of the new words in their rule or label names. from @hildjj
Important information for plug-in authors: PR #291 added 4 new opcodes to the bytecode:
IF_LTIF_GEIF_LT_DYNAMICIF_GE_DYNAMICand added a new AST node and a visitor method
repeated. Do not forget to update your plug-ins.Important information for grammar authors: the following words, which used to
be valid identifiers for rules and labels, are now treated as JavaScript
reserved words, and will cause errors at compile time if you are using them:
Minor Changes
"*"is now a validallowedStartRule, which means all rules are allowed, from @hildjj-S <rule>or--start-rule <rule>to specify the start rule when testing,from @hildjj
in parser input textarea, from @Mingun
source-with-inline-map, which generates source text with an inline map,from @hildjj
string be given as a grammarSource if you are generating a source map, from
@hildjj
astandan
--astflag for the CLI to get an internal grammar AST for investigation(can be useful for plugin writers), from @Mingun
editors, from @Mingun
from @hildjj
SemVer.org semantic version string, from @dselman
relative offsets into their source files (e.g. if embedded in another doc),
from @hildjj.
data from stdin using
-T -, from @hildjj.eleventy, from @camcherry
Bug Fixes
information for DiagnosticCallback, from @hildjj
to be received without blocking on the CLI tests, from @hildjj
v2.0.1Compare Source
Released: 2022-01-01
Major Changes
Minor Changes
README.md, instead linking to the HTML documentation. HTML documentation on
https://peggyjs.org is now served from the
docsbranch, so that it won'tupdate as we change the
mainbranch.mainmust be merged ontodocsasa part of the release process going forward.
field
problemsin theSessionclass, from @hildjj.Bug Fixes
This bug was a symptom of a relatively bad issue in the 2.0.0 release, where
the web version of peggy was put in the wrong place, and therefore not
tested in the release process. From @hildjj.
v2.0.0Compare Source
Released: 2022-05-28
Major Changes
generating source maps, from @Mingun
reporting errors, warnings and information messages from passes. New API
allows reporting several diagnostics at once with intermediate results
checking after each compilation stage, from @Mingun
sourceMappingURLto the generated code, from @hildjj
Node.js version 10. When updating dependencies, too many of the tools we
use no longer work on the Node 10, which went out of security maintenance
more than a year ago. Added support for Node.js version 18, from @hildjj
commanderandsource-map-generatorfull dependencies. These are not needed for thepre-packaged web build, but will be used by Node or people that are doing
their own packaging for the web, from @hildjj
Minor Changes
functions,
stringEscape()andregexpClassEscape(), from @hildjjfor validity, from @hildjj
from @hildjj
XML and source-mapping, from @hildjj
tests, from @Mingun
from @hildjj
Bug fixes
typescript definitions, from @Mingun
missing argument in function call, from @darlanalves
documentation, from @zargold
redundant commas in the character classes in the error messages, introduced
in
fad4ab7, from @Mingunrun on Windows, from @hildjj
using puppeteer, from @hildjj
from wrong directory, from @hildjj
length give badly-formatted errors, from @hildjj
format errors
definition of SyntaxError, from @cmfcmf
from @hildjj
bug by throwing an exception if no grammarSource is given when generating
source maps, from @hildjj.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - 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 Renovate Bot.