[READ-ONLY] Mirror of https://github.com/FoxxMD/multi-scrobbler. Scrobble plays from multiple sources to multiple clients docs.multi-scrobbler.app
deezer docker jellyfin koito lastfm listenbrainz maloja mopidy mpris music music-assistant plex scrobble self-hosted spotify subsonic tautulli youtube-music
0

Configure Feed

Select the types of activity you want to include in your feed.

chore: Update git-cliff workflow

* Add as dev dependency with npm script so it can be run anywhere project is installed
* Update config with newer template based on scopesorted
* Add more scopes and give them pretty emojis

FoxxMD (Feb 11, 2026, 3:24 PM UTC) 80d6879d 0b8dfaa5

+385 -33
+42 -29
cliff.toml
··· 1 - # configuration file for git-cliff (0.1.0) 1 + # git-cliff ~ configuration file 2 + # https://git-cliff.org/docs/configuration 2 3 3 4 [changelog] 4 - # changelog header 5 + # A Tera template to be rendered as the changelog's header. 6 + # See https://keats.github.io/tera/docs/#introduction 5 7 header = """ 6 - # Changelog 8 + # Changelog\n 7 9 All notable changes to this project will be documented in this file.\n 8 10 """ 9 - # template for the changelog body 10 - # https://tera.netlify.app/docs/#introduction 11 + # A Tera template to be rendered for each release in the changelog. 12 + # See https://keats.github.io/tera/docs/#introduction 11 13 body = """ 12 14 {% if version %}\ 13 - ## [{{ version | replace(from="v", to="") }}] - {{ timestamp | date(format="%Y-%m-%d") }} 15 + ## {{ version | trim_start_matches(pat="v") }} - {{ timestamp | date(format="%Y-%m-%d") }} 14 16 {% else %}\ 15 - ## [unreleased] 17 + ## Unreleased 16 18 {% endif %}\ 17 19 {% for group, commits in commits | group_by(attribute="group") %} 18 20 ### {{ group | upper_first }} ··· 24 26 {% raw %} {% endraw %}- **BREAKING**: {{commit.breaking_description}} 25 27 {%- endif -%} 26 28 {%- endfor -%} 29 + {% raw %}\n{% endraw %}\ 27 30 {%- for commit in commits %} 28 31 {%- if commit.scope -%} 29 32 {% else -%} ··· 33 36 {% endif -%} 34 37 {% endif -%} 35 38 {% endfor -%} 36 - {% endfor %} 39 + {% raw %}\n{% endraw %}\ 40 + {% endfor %}\n 37 41 """ 38 - # remove the leading and trailing whitespaces from the template 39 - trim = true 40 - # changelog footer 42 + # A Tera template to be rendered as the changelog's footer. 43 + # See https://keats.github.io/tera/docs/#introduction 41 44 footer = """ 42 45 <!-- generated by git-cliff --> 43 46 """ 47 + # Remove leading and trailing whitespaces from the changelog's body. 48 + trim = true 44 49 45 50 [git] 46 - # allow only conventional commits 47 - # https://www.conventionalcommits.org 51 + # Parse commits according to the conventional commits specification. 52 + # See https://www.conventionalcommits.org 48 53 conventional_commits = true 49 - # regex for parsing and grouping commits 54 + # Exclude commits that do not match the conventional commits specification. 55 + filter_unconventional = true 56 + # An array of regex based parsers for extracting data from the commit message. 57 + # Assigns commits to groups. 58 + # Optionally sets the commit's scope and can decide to exclude commits from further processing. 50 59 commit_parsers = [ 51 - { message = "^feat", group = "Features"}, 52 - { message = "^fix", group = "Bug Fixes"}, 53 - { message = "^doc", group = "Documentation"}, 54 - { message = "^perf", group = "Performance"}, 55 - { message = "^refactor", group = "Refactor"}, 56 - { message = "^style", group = "Styling"}, 57 - { message = "^test", group = "Testing"}, 58 - { message = "^chore\\(release\\): prepare for", skip = true}, 59 - { message = "^chore", group = "Miscellaneous Tasks"}, 60 - { body = ".*security", group = "Security"}, 60 + { message = "^feat", group = "⛰️ Features" }, 61 + { message = "^fix", group = "🐛 Bug Fixes" }, 62 + { message = "^doc", group = "📚 Documentation" }, 63 + { message = "^perf", group = "⚡ Performance" }, 64 + { message = "^refactor", group = "🚜 Refactor" }, 65 + { message = "^style", group = "💅 Styling" }, 66 + { message = "^test", group = "🧪 Testing" }, 67 + { message = "^ci", group = "🧑‍🍳 Continuous Integration" }, 68 + { message = "^build", group = "🐋 Build" }, 69 + { message = "^chore\\(release\\)", skip = true }, 70 + { message = "^chore", group = "⚙️ Miscellaneous Tasks" }, 71 + { body = ".*security", group = "🛡️ Security" }, 61 72 ] 62 - # filter out the commits that are not matched by commit parsers 73 + # Exclude commits that are not matched by any commit parser. 63 74 filter_commits = false 64 - # glob pattern for matching git tags 65 - tag_pattern = "[0-9]*" 66 - # regex for skipping tags 67 - skip_tags = "v0.1.0-beta.1" 75 + # Order releases topologically instead of chronologically. 76 + topo_order = false 77 + # Order of commits in each group/release within the changelog. 78 + # Allowed values: newest, oldest 79 + sort_commits = "oldest" 80 +
+340 -3
package-lock.json
··· 145 145 "chai-as-promised": "^7.1.1", 146 146 "eslint": "^8.56.0", 147 147 "eslint-plugin-prefer-arrow-functions": "^3.2.4", 148 + "git-cliff": "^2.12.0", 148 149 "mocha": "^10.3.0", 149 150 "mockdate": "^3.0.5", 150 151 "msw": "^2.1.2", ··· 2811 2812 "win32" 2812 2813 ] 2813 2814 }, 2815 + "node_modules/@sec-ant/readable-stream": { 2816 + "version": "0.4.1", 2817 + "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz", 2818 + "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==", 2819 + "dev": true, 2820 + "license": "MIT" 2821 + }, 2814 2822 "node_modules/@sinclair/typebox": { 2815 2823 "version": "0.34.41", 2816 2824 "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.41.tgz", ··· 2826 2834 }, 2827 2835 "funding": { 2828 2836 "url": "https://github.com/sindresorhus/is?sponsor=1" 2837 + } 2838 + }, 2839 + "node_modules/@sindresorhus/merge-streams": { 2840 + "version": "4.0.0", 2841 + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz", 2842 + "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==", 2843 + "dev": true, 2844 + "license": "MIT", 2845 + "engines": { 2846 + "node": ">=18" 2847 + }, 2848 + "funding": { 2849 + "url": "https://github.com/sponsors/sindresorhus" 2829 2850 } 2830 2851 }, 2831 2852 "node_modules/@standard-schema/spec": { ··· 5321 5342 } 5322 5343 }, 5323 5344 "node_modules/cross-spawn": { 5324 - "version": "7.0.3", 5325 - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 5326 - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 5345 + "version": "7.0.6", 5346 + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", 5347 + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", 5348 + "license": "MIT", 5327 5349 "dependencies": { 5328 5350 "path-key": "^3.1.0", 5329 5351 "shebang-command": "^2.0.0", ··· 6155 6177 "node": ">=0.8.x" 6156 6178 } 6157 6179 }, 6180 + "node_modules/execa": { 6181 + "version": "9.6.1", 6182 + "resolved": "https://registry.npmjs.org/execa/-/execa-9.6.1.tgz", 6183 + "integrity": "sha512-9Be3ZoN4LmYR90tUoVu2te2BsbzHfhJyfEiAVfz7N5/zv+jduIfLrV2xdQXOHbaD6KgpGdO9PRPM1Y4Q9QkPkA==", 6184 + "dev": true, 6185 + "license": "MIT", 6186 + "dependencies": { 6187 + "@sindresorhus/merge-streams": "^4.0.0", 6188 + "cross-spawn": "^7.0.6", 6189 + "figures": "^6.1.0", 6190 + "get-stream": "^9.0.0", 6191 + "human-signals": "^8.0.1", 6192 + "is-plain-obj": "^4.1.0", 6193 + "is-stream": "^4.0.1", 6194 + "npm-run-path": "^6.0.0", 6195 + "pretty-ms": "^9.2.0", 6196 + "signal-exit": "^4.1.0", 6197 + "strip-final-newline": "^4.0.0", 6198 + "yoctocolors": "^2.1.1" 6199 + }, 6200 + "engines": { 6201 + "node": "^18.19.0 || >=20.5.0" 6202 + }, 6203 + "funding": { 6204 + "url": "https://github.com/sindresorhus/execa?sponsor=1" 6205 + } 6206 + }, 6207 + "node_modules/execa/node_modules/get-stream": { 6208 + "version": "9.0.1", 6209 + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz", 6210 + "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==", 6211 + "dev": true, 6212 + "license": "MIT", 6213 + "dependencies": { 6214 + "@sec-ant/readable-stream": "^0.4.1", 6215 + "is-stream": "^4.0.1" 6216 + }, 6217 + "engines": { 6218 + "node": ">=18" 6219 + }, 6220 + "funding": { 6221 + "url": "https://github.com/sponsors/sindresorhus" 6222 + } 6223 + }, 6224 + "node_modules/execa/node_modules/is-plain-obj": { 6225 + "version": "4.1.0", 6226 + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", 6227 + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", 6228 + "dev": true, 6229 + "license": "MIT", 6230 + "engines": { 6231 + "node": ">=12" 6232 + }, 6233 + "funding": { 6234 + "url": "https://github.com/sponsors/sindresorhus" 6235 + } 6236 + }, 6237 + "node_modules/execa/node_modules/is-stream": { 6238 + "version": "4.0.1", 6239 + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz", 6240 + "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==", 6241 + "dev": true, 6242 + "license": "MIT", 6243 + "engines": { 6244 + "node": ">=18" 6245 + }, 6246 + "funding": { 6247 + "url": "https://github.com/sponsors/sindresorhus" 6248 + } 6249 + }, 6158 6250 "node_modules/express": { 6159 6251 "version": "4.21.1", 6160 6252 "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", ··· 6354 6446 "dev": true, 6355 6447 "dependencies": { 6356 6448 "reusify": "^1.0.4" 6449 + } 6450 + }, 6451 + "node_modules/figures": { 6452 + "version": "6.1.0", 6453 + "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", 6454 + "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==", 6455 + "dev": true, 6456 + "license": "MIT", 6457 + "dependencies": { 6458 + "is-unicode-supported": "^2.0.0" 6459 + }, 6460 + "engines": { 6461 + "node": ">=18" 6462 + }, 6463 + "funding": { 6464 + "url": "https://github.com/sponsors/sindresorhus" 6465 + } 6466 + }, 6467 + "node_modules/figures/node_modules/is-unicode-supported": { 6468 + "version": "2.1.0", 6469 + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz", 6470 + "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==", 6471 + "dev": true, 6472 + "license": "MIT", 6473 + "engines": { 6474 + "node": ">=18" 6475 + }, 6476 + "funding": { 6477 + "url": "https://github.com/sponsors/sindresorhus" 6357 6478 } 6358 6479 }, 6359 6480 "node_modules/file-entry-cache": { ··· 6834 6955 "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" 6835 6956 } 6836 6957 }, 6958 + "node_modules/git-cliff": { 6959 + "version": "2.12.0", 6960 + "resolved": "https://registry.npmjs.org/git-cliff/-/git-cliff-2.12.0.tgz", 6961 + "integrity": "sha512-kjTm5439LsvMs/xRxndWBUetrA4aQfLE8DTbR/ER5H7fGn7ioeFG9YNAK1V7dpTtNi6k2uKYY4f3EvT8J1d+1Q==", 6962 + "dev": true, 6963 + "license": "MIT OR Apache-2.0", 6964 + "dependencies": { 6965 + "execa": "^9.6.0" 6966 + }, 6967 + "bin": { 6968 + "git-cliff": "lib/cli/cli.js" 6969 + }, 6970 + "engines": { 6971 + "node": ">=18.19 || >=20.6 || >=21" 6972 + }, 6973 + "optionalDependencies": { 6974 + "git-cliff-darwin-arm64": "2.12.0", 6975 + "git-cliff-darwin-x64": "2.12.0", 6976 + "git-cliff-linux-arm64": "2.12.0", 6977 + "git-cliff-linux-x64": "2.12.0", 6978 + "git-cliff-windows-arm64": "2.12.0", 6979 + "git-cliff-windows-x64": "2.12.0" 6980 + } 6981 + }, 6982 + "node_modules/git-cliff-darwin-arm64": { 6983 + "version": "2.12.0", 6984 + "resolved": "https://registry.npmjs.org/git-cliff-darwin-arm64/-/git-cliff-darwin-arm64-2.12.0.tgz", 6985 + "integrity": "sha512-k3jzFDmkjc+6MjpnqvRenzMWRbZN5J+w3iQ8WNt9pSmPewNJIm92O/G6AbAxQaCbSfzQapeZ0e+5wSacVc62GA==", 6986 + "cpu": [ 6987 + "arm64" 6988 + ], 6989 + "dev": true, 6990 + "license": "MIT OR Apache-2.0", 6991 + "optional": true, 6992 + "os": [ 6993 + "darwin" 6994 + ] 6995 + }, 6996 + "node_modules/git-cliff-darwin-x64": { 6997 + "version": "2.12.0", 6998 + "resolved": "https://registry.npmjs.org/git-cliff-darwin-x64/-/git-cliff-darwin-x64-2.12.0.tgz", 6999 + "integrity": "sha512-Kkoe+nfmXM/WMcZuC+OaIGA5vj847Ima6NEaaHnyb7Xsri+OAJryPXlABV7q6UeGfiiN2MlL8UsoHgnIEIQLqQ==", 7000 + "cpu": [ 7001 + "x64" 7002 + ], 7003 + "dev": true, 7004 + "license": "MIT OR Apache-2.0", 7005 + "optional": true, 7006 + "os": [ 7007 + "darwin" 7008 + ] 7009 + }, 7010 + "node_modules/git-cliff-linux-arm64": { 7011 + "version": "2.12.0", 7012 + "resolved": "https://registry.npmjs.org/git-cliff-linux-arm64/-/git-cliff-linux-arm64-2.12.0.tgz", 7013 + "integrity": "sha512-eTp2gZjV4LmfzdlhFsYFYuWf5mojALU03X/37r3VmnpuabaijuTEQo/zm/0BKP8gPiLKLR4ofdUvE1OSisCE1A==", 7014 + "cpu": [ 7015 + "arm64" 7016 + ], 7017 + "dev": true, 7018 + "license": "MIT OR Apache-2.0", 7019 + "optional": true, 7020 + "os": [ 7021 + "linux" 7022 + ] 7023 + }, 7024 + "node_modules/git-cliff-linux-x64": { 7025 + "version": "2.12.0", 7026 + "resolved": "https://registry.npmjs.org/git-cliff-linux-x64/-/git-cliff-linux-x64-2.12.0.tgz", 7027 + "integrity": "sha512-abidFG6dH2N5hPUF245/kRYdwViP11Pz7ZwIW/a86CJLZ/WSE7dJt0f2cUIkxTcFSsp11OwuLc5k1hAbwmiIRw==", 7028 + "cpu": [ 7029 + "x64" 7030 + ], 7031 + "dev": true, 7032 + "license": "MIT OR Apache-2.0", 7033 + "optional": true, 7034 + "os": [ 7035 + "linux" 7036 + ] 7037 + }, 7038 + "node_modules/git-cliff-windows-arm64": { 7039 + "version": "2.12.0", 7040 + "resolved": "https://registry.npmjs.org/git-cliff-windows-arm64/-/git-cliff-windows-arm64-2.12.0.tgz", 7041 + "integrity": "sha512-rFuI+D/3Yq3jqafazZw5E68HsXEvcwI/B/5IPDIZD+QqZh8vETf4IXs7wVxYWWtHQJDC+G9ZrR3vE5648mdG3A==", 7042 + "cpu": [ 7043 + "arm64" 7044 + ], 7045 + "dev": true, 7046 + "license": "MIT OR Apache-2.0", 7047 + "optional": true, 7048 + "os": [ 7049 + "win32" 7050 + ] 7051 + }, 7052 + "node_modules/git-cliff-windows-x64": { 7053 + "version": "2.12.0", 7054 + "resolved": "https://registry.npmjs.org/git-cliff-windows-x64/-/git-cliff-windows-x64-2.12.0.tgz", 7055 + "integrity": "sha512-jskb3nyVGr4dekHSCDM/J6iho45t37wnmMGkPNq42kOoUp04JS96yMBrNRdXfXV9ViZsaZq3NaNu1e3QkhFlyA==", 7056 + "cpu": [ 7057 + "x64" 7058 + ], 7059 + "dev": true, 7060 + "license": "MIT OR Apache-2.0", 7061 + "optional": true, 7062 + "os": [ 7063 + "win32" 7064 + ] 7065 + }, 6837 7066 "node_modules/git-last-commit": { 6838 7067 "version": "1.0.1", 6839 7068 "resolved": "https://registry.npmjs.org/git-last-commit/-/git-last-commit-1.0.1.tgz", ··· 7256 7485 }, 7257 7486 "engines": { 7258 7487 "node": ">= 14" 7488 + } 7489 + }, 7490 + "node_modules/human-signals": { 7491 + "version": "8.0.1", 7492 + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-8.0.1.tgz", 7493 + "integrity": "sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==", 7494 + "dev": true, 7495 + "license": "Apache-2.0", 7496 + "engines": { 7497 + "node": ">=18.18.0" 7259 7498 } 7260 7499 }, 7261 7500 "node_modules/icecast-metadata-js": { ··· 9542 9781 "url": "https://github.com/sponsors/sindresorhus" 9543 9782 } 9544 9783 }, 9784 + "node_modules/npm-run-path": { 9785 + "version": "6.0.0", 9786 + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-6.0.0.tgz", 9787 + "integrity": "sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==", 9788 + "dev": true, 9789 + "license": "MIT", 9790 + "dependencies": { 9791 + "path-key": "^4.0.0", 9792 + "unicorn-magic": "^0.3.0" 9793 + }, 9794 + "engines": { 9795 + "node": ">=18" 9796 + }, 9797 + "funding": { 9798 + "url": "https://github.com/sponsors/sindresorhus" 9799 + } 9800 + }, 9801 + "node_modules/npm-run-path/node_modules/path-key": { 9802 + "version": "4.0.0", 9803 + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", 9804 + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", 9805 + "dev": true, 9806 + "license": "MIT", 9807 + "engines": { 9808 + "node": ">=12" 9809 + }, 9810 + "funding": { 9811 + "url": "https://github.com/sponsors/sindresorhus" 9812 + } 9813 + }, 9545 9814 "node_modules/ntfy": { 9546 9815 "version": "1.7.6", 9547 9816 "resolved": "https://registry.npmjs.org/ntfy/-/ntfy-1.7.6.tgz", ··· 10096 10365 "node": ">=6" 10097 10366 } 10098 10367 }, 10368 + "node_modules/parse-ms": { 10369 + "version": "4.0.0", 10370 + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz", 10371 + "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==", 10372 + "dev": true, 10373 + "license": "MIT", 10374 + "engines": { 10375 + "node": ">=18" 10376 + }, 10377 + "funding": { 10378 + "url": "https://github.com/sponsors/sindresorhus" 10379 + } 10380 + }, 10099 10381 "node_modules/parseurl": { 10100 10382 "version": "1.3.3", 10101 10383 "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", ··· 10602 10884 "url": "https://github.com/chalk/ansi-styles?sponsor=1" 10603 10885 } 10604 10886 }, 10887 + "node_modules/pretty-ms": { 10888 + "version": "9.3.0", 10889 + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.3.0.tgz", 10890 + "integrity": "sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==", 10891 + "dev": true, 10892 + "license": "MIT", 10893 + "dependencies": { 10894 + "parse-ms": "^4.0.0" 10895 + }, 10896 + "engines": { 10897 + "node": ">=18" 10898 + }, 10899 + "funding": { 10900 + "url": "https://github.com/sponsors/sindresorhus" 10901 + } 10902 + }, 10605 10903 "node_modules/process": { 10606 10904 "version": "0.11.10", 10607 10905 "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", ··· 11951 12249 "node": ">=8" 11952 12250 } 11953 12251 }, 12252 + "node_modules/strip-final-newline": { 12253 + "version": "4.0.0", 12254 + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-4.0.0.tgz", 12255 + "integrity": "sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==", 12256 + "dev": true, 12257 + "license": "MIT", 12258 + "engines": { 12259 + "node": ">=18" 12260 + }, 12261 + "funding": { 12262 + "url": "https://github.com/sponsors/sindresorhus" 12263 + } 12264 + }, 11954 12265 "node_modules/strip-indent": { 11955 12266 "version": "3.0.0", 11956 12267 "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", ··· 12645 12956 "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", 12646 12957 "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" 12647 12958 }, 12959 + "node_modules/unicorn-magic": { 12960 + "version": "0.3.0", 12961 + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", 12962 + "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==", 12963 + "dev": true, 12964 + "license": "MIT", 12965 + "engines": { 12966 + "node": ">=18" 12967 + }, 12968 + "funding": { 12969 + "url": "https://github.com/sponsors/sindresorhus" 12970 + } 12971 + }, 12648 12972 "node_modules/universalify": { 12649 12973 "version": "2.0.1", 12650 12974 "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", ··· 13627 13951 "dev": true, 13628 13952 "engines": { 13629 13953 "node": ">=10" 13954 + }, 13955 + "funding": { 13956 + "url": "https://github.com/sponsors/sindresorhus" 13957 + } 13958 + }, 13959 + "node_modules/yoctocolors": { 13960 + "version": "2.1.2", 13961 + "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.2.tgz", 13962 + "integrity": "sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==", 13963 + "dev": true, 13964 + "license": "MIT", 13965 + "engines": { 13966 + "node": ">=18" 13630 13967 }, 13631 13968 "funding": { 13632 13969 "url": "https://github.com/sponsors/sindresorhus"
+3 -1
package.json
··· 20 20 "docs:start": "cd docsite && npm start", 21 21 "docs:build": "npm run -s schema:docs && cd docsite && npm run build", 22 22 "postinstall": "patch-package", 23 - "install:parallel": "concurrently --kill-others-on-fail --names app,docs \"npm ci --no-audit\" \"npm run docs:install\"" 23 + "install:parallel": "concurrently --kill-others-on-fail --names app,docs \"npm ci --no-audit\" \"npm run docs:install\"", 24 + "cliff": "git-cliff --unreleased" 24 25 }, 25 26 "exports": { 26 27 ".": { ··· 179 180 "chai-as-promised": "^7.1.1", 180 181 "eslint": "^8.56.0", 181 182 "eslint-plugin-prefer-arrow-functions": "^3.2.4", 183 + "git-cliff": "^2.12.0", 182 184 "mocha": "^10.3.0", 183 185 "mockdate": "^3.0.5", 184 186 "msw": "^2.1.2",