mirror of
https://github.com/misskey-dev/misskey.git
synced 2026-06-25 17:10:43 +00:00
🌎 A completely free and open interplanetary-microblogging platform 🚀
https://misskey-hub.net/
- TypeScript 63.1%
- Vue 30.3%
- JavaScript 5.8%
- GLSL 0.4%
- SCSS 0.2%
When a file exists in the database as storedInternal but is missing from disk, the error response was incorrectly getting Cache-Control: max-age=31536000, immutable. This was because the handler set immutable cache headers before attempting to stream the file, and by the time the stream encountered the ENOENT error, HTTP headers were already committed. Fix: add fs.promises.access() check in FileServerFileResolver for stored original files before returning the path. If the file is not accessible on disk, the access check throws, propagating to errorHandler which correctly sets Cache-Control: max-age=300. For thumbnail/webpublic stored files, detectType() already performed this check implicitly via fs.stat(). Only original files were affected. This fixes both the /files/:key and /proxy/:url* endpoints since both call resolveFileByAccessKey for local files. Agent-Logs-Url: https://github.com/misskey-dev/misskey/sessions/5dd1c781-b9ad-43cf-b107-79c502d2e602 Co-authored-by: syuilo <4439005+syuilo@users.noreply.github.com> |
||
|---|---|---|
| .config | ||
| .devcontainer | ||
| .github | ||
| .okteto | ||
| .vscode | ||
| assets | ||
| chart | ||
| cypress | ||
| fluent-emojis@cae981eb4c | ||
| idea | ||
| locales | ||
| packages | ||
| patches | ||
| scripts | ||
| .dockerignore | ||
| .dockleignore | ||
| .editorconfig | ||
| .gitattributes | ||
| .gitignore | ||
| .gitmodules | ||
| .node-version | ||
| .npmrc | ||
| .vsls.json | ||
| CHANGELOG.md | ||
| CODE_OF_CONDUCT.md | ||
| codecov.yml | ||
| compose.local-db.yml | ||
| compose_example.yml | ||
| CONTRIBUTING.md | ||
| COPYING | ||
| crowdin.yml | ||
| cypress.config.ts | ||
| Dockerfile | ||
| healthcheck.sh | ||
| LICENSE | ||
| package.json | ||
| pnpm-lock.yaml | ||
| pnpm-workspace.yaml | ||
| Procfile | ||
| README.md | ||
| renovate.json5 | ||
| ROADMAP.md | ||
| SECURITY.md | ||
Thanks
Thanks to Sentry for providing the error tracking platform that helps us catch unexpected errors.
Thanks to Chromatic for providing the visual testing platform that helps us review UI changes and catch visual regressions.
Thanks to Codecov for providing the code coverage platform that helps us improve our test coverage.
Thanks to Crowdin for providing the localization platform that helps us translate Misskey into many languages.
Thanks to Docker for providing the container platform that helps us run Misskey in production.