Update dependency dependency-cruiser to v13 #798
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:
^9.0.0->^13.0.0Release Notes
sverweij/dependency-cruiser
v13.0.4Compare Source
👷 maintenance
a0b6deebuild(npm): updates external dependenciesFixes #817
🔒 shasum of the package as published on npmjs:
69941b3dc27768de4e7b966cb32052e4feb442bbv13.0.3Compare Source
👷 maintenance
6276288chore(extract): makes 'require' detection with typescript >5.2.0 as well (#811)-> this fixes the DeprecationWarning: 'originalKeywordKind' has been deprecated since v5.0.0 and will no longer be usable after v5.2.0. Use 'identifierToKeywordKind(identifier)' instead. typescript/ tsc warning some of you might've been getting.
3930f4cbuild(npm): updates external dependencies5d6d4b3chore(tools): updates meta.js generator to use top level awaitda31be9doc(cli|options): removes 'experimental' notices + various other copy edits🔏 shasum of the the release as published on npmjs:
2f8ed287ca761340b38a3881a3277a2b0c9cea60v13.0.2Compare Source
🐛 fixes
4dffca2fix(doc): adds type exports for config-utl (babel, depcruise, webpack)👷 maintenance
♻️ life cycle management
04202b2build(npm): updates external dependencies💻 DX
cb87dfcchore(gitignore): adds .clinic to folders to ignoreaaf4e53chore(.gitattributes): tellss linguist what's generated, what's documentation1381506chore(package.json): store format tmp file somewhere in node_modules🔒 shasum of the package as published on npmjs:
8ecfe1b82d15ea3bacae4d5a3af20d157d5a79b0v13.0.1Compare Source
🐛 fixes
399eba7fix(doc): corrects extract-ts-config return type also in tsdoc80a2f8dfix(types): adds root and extract-ts-config types (#809) - thank you @mrmckeb for finding the bug and creating the pull request for this!👷 maintenance
a36b968build(npm): updates external dependenciesbd43513fix(build): lists all sources for the json schema in the Makefile58b44e4chore: converts the 'unlimited' self cruise config from json to esmf16f425chore: correctly configures self-cruise to use 'import' condition in enhanced-resolve options🔏 shasum of the package as published on npmjs:
b13ef98ddcd2a9ab4c2478526bc010b8420898b7v13.0.0Compare Source
To keep dependency-cruiser future proof (and sweeter to use) it was necessary to make some breaking changes in v13.
Most of the breaking changes impact only the API/ library. We've worked hard to avoid it, but some affect the CLI as well.
Summary
🔏 shasum of the package as published on npmjs:
4ece1a93c4e954f30350cbb99fd62497cb705e51Improvements
Support for ESM in dependency-cruiser, babel and webpack configurations
As dependency-cruiser itself is now written in ESM, it can now also read .dependency-cruiser, babel and webpack configurations in ESM, so you can write them in more modern JavaScript if you want to. Previously supported formats (commonjs, json5 etc) remain supported
No need to pass --config anymore
In previous versions, even when you had a dependency-cruiser configuration with one of the default names, you still need to pass
--configon the command line to tell it to use that configuration. As of version 13 this is not necessary anymore. Otherwise, the--configoption still work as it did before.If you want to run the dependency-cruiser CLI without a configuration file you'll have to explicitly pass it
--no-config.dot reporters: dynamic dependencies show up as dotted lines
This was already possible - in v13, we've made it the default as it proved useful to distinguish dynamic imports from regular ones. See #801 for details.
Performance improvements
When I converted dependency-cruiser from commonjs to ESM (on node 19) it turned out dependency-cruiser's self scan took longer than it did before the conversion. Dependency-cruiser's performance-log and closer analysis with node --cpu-prof showed that most of the extra time was added at startup time, importing modules. Because I set myself as a goal to have v13 at least as fast as v12 I took a closer look at what was loaded, that might not be necessary at startup.
#795: lazy loading own code: (-100ms)
defer loading analytical modules (-100ms - -700ms for cache only runs)
I also realized dependency-cruiser's serving 100% from cache scenario hardly needs to run any static analysis code. Lazy loading these modules till after we've established we need them shaves off ~100ms - ~700ms from 100% from cache runs. The 700ms is extreme though - it's because in dependency-cruiser's self scan babel, vue, svelte, typescript, swc and even coffeescript are available at the same time. I pity you if your real live project has this as well...
It is possible to go deeper here and lazy load the individual transpilers as well, making dependency-cruiser's self-scan nice and fast but the gain in practical situations (where you have only one or two of them in place) would be limited, unless there's a transpiler installed you don't use in your setup (but e.g. only have because a devDependency has it - babel is a logical candidate for this). This improvement might come in a future version of dependency-cruiser.
Breaking changes: CLI and API
Dropped support for node 14
Nodejs 14 is end of life by the end of April 2023 (source). This will mean that most projects will by then have moved to higher versions. If you can't move to nodejs 14 you can keep using dependency-cruiser v12 for a while.
Dropped support for yarn 1 plug'n play
Yarn 1 is still nominally maintained - the yarn team encourages everyone to migrate to yarn 3, which is now maintained for a longer time than yarn 1 ever was. While yarn 1 itself still works fantastically, its pnp implementation won't keep up with new developments in the node landscape (e.g. the
node:prefix doesn't work, ES modules don't work) - they do work in later versions of yarn, so if you're still on yarn 1 with PnP you probably want to upgrade to yarn 3 anyway.To be clear:
Not passing --config now means 'use default configuration file'
In previous versions, even when you had a dependency-cruiser configuration with one of the default names, you still need to pass
--configon the command line to tell it to use that configuration. This was confusing to many because it's different from most other tools out there in the same space do it.As of version 13 this is not necessary anymore to pass a --config option to read the default configuration. Otherwise, the
--configoption still work as it did before.If you want to run the dependency-cruiser CLI without a configuration file you'll have to explicitly pass it
--no-config.For glob patterns on windows use forward slashes
We've bumped to the most recent version of node-glob which has a breaking change where it doesn't accept
\as path separators anymore - and instead advises to use forward slashes (/) in stead.API only
API is ESM only
Dependency-cruiser is now implemented in ESM - which means that it can only be called from ESM code anymore. I've been looking for ways to compile it down to commonjs, but the transpiler chains I've tried so far can't (e.g. by refusing to convert top level awaits).
API is async (cruise, format, config-utl)
Because in ESM (dynamically) importing modules is an asynchronous affair, all dependency-cruiser interfaces that weren't already had to become asynchronous as well, with the exception of the configuration utility to extract TypeScript configurations.
For an example - see Example to call
cruise.cruisesignature changeApart from becoming asynchronous, we've rationalised the parameters to
cruise. In the old interface the fourth parameter was reserved to passing a (normalized) TypeScript configuration only, while having no room to pass a babel configuration or any other (future) transpilation configuration.The new interface makes the fourth parameter an object that can take a tsConfig, a babelConfig, or both of them.
See example to call
cruisebelow to see how a call could look right now.Example call to
cruiseBefore:
After:
List of changes
5a62d73chore(lint): disables exports-last rulea5c2bb5feature(progress): some more tweaks to the usability of the performance-log9329ae4build(npm): updates external dependenciesfaaadeachore: replaces references to the develop branch with main145527ddoc(cache): adds tsdoc & checks on itcfb8254chore: replaces references to the master branch with develop56fd111chore(ci): removes v13 as integration branch and adds mainb092d70fix(types): adds mainFields and mainFiles to the enhancedResolveOptions in ICruiseOptions4556fe3fix(enrich): adds used tsconfig to options used + adds it & babelConfig, webpackConfig to IConfiguration type (#805)8bac684doc(report): corrects description of the null reporter7cb21dd13.0.0-beta-74fdaf68perf(extract): splits transpiler availability from execution (#804)ecd5563fix(schema|types): adds null reporter to schema and types5d62d58fix(schema|types): adds 'checksum' attribute to the module schema (#803)2380954doc(progress): copy edit of the first stepdf0267d13.0.0-beta-6d4d6f7crefactor(cache): makes git operations in metadata-strategy asyncd408208refactor(cache): makes read and write async78e6f6fbuild(npm): updates external dependencies115ec7brefactor(progress): improves progress logging DXc1c0feabugfix(cache): handles empty known violations arrays220e0a313.0.0-beta-58d23c9edoc(extract): improves typing of the meta interface00965eerefactor(config-utl): makes babel json5 configs and known violations read async as well52f5fa0bugfix(enrich): removes superfluous trailing argumentbea4ce6chore: makes yarn --silent by default4e57f89feature(progress): adds visual aides to performance-log listener72ce164feature(report): adds a 'null' reporter (#802)12738f5feature(report): in dot reporters, by default makes dynamic dependencies dashed lines (#801)fc6119fperf(main): splits off cruise & format in their own modules (#800)68526f3doc: makes readme backwards compatible (#799)307c307perf(cli): reads webpack, typescript and babel config options in parallel (#797)8a89bd8refactor(wrap-stream-in-html): read template elements asynchronouslya4063bc13.0.0-beta-444c3428build(npm): updates external dependencies7611a4fperf(cli|main): lazy loads config mangling, extract and enrich steps (#796)2fea498perf(cli|report): lazy loads --init, reporter and caching code (#795)a64ca1413.0.0-beta-34a36b7fci: snoozes node 'this is experimental' warnings for esm c.s.b8f898adoc(extract): document why we're using 'reduces' instead of a 'maps' while gathering initial sources6e14233build(npm): updates external dependencies4b47220chore(test): sets mocha reporter to 'dot'b745685chore(ci): replaces node 19 with node 202a7e7ce13.0.0-beta-21ec9e34build(npm): update external dependencies947fb34refactor(report): makes csv reporter less OS dependent (#793)290923bfeature(config-utl): enables webpack configurations in ESM format (#792)cd7eff7refactor(cli): replaces deprecated substr with substring521ffe0chore: removes commonjs remnants (#791)d46f5d2refactor: uses qualified imports for imports from node native modules (#790)b4f7e2513.0.0-beta-10dc39fdfix(tools): makes sample and fixture generators work with the new interfaces96f7ac0build(npm): update external dependencies9041d03refactor(extract): converts svelte helper to esm70008e2refactor(utl): converts to esm (#789)13ae375refactor(graph-utl): converts to esm (#788)8c78331refactor(validate): converts to esm (#787)892cfa5refactor(enrich): converts to esm (#786)1adefbedoc(report): changes copy of instructions what to do with ignored violations912892drefactor(extract): converts svelte wrapper to esm (#785)3c16e7drefactor(cli): converts hbs calling code in init-config to esm (#783)3c8c1d6refactor(report): converts to esm (#782)e33a80fbugfix: lets several tools ignore the newly named and generated json-schemas-as-esma8872a0bugfix(npm): sets main to the renamed main/index modulef4ca4dfrefactor(tools): converts the generated json schema's to esm (#781)9f794e7refactor(main): converts to esm (#780)c311f8bchore: updates c8 configuration to renamed filesb5e2ab1refactor(report): converts RE for reporter plugins to something more readable89a03fdrefactor(cache): converts to esm (#779)77b7424refactor: uses node: protocol for all node native module imports (#778)ce077a7refactor(extract): removes default export from meta (#777)411adf7refactor(extract): moves utl/* into one helpers.mjs (#776)6c7de70refactor(extract): moves get-manifest (#775)dc211d0refactor(extract): converts to esm (#774)e1a61cdrefactor: replaces cruise function with signature from futureCruise BREAKING (#773)701e020chore(config-utl): converts to esm (#772)12963a9feature(cli): removes the necessity to pass --config to read the deafult configuration file BREAKING (#771)822afebchore(cli): converts to esm (#765)1b5c929build(npm): bumps glob to latest BREAKING (#770)7e354f6chore: de-supports node 14 BREAKING687f9fcchore(ci): adds the v13 branch to the ones to check all the things on9ec0025chore: de-support yarn PnP version 1 BREAKING (#769)v12.12.2Compare Source
👷 maintenance
311e0febuild(npm): updates external dependenciesb99ab84chore: replaces references to develop, master branches with v1211f47c6chore(ci): adds node 20 to build matrix, sets branches to existing ones🔏 shasum of the package as published on npmjs:
1596f4b7cb186ec33388b9d13aeba751935d40e1v12.12.1Compare Source
🐛 fixes
168e025fix(enrich): adds used tsconfig to options used + adds it & babelConfig, webpackConfig to IConfiguration type (#805) (backport from v13)📖 documentation
e3cb927fix(types): adds mainFields and mainFiles to the enhancedResolveOptions in ICruiseOptions (backport from v13)👷 maintenance
6415756build(npm): updates external devDependencies087fe8edoc(report): corrects description of the null reporter (backport from v13🔏 shasum of the package as published on npmjs:
6131ff18b737df25c41bdfdfbfe4eb3610cbf358v12.12.0Compare Source
📯 We'll soon be releasing dependency-cruiser v13, which is in beta right now.
Meanwhile here's still a v12 release. Most of the items are back-ports from the v13 beta - it might be a while before v13 is out of beta, and these items will be useful for users of v12 as well.
✨ features
3108902feature(progress): moves times closer to message in performance-log (back-port)489f9cffeature(report): adds a 'null' reporter (back-port)🐛 fixes
6c5dc62bugfix(cache): handles empty known violations arrays (back-port)9ebfc4ffix(schema|types): adds null reporter to schema and types (back-port)deb7266fix(schema|types): adds 'checksum' attribute to the module schema (#803) (back-port)👷 maintenance
♻️ life cycle management
945f4a9build(npm): updates external dependencies🏗️ ci & dx
be49230chore: makes yarn --silent by default (back-port)f13beb1chore: snoozes nodejs module warnings while running tests (back-port)🔏 shasum of the package as published on npmjs:
99810305b444a94d18dd07550f4e4f84e6366aeev12.11.3Compare Source
👷 maintenance
fb38030build(npm): updates external dependencies6277bedchore(ci): ensures ci is run on v12 branch as well🔒 shasum of the package as published on npmjs:
748b8f9deeaef31b58db0f20edb5ffa1d19781f8v12.11.1Compare Source
🐛 fixes
7d7d9e5Replace "args" with "arguments" in config file template (#764) (thanks @greglockwood for spotting the bug and creating the PR!)👷 maintenance
f5384c0/62c1625refactor(test): converts remaining tests for the cli from commonjs to esm (#766)♻️ life cycle management
7270565build(npm): update external dependenciese4eb94dci(deps): bump actions/stale from 7 to 8 (#767)8882780build(npm): sync interpret version with webpack-cli & document source of the sync🔏 sha-sum of the package as published on npmjs:
5ea774872831267c6870dc0d8472455c714ff098v12.11.0Compare Source
✨ features
6ed9a0efeature(extract): adds support for TypeScript (>= 5) type only re-exports (#761)👷 maintenance
1e6b25fbuild(npm): update external dependencies2804132chore: regenerate the json schema's from corrected sources9285246chore: adds scheduled codeql static analysis🔏 shasum of the package as published on npmjs:
b5fdc3592938c7949c3667ab7758646964732bc4v12.10.2Compare Source
👷 maintenance
441a348fix: adds workaround for nodenext shenanigans with TypeScript (#757) (thanks @pbadenski for raising the issue & the clear feedback on it)16356debuild(npm): update external dependencies6b47388fix: enables usage with TypeScript v5 (#760) (thanks to @lukeapage for both raising the issue and making a PR to fix it!)🔏 shasum of the package as published on npmjs:
3de9c240b9a99c22828544d052cb266ad0c8abbev12.10.1Compare Source
📖 fixes
cf61dbbfix: expands collapse patterns in --init template to include scoped packages (#756) (thanks @connorjs for the question, research and suggestion!)73e63c9doc(README): copy update in 'How do I use it?' section👷 maintenance
c2e64d1build(npm): update external dependencies🔒 sha-sum of the package as published on npmjs:
407f64aff22a236ca930749899da1c8e1dec0ec0v12.10.0Compare Source
✨ features
4a2863bfeature(cli): makes cli help output more focused (#752)6e199c1feature(cli): adds --no-metrics option (#751)865af1bfeature(cli): adds --no-ignore-known option (#750)baa2138feature(cli): hides deprecated and implied options from --help output (#749)1d0a709feature(cli): adds --no-config option (#747)📖 documentation
59bea92doc(README): updates install it section with instructions for yarn and pnpm (#748) (contribution by @cunzaizhuyi)3a493bfdoc(cli): copy edits👷 maintenance
c98dcb2build(npm): update external dependencies🔏 shasum of the package as published on npmjs:
688c57f69314c647239c592c7ea72c51948860fev12.9.0Compare Source
✨ features
3a47bd5feature(init): adds mainFields derivation for TypeScript projects (#746)🐛 fixes
2de94b8bugfix(extract): uses tsc or swc for .mts & .cts as well (#745)🔏 shasum of the package as released on npmjs:
3368ee96facf8f3d8cb68dcd821eb63e89dca5c6v12.8.0Compare Source
✨ features
6198268feature(resolve): enables passing mainFields & mainFiles to enhanced-resolve (#744)👷 maintenance
5cf9b29build(npm): update external dependencies🔏 shasum of the package as published on npmjs:
d373a31c4d3ab20b40b2dffe9467304281b03932v12.7.1Compare Source
🐛 fixes
d6e17f4bugfix(resolve): in TypeScript resolve mjs, cjs to their ts variants as well (#742)👷 maintenance
e02784bchore(npm): removes unused run scripts from manifest (#740)60cdaf9chore(ci): moves lintstaged config from package.json to its own file (#739)7f3b43fchore(lint): moves eslintignore from package.json into the .eslintrc (#738)9dfa1ddchore(test): moves c8 cli parameters to .c8rc.json (#737)909fc06build(npm): update external dependencies (development dependencies only this time)🔏 shasum of the package as published on npmjs:
01f2e7d573093a354024303d856b4b77395e7052v12.7.0Compare Source
✨ features
24ee9effeature(cli): adds --no-progress option (#736)📖 documentation
c4ef059doc(README): adds a message about the use with pnpx (/ yarn run) (#735)47ebec2doc(cli): corrects typo in index link to --cache-strategy35e014bdoc(recipes): fixes shell-lint issue & regenerates recipe illustrations👷 maintenance
d13f7c3build(npm): update external dependencies86e5607chore: makes performance test script useful again🔏 sha-sum of the package as published to npmjs:
c20a41fd6cdf7c0b31e18220134cb35dc8d40706v12.6.0Compare Source
✨ features
b581d3bfeature(cli): adds --no-cache option (#732)067b642feature(progress): adds showing all totals in performance-log listener (#731)👷 maintenance
f5f17bcchore(ci): put the (deliberately left in place) info message about a utl module not being shared enough in known violations4cfde48refactor: changes use of statSync to throw-less754975crefactor(enrich): replaces local module search with the centralized one (#730)🔏 shasum of the package as published on npmjs:
abfa2c7464d063e69f2d8bd369b47f623d38b831v12.5.1Compare Source
🐛 fixes
5eec12abugfix(cache): ignores unfollowables in content cache strategy (#727) (thanks @7rulnik for finding the bug and verifying the fix!)👷 maintenance
46ed5b1build(npm): update external devDependencies🔏 shasum of this released as published on npmjs:
19ba6f9b1db9f9860301258f5ae097ac27ac69c2v12.5.0Compare Source
✨ features
1d01ca9feature(cache): adds content based caching strategy (#722) thanks @7rulnik for the suggestion!3dc4cd4/52420c9feature(cli): adds--cache-strategy option(#724)👷 maintenance
3c06901build(npm): update external dependencies3f2c929refactor(cli): changes normalize steps to early returns (#723)🔏 shasum of the package as published on npmjs:
5e2c7095ca9544c5805471a8d4e1f9975f411f87v12.4.0Compare Source
✨ features
87f0f5bfeature(cache): adds a cache option compatibility check (#717)d7d2b71feature(progress): makes the maximum displayed level configurable (#721)🐛 fixes
d325aa5bugfix(progress): makes cli-feedback listener go to 100%👷 maintenance
♻️ maintenance: LCM
51b2fecbuild(npm): update external dependencies9f3755fdoc(LICENSE): happy 2023📜 maintenance: code
6978bd9refactor(cache): clean up code and make the cache option an object (#716)e54d553refactor(init): separates 'find all files' functionality & make it respect .gitignore (#719)521fef9refactor(cache): uses util/isDeepStictEqual instead of its assert variant (#720)9154de9refactor(progress): moves cli-feedback to its own file🔏 shasum of the package as published on npmjs.com:
fa9ecb771749f05093e6fccd2f5abab137efee57v12.3.0Compare Source
✨ features
ff72641feature(svelte): adds support for processing svelte templates with css pre-processors (#714)Thanks to @irvin93d for finding the issue, providing the reproduction sample and testing the fix!
76508e3feature(init): adds extensions detection to one shot configs (#712)🐛 fixes
5b08743bugfix(mermaid): circumvents mermaid edge naming ambiguities (#709)📖 documentation
91c6daddoc(types): correct typos in cruise-result ts-doc41461f4doc(init-config): moves typings closer to source (#711)👷 maintenance
cfb53abbuild(npm): update external dependenciesa7caf62ci(deps): bump actions/stale from 6 to 7 (#710)🔏 sha-sum of the package as published on npmjs:
a75fc3a7344d95707952cc220b9770b7f01cda49v12.2.0Compare Source
✨ features
88051d6feature(progress): re-vamps the performance log for ease of use (#698)f3af5dffeature(progress): adds resident set size & v8 managed memory to the performance-log (#697)854f684refactor(performance-log): improves readability of code (#708)🐛 fixes
c482c0dbugfix(mermaid): makes nodes without a name render as well (#705)fc0404cbugfix(report): improves instability alignment in metrics reporter (#707)📖 documentation
78b0eccdoc: twitter -> mastodon8af1605doc(README): corrects flare badge link to GHA3911345chore: shortens parameter typings👷 maintenance
📜 code
8d34441refactor(init-config): removes superfluous function; touches up the typing a bit (#706)a1cc3b6refactor: reduces anonymous top level functions (#703)656b17frefactor(report): replaces metrics formatting code with Intl API calls (#699)eae9d24refactor: bans parameter re-assignments (#700)♻️ LCM
ad6b71dbuild(npm): update external dependenciesd4b5c7cchore: upgrades 'interpret' to stay in line with what webpack-cli uses (#702)4caf1ccchore: upgrades lint staged (#701)🌀 ci
26295d7bugfix(ci): changes stale.yml close reason to 'completed'fa2ea75chore: tweaks stale action745ca87chore(ci): adds diff graph to the github actions summary (#704)🔏 shasum of the package published on npmjs:
441fb999330173eb3ab3c1f1308488e7b174ba9cv12.1.1Compare Source
👷 Maintenance
aab5c17build(npm): update external dependencies45e0170refactor(report): moves the plugin processor out of its own folder🔏 sha-sum of the package as published on npmjs:
0c4a9139b42f5e5c5188ba8b4d38574786e5be5fv12.1.0Compare Source
✨ features
1d8d21efeature(summarize): adds the 'baseDir' option to the optionsUsed object in the summary (#693)🐛 fixes
13af235fix: right-click is the correct for pin in UI (#691) - thanks for @danielo515 for noticing the bug & submitting a PR for it!📖 documentation
fb9615edoc(cli): stress you need to pass a --config even if you have a defaultly named config file16514c0doc(cli): moves the 'metrics' reporter sub-paragraph to the --output-to paragraph👷 maintenance
03dde98build(npm): update external dependencies🔏 sha-sum of the package as published on npmjs:
1336a2618075e0862b98fe6f3ed5494b584a63e7v12.0.1Compare Source
🐛 fixes
6c0e2a1bugfix(cli): adds using the baseDir when checking for file existence (#687)0e7b3c2bugfix(report): shows the instability metric as percentage in the metrics reporter as well (#686)👷 maintenance
cb2ab0bbuild(npm): update external dependencies🔏 sha-sum of the package as published on npmjs:
e2f736e9d6f7b362fd8a35956fbce8f7c88194f0v12.0.0Compare Source
🚨 breaking changes
22decedchore: drops support for node 12 and 17 (BREAKING CHANGE) (#681)Configuration
📅 Schedule: Branch creation - "after 10pm,before 6am" in timezone Europe/Berlin, 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 Mend Renovate. View repository job log here.