chore: prettier format all files, brotli, Sentry release tagging, CI gates
Prettier: auto-formatted 103 files to fix baseline. Prettier check in CI is now a hard gate (removed continue-on-error). Brotli: installed libnginx-mod-http-brotli-filter/static. Enabled in nginx with brotli_static on for pre-compressed assets and comp_level 6. Sentry releases: deploy script now exports VITE_APP_VERSION=<git-short-sha> before building so each Sentry release maps to an exact commit. CI also passes github.sha as VITE_APP_VERSION. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+22
-12
@@ -96,16 +96,20 @@ export default defineConfig({
|
||||
wasm(),
|
||||
react(),
|
||||
// Upload source maps to Sentry when auth token is present, then delete maps from dist
|
||||
...(process.env.SENTRY_AUTH_TOKEN ? [sentryVitePlugin({
|
||||
org: 'lotus-guild',
|
||||
project: 'javascript-react',
|
||||
authToken: process.env.SENTRY_AUTH_TOKEN,
|
||||
sourcemaps: {
|
||||
filesToDeleteAfterUpload: ['./dist/**/*.map'],
|
||||
},
|
||||
release: { name: process.env.VITE_APP_VERSION ?? 'lotus' },
|
||||
telemetry: false,
|
||||
})] : []),
|
||||
...(process.env.SENTRY_AUTH_TOKEN
|
||||
? [
|
||||
sentryVitePlugin({
|
||||
org: 'lotus-guild',
|
||||
project: 'javascript-react',
|
||||
authToken: process.env.SENTRY_AUTH_TOKEN,
|
||||
sourcemaps: {
|
||||
filesToDeleteAfterUpload: ['./dist/**/*.map'],
|
||||
},
|
||||
release: { name: process.env.VITE_APP_VERSION ?? 'lotus' },
|
||||
telemetry: false,
|
||||
}),
|
||||
]
|
||||
: []),
|
||||
VitePWA({
|
||||
srcDir: 'src',
|
||||
filename: 'sw.ts',
|
||||
@@ -145,12 +149,18 @@ export default defineConfig({
|
||||
manualChunks: (id) => {
|
||||
if (id.includes('node_modules/matrix-js-sdk')) return 'matrix-sdk';
|
||||
if (id.includes('node_modules/react-dom')) return 'react-dom';
|
||||
if (id.includes('node_modules/react-router-dom') || id.includes('node_modules/@remix-run') || id.includes('node_modules/react-router/')) return 'router';
|
||||
if (
|
||||
id.includes('node_modules/react-router-dom') ||
|
||||
id.includes('node_modules/@remix-run') ||
|
||||
id.includes('node_modules/react-router/')
|
||||
)
|
||||
return 'router';
|
||||
if (id.includes('node_modules/@tanstack')) return 'react-query';
|
||||
if (id.includes('node_modules/linkify')) return 'linkify';
|
||||
if (id.includes('node_modules/dompurify')) return 'dompurify';
|
||||
if (id.includes('node_modules/@sentry')) return 'sentry';
|
||||
if (id.includes('node_modules/i18next') || id.includes('node_modules/react-i18next')) return 'i18n';
|
||||
if (id.includes('node_modules/i18next') || id.includes('node_modules/react-i18next'))
|
||||
return 'i18n';
|
||||
if (id.includes('node_modules/jotai')) return 'jotai';
|
||||
if (id.includes('node_modules/immer')) return 'immer';
|
||||
if (id.includes('node_modules/folds')) return 'folds';
|
||||
|
||||
Reference in New Issue
Block a user