Rebuild thumbnail and media file architecture

* Move to sharp library to improve image manipulation performance and
   support more image formats
 * Move video previews in thumbnails directory
 * Deprecate lazy static previews endpoint
 * Plugin `getFiles()` API now includes a `width`/`height` attribute
 * Deprecate previewfile for video publication/update.
   Use `thumbnailfile` instead
 * Deprecate `thumbnailPath` and `previewPath` of `Video` in favour of
   `thumbnails`
 * Deprecate `thumbnailPath` of `VideoPlaylist` in favour of
   `thumbnails`
 * Replace `torrentPath` by `torrentFilename` and `torrentStream` for
   remote torrents for `filter:api.download.torrent.allowed.result`
   plugin filter
 * Remove useless `fileUrl` from `UserExport` and `VideoSource`
 * Remove remote captions where we don't have a valid URL
 * cache directory is not deleted on each run anymore
 * Add permanent cache for video captions and storyboards
 * Remove `cache` admin configuration, use house-keeping script instead
This commit is contained in:
Chocobozzz
2026-02-13 06:20:56 +01:00
parent 7aac24485c
commit 526f1c6df5
246 changed files with 3074 additions and 3768 deletions
+2 -6
View File
@@ -79,8 +79,7 @@
"test": "bash ./scripts/test.sh",
"tsc": "tsc",
"tsx": "tsx",
"update-host": "node ./dist/scripts/update-host.js",
"update-object-storage-url": "LOGGER_LEVEL=warn node ./dist/scripts/update-object-storage-url.js"
"update-host": "node ./dist/scripts/update-host.js"
},
"resolutions": {
"@types/express": "4.17.9",
@@ -94,7 +93,6 @@
"@aws-sdk/lib-storage": "^3.930.0",
"@aws-sdk/s3-request-presigner": "^3.930.0",
"@commander-js/extra-typings": "^14.0.0",
"@jimp/plugin-color": "^1.6.0",
"@misskey-dev/node-http-message-signatures": "^0.0.10",
"@node-oauth/oauth2-server": "^5.2.1",
"@opentelemetry/api": "^1.9.0",
@@ -160,7 +158,6 @@
"ip-anonymize": "^0.1.0",
"ipaddr.js": "2.2.0",
"iso-639-3": "3.0.1",
"jimp": "^0.22.12",
"js-yaml": "^4.1.1",
"jsonld": "~8.3.3",
"jsonwebtoken": "^9.0.3",
@@ -191,6 +188,7 @@
"sanitize-html": "~2.17.0",
"sequelize": "~6.37.7",
"sequelize-typescript": "^2.1.6",
"sharp": "^0.34.5",
"short-uuid": "^5.2.0",
"sitemap": "^9.0.0",
"socket.io": "^4.8.1",
@@ -251,12 +249,10 @@
"eslint-config-love": "^133.0.0",
"fast-xml-parser": "^5.3.1",
"i18next-parser": "^9.3.0",
"jpeg-js": "^0.4.4",
"jszip": "^3.10.1",
"maildev": "^2.2.1",
"mocha": "^11.7.5",
"pixelmatch": "^7.1.0",
"pngjs": "^7.0.0",
"proxy": "^2.2.0",
"rollup": "^4.53.2",
"rollup-plugin-dts": "^6.2.3",