diff --git a/debian/patches/nodejs/0020-remove-dev-dependencies.patch b/debian/patches/nodejs/0020-remove-dev-dependencies.patch deleted file mode 100644 index 015d33961a..0000000000 --- a/debian/patches/nodejs/0020-remove-dev-dependencies.patch +++ /dev/null @@ -1,69 +0,0 @@ -These are not required in production - ---- a/package.json -+++ b/package.json -@@ -210,63 +210,7 @@ - "yaml": "^2.0.0-10" - }, - "devDependencies": { -- "@gitlab/eslint-plugin": "18.2.0", -- "@gitlab/stylelint-config": "4.1.0", -- "@graphql-eslint/eslint-plugin": "3.16.1", -- "@testing-library/dom": "^7.16.2", -- "@types/jest": "^28.1.3", -- "@vue/compat": "^3.2.47", -- "@vue/compiler-sfc": "^3.2.47", -- "@vue/test-utils": "1.3.0", -- "@vue/test-utils-vue3": "npm:@vue/test-utils@2", -- "@vue/vue2-jest": "^28.1.0", -- "@vue/vue3-jest": "^29.2.3", -- "ajv": "^8.10.0", -- "ajv-formats": "^2.1.1", -- "axios-mock-adapter": "^1.15.0", -- "babel-jest": "^28.1.3", -- "chalk": "^2.4.1", -- "cheerio": "^1.0.0-rc.9", -- "commander": "^2.20.3", -- "custom-jquery-matchers": "^2.1.0", -- "eslint": "8.36.0", -- "eslint-import-resolver-jest": "3.0.2", -- "eslint-import-resolver-webpack": "0.13.2", -- "eslint-plugin-import": "^2.27.5", -- "eslint-plugin-no-jquery": "2.7.0", -- "eslint-plugin-no-unsanitized": "^4.0.2", -- "gettext-extractor": "^3.5.3", -- "gettext-extractor-vue": "^5.0.0", -- "glob": "^7.1.6", -- "istanbul-lib-coverage": "^3.0.0", -- "istanbul-lib-report": "^3.0.0", -- "istanbul-reports": "^3.0.0", -- "jest": "^28.1.3", -- "jest-canvas-mock": "^2.4.0", -- "jest-diff": "^28.1.3", -- "jest-environment-jsdom": "^28.1.3", -- "jest-jasmine2": "^28.1.3", -- "jest-junit": "^12.3.0", -- "jest-util": "^28.1.3", -- "markdownlint-cli": "0.32.2", -- "miragejs": "^0.1.40", -- "mock-apollo-client": "1.2.0", -- "nodemon": "^2.0.19", -- "prettier": "2.2.1", -- "prosemirror-test-builder": "^1.1.0", -- "purgecss": "^4.0.3", -- "purgecss-from-html": "^4.0.3", -- "sass": "^1.49.9", -- "stylelint": "^14.9.1", -- "swagger-cli": "^4.0.4", -- "timezone-mock": "^1.0.8", -- "vue-loader-vue3": "npm:vue-loader@17", -- "vue-test-utils-compat": "^0.0.11", -- "webpack-dev-server": "4.11.1", -- "xhr-mock": "^2.5.1", -- "yarn-check-webpack-plugin": "^1.2.0", -- "yarn-deduplicate": "^6.0.0" -- }, -+ }, - "blockedDependencies": { - "bootstrap-vue": "https://docs.gitlab.com/ee/development/fe_guide/dependencies.html#bootstrapvue" - }, diff --git a/debian/patches/nodejs/0040-use-packaged-modules.patch b/debian/patches/nodejs/0040-use-packaged-modules.patch deleted file mode 100644 index f947d61852..0000000000 --- a/debian/patches/nodejs/0040-use-packaged-modules.patch +++ /dev/null @@ -1,83 +0,0 @@ -Use debian packaged node modules when available - - Exclude packaged modules from transpiling - - Remove webpack-bundle-analyzer - - Resolve .json files - - Add mkdirp 1.0 and loader-utils 2.0 to ensure compatibility for packaged - modules (See #976310) - - Use link protocol for modules with permission issues (which has a bin: entry - in package.json) or dependencies. Use portal protocol only for modules that - 1. does not have any other dependency and 2. does not have a bin: entry - See https://github.com/yarnpkg/berry/issues/2266 - - Even better, portal protocol tries to satisfy even devDependencies so avoid - it - - Modules with problems compression-webpack-plugin, copy-webpack-plugin, - jszip, mkdirp, js-yaml, font-awesome, katex, cache-loader, webpack - - babel-loader, cache-loader needs loader-utils 1.x and we already have 2.x and - no compat patch - - brace-expansion is a major version ahead in the archive - - xterm build is broken (#980406) - ---- a/config/webpack.config.js -+++ b/config/webpack.config.js -@@ -34,7 +34,6 @@ - const { EsbuildPlugin } = require('esbuild-loader'); - - const webpack = require('webpack'); --const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer'); - const { StatsWriterPlugin } = require('webpack-stats-plugin'); - const WEBPACK_VERSION = require('webpack/package.json').version; - const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin'); -@@ -346,6 +345,8 @@ - - entry: generateEntries, - -+ externals: [ 'canvas' ], -+ - output: { - path: WEBPACK_OUTPUT_PATH, - publicPath: WEBPACK_PUBLIC_PATH, -@@ -357,10 +358,15 @@ - }, - - resolve: { -- extensions: ['.js'], -+ extensions: ['.js', '.gql', '.graphql', '.json'], -+ modules: ['node_modules','/var/lib/gitlab/node_modules','/usr/share/gitlab/vendor/node_modules','/usr/share/gitlab/node_modules/mermaid/node_modules', '/usr/share/nodejs/markdown-it/node_modules/', '/usr/lib/nodejs', '/usr/share/nodejs'], - alias, - }, - -+ resolveLoader: { -+ modules: ['node_modules','/var/lib/gitlab/node_modules', '/usr/lib/nodejs','/usr/share/nodejs'], -+ }, -+ - module: { - strictExportPresence: true, - rules: [ -@@ -496,7 +502,7 @@ - }, - { - test: /\.(eot|ttf|woff|woff2)$/, -- include: /node_modules\/(katex\/dist\/fonts|monaco-editor)/, -+ include: /(node_modules\/monaco-editor|\/usr\/share\/fonts\/truetype\/katex)/, - loader: 'file-loader', - options: { - name: '[name].[contenthash:8].[ext]', -@@ -914,6 +920,7 @@ - - node: { - fs: 'empty', // editorconfig requires 'fs' -+ Buffer: 'mock', - setImmediate: false, - }, - }; ---- a/app/assets/javascripts/pdf/index.vue -+++ b/app/assets/javascripts/pdf/index.vue -@@ -3,7 +3,7 @@ - - import Page from './page/index.vue'; - --GlobalWorkerOptions.workerSrc = '/assets/webpack/pdfjs/pdf.worker.min.js'; -+GlobalWorkerOptions.workerSrc = '/assets/webpack/pdfjs/pdf.worker.js'; - - export default { - components: { Page }, diff --git a/debian/patches/nodejs/0060-use-system-yaml.patch b/debian/patches/nodejs/0060-use-system-yaml.patch deleted file mode 100644 index 02a68aa23d..0000000000 --- a/debian/patches/nodejs/0060-use-system-yaml.patch +++ /dev/null @@ -1,13 +0,0 @@ -yaml from npm registry needs a newer nodejs than what is in bullseye - ---- a/package.json -+++ b/package.json -@@ -207,7 +207,7 @@ - "webpack-stats-plugin": "^0.3.1", - "worker-loader": "^2.0.0", - "xterm": "3.14.5", -- "yaml": "^2.0.0-10" -+ "yaml": "link:/usr/share/nodejs/yaml" - }, - "devDependencies": { - }, diff --git a/debian/patches/nodejs/0070-use-system-katex.patch b/debian/patches/nodejs/0070-use-system-katex.patch deleted file mode 100644 index db010015c5..0000000000 --- a/debian/patches/nodejs/0070-use-system-katex.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/package.json -+++ b/package.json -@@ -143,7 +143,7 @@ - "js-cookie": "^3.0.0", - "js-yaml": "^3.13.1", - "jszip": "^3.1.3", -- "katex": "^0.13.2", -+ "katex": "link:/usr/share/nodejs/katex", - "lodash": "^4.17.20", - "lowlight": "^2.6.1", - "marked": "^4.0.18", diff --git a/debian/patches/nodejs/0090-lock-mermaid-version.patch b/debian/patches/nodejs/0090-lock-mermaid-version.patch deleted file mode 100644 index 3126dcd847..0000000000 --- a/debian/patches/nodejs/0090-lock-mermaid-version.patch +++ /dev/null @@ -1,13 +0,0 @@ -webpack fails with mermaid 9.4.3 on bullseye, and 9.1.6 is known to work - ---- a/package.json -+++ b/package.json -@@ -149,7 +149,7 @@ - "marked": "^4.0.18", - "mathjax": "3", - "mdurl": "^1.0.1", -- "mermaid": "^9.1.3", -+ "mermaid": "9.1.6", - "micromatch": "^4.0.5", - "minimatch": "^3.0.4", - "monaco-editor": "^0.30.1", diff --git a/debian/patches/nodejs/0100-lock-tiptap-versions.patch b/debian/patches/nodejs/0100-lock-tiptap-versions.patch deleted file mode 100644 index 359c6efd9a..0000000000 --- a/debian/patches/nodejs/0100-lock-tiptap-versions.patch +++ /dev/null @@ -1,88 +0,0 @@ -This fixes webpack error when newer versions are pulled by yarn - ---- a/package.json -+++ b/package.json -@@ -63,40 +63,40 @@ - "@rails/actioncable": "6.1.4-7", - "@rails/ujs": "6.1.4-7", - "@sourcegraph/code-host-integration": "0.0.84", -- "@tiptap/core": "^2.0.0-beta.220", -- "@tiptap/extension-blockquote": "^2.0.0-beta.220", -- "@tiptap/extension-bold": "^2.0.0-beta.220", -+ "@tiptap/core": "2.0.0-beta.220", -+ "@tiptap/extension-blockquote": "2.0.0-beta.220", -+ "@tiptap/extension-bold": "2.0.0-beta.220", - "@tiptap/extension-bubble-menu": "2.0.0-beta.220", -- "@tiptap/extension-bullet-list": "^2.0.0-beta.220", -- "@tiptap/extension-code": "^2.0.0-beta.220", -- "@tiptap/extension-code-block": "^2.0.0-beta.220", -+ "@tiptap/extension-bullet-list": "2.0.0-beta.220", -+ "@tiptap/extension-code": "2.0.0-beta.220", -+ "@tiptap/extension-code-block": "2.0.0-beta.220", - "@tiptap/extension-code-block-lowlight": "2.0.0-beta.220", -- "@tiptap/extension-document": "^2.0.0-beta.220", -- "@tiptap/extension-dropcursor": "^2.0.0-beta.220", -- "@tiptap/extension-gapcursor": "^2.0.0-beta.220", -- "@tiptap/extension-hard-break": "^2.0.0-beta.220", -- "@tiptap/extension-heading": "^2.0.0-beta.220", -- "@tiptap/extension-highlight": "^2.0.0-beta.220", -- "@tiptap/extension-history": "^2.0.0-beta.220", -- "@tiptap/extension-horizontal-rule": "^2.0.0-beta.220", -- "@tiptap/extension-image": "^2.0.0-beta.220", -- "@tiptap/extension-italic": "^2.0.0-beta.220", -- "@tiptap/extension-link": "^2.0.0-beta.220", -- "@tiptap/extension-list-item": "^2.0.0-beta.220", -- "@tiptap/extension-ordered-list": "^2.0.0-beta.220", -- "@tiptap/extension-paragraph": "^2.0.0-beta.220", -- "@tiptap/extension-strike": "^2.0.0-beta.220", -- "@tiptap/extension-subscript": "^2.0.0-beta.220", -- "@tiptap/extension-superscript": "^2.0.0-beta.220", -- "@tiptap/extension-table": "^2.0.0-beta.220", -- "@tiptap/extension-table-cell": "^2.0.0-beta.220", -- "@tiptap/extension-table-header": "^2.0.0-beta.220", -- "@tiptap/extension-table-row": "^2.0.0-beta.220", -- "@tiptap/extension-task-item": "^2.0.0-beta.220", -- "@tiptap/extension-task-list": "^2.0.0-beta.220", -- "@tiptap/extension-text": "^2.0.0-beta.220", -- "@tiptap/pm": "^2.0.0-beta.220", -- "@tiptap/suggestion": "^2.0.0-beta.220", -+ "@tiptap/extension-document": "2.0.0-beta.220", -+ "@tiptap/extension-dropcursor": "2.0.0-beta.220", -+ "@tiptap/extension-gapcursor": "2.0.0-beta.220", -+ "@tiptap/extension-hard-break": "2.0.0-beta.220", -+ "@tiptap/extension-heading": "2.0.0-beta.220", -+ "@tiptap/extension-highlight": "2.0.0-beta.220", -+ "@tiptap/extension-history": "2.0.0-beta.220", -+ "@tiptap/extension-horizontal-rule": "2.0.0-beta.220", -+ "@tiptap/extension-image": "2.0.0-beta.220", -+ "@tiptap/extension-italic": "2.0.0-beta.220", -+ "@tiptap/extension-link": "2.0.0-beta.220", -+ "@tiptap/extension-list-item": "2.0.0-beta.220", -+ "@tiptap/extension-ordered-list": "2.0.0-beta.220", -+ "@tiptap/extension-paragraph": "2.0.0-beta.220", -+ "@tiptap/extension-strike": "2.0.0-beta.220", -+ "@tiptap/extension-subscript": "2.0.0-beta.220", -+ "@tiptap/extension-superscript": "2.0.0-beta.220", -+ "@tiptap/extension-table": "2.0.0-beta.220", -+ "@tiptap/extension-table-cell": "2.0.0-beta.220", -+ "@tiptap/extension-table-header": "2.0.0-beta.220", -+ "@tiptap/extension-table-row": "2.0.0-beta.220", -+ "@tiptap/extension-task-item": "2.0.0-beta.220", -+ "@tiptap/extension-task-list": "2.0.0-beta.220", -+ "@tiptap/extension-text": "2.0.0-beta.220", -+ "@tiptap/pm": "2.0.0-beta.220", -+ "@tiptap/suggestion": "2.0.0-beta.220", - "@tiptap/vue-2": "2.0.0-beta.220", - "apollo-upload-client": "15.0.0", - "apollo3-cache-persist": "^0.14.1", -@@ -216,7 +216,9 @@ - }, - "resolutions": { - "chokidar": "^3.5.3", -- "@types/node": "14.17.5" -+ "@types/node": "14.17.5", -+ "@tiptap/extension-floating-menu": "2.0.0-beta.202", -+ "@tiptap/extension-bubble-menu": "2.0.0-beta.202" - }, - "engines": { - "node": ">=12.22.1", diff --git a/debian/patches/series b/debian/patches/series index 3041464082..7eecb35679 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -12,13 +12,7 @@ Gemfile/0210-comment-out-openssl.patch Gemfile/0220-relax-oj-in-ipynbdiff.patch Gemfile/0230-relax-omniauth-auth0.patch nodejs/0010-set-webpack-root.patch -nodejs/0020-remove-dev-dependencies.patch nodejs/0030-use-yarnpkg.patch -nodejs/0040-use-packaged-modules.patch -nodejs/0060-use-system-yaml.patch -nodejs/0070-use-system-katex.patch -nodejs/0090-lock-mermaid-version.patch -nodejs/0100-lock-tiptap-versions.patch tweaks/0010-source-init-functions.patch tweaks/0020-fix-mail-room-path.patch tweaks/0030-fix-gitlab-yml-path.patch