From 3c9d90ad7e145625522478ef7e75b65f47b87fb9 Mon Sep 17 00:00:00 2001 From: Almeida Date: Mon, 2 Mar 2026 19:34:45 +0000 Subject: [PATCH] chore: move proxy-container to apps (#11435) * chore: move proxy-container to apps * chore: limit next/react rules to next apps * chore: add standalone issue template --------- Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com> --- .github/CODEOWNERS | 2 +- .../ISSUE_TEMPLATE/01-package_bug_report.yml | 1 - .../03-proxy_container_bug_report.yml | 51 +++++++++ ...ure_request.yml => 04-feature_request.yml} | 2 +- .../{04-guide.yml => 05-guide.yml} | 0 .github/issue-labeler.yml | 6 +- .github/labeler.yml | 10 +- .github/labels.yml | 4 +- .github/workflows/documentation.yml | 1 - .github/workflows/publish-dev-docker.yml | 2 +- .github/workflows/publish-docker.yml | 4 +- README.md | 2 +- {packages => apps}/proxy-container/.gitignore | 0 .../proxy-container/.lintstagedrc.cjs | 0 .../proxy-container/.prettierignore | 0 .../proxy-container/.prettierrc.cjs | 0 {packages => apps}/proxy-container/Dockerfile | 0 {packages => apps}/proxy-container/LICENSE | 0 {packages => apps}/proxy-container/README.md | 4 +- .../proxy-container/package.json | 2 +- .../proxy-container/src/index.ts | 0 .../proxy-container/tsconfig.eslint.json | 0 .../proxy-container/tsconfig.json | 0 .../proxy-container/tsup.config.ts | 0 eslint.config.js | 10 +- .../releasePackages/generateReleaseTree.ts | 3 - pnpm-lock.yaml | 100 +++++++++--------- 27 files changed, 126 insertions(+), 78 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE/03-proxy_container_bug_report.yml rename .github/ISSUE_TEMPLATE/{03-feature_request.yml => 04-feature_request.yml} (98%) rename .github/ISSUE_TEMPLATE/{04-guide.yml => 05-guide.yml} (100%) rename {packages => apps}/proxy-container/.gitignore (100%) rename {packages => apps}/proxy-container/.lintstagedrc.cjs (100%) rename {packages => apps}/proxy-container/.prettierignore (100%) rename {packages => apps}/proxy-container/.prettierrc.cjs (100%) rename {packages => apps}/proxy-container/Dockerfile (100%) rename {packages => apps}/proxy-container/LICENSE (100%) rename {packages => apps}/proxy-container/README.md (94%) rename {packages => apps}/proxy-container/package.json (97%) rename {packages => apps}/proxy-container/src/index.ts (100%) rename {packages => apps}/proxy-container/tsconfig.eslint.json (100%) rename {packages => apps}/proxy-container/tsconfig.json (100%) rename {packages => apps}/proxy-container/tsup.config.ts (100%) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index c81bddbc0..b0d10e234 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -10,6 +10,7 @@ pnpm-lock.yaml @discordjs/core /apps/guide/ @discordjs/website @discordjs/guide /apps/guide/content/ @discordjs/guide +/apps/proxy-container/ @discordjs/proxy /apps/website/ @discordjs/website /packages/actions/ @discordjs/actions @@ -26,7 +27,6 @@ pnpm-lock.yaml @discordjs/core /packages/formatters/ @discordjs/formatters /packages/next/ @discordjs/core /packages/proxy/ @discordjs/proxy -/packages/proxy-container/ @discordjs/proxy /packages/rest/ @discordjs/rest /packages/scripts/ @discordjs/scripts /packages/structures/ @discordjs/structures diff --git a/.github/ISSUE_TEMPLATE/01-package_bug_report.yml b/.github/ISSUE_TEMPLATE/01-package_bug_report.yml index 953984a69..27a8041f1 100644 --- a/.github/ISSUE_TEMPLATE/01-package_bug_report.yml +++ b/.github/ISSUE_TEMPLATE/01-package_bug_report.yml @@ -22,7 +22,6 @@ body: - formatters - next - proxy - - proxy-container - rest - structures - ui diff --git a/.github/ISSUE_TEMPLATE/03-proxy_container_bug_report.yml b/.github/ISSUE_TEMPLATE/03-proxy_container_bug_report.yml new file mode 100644 index 000000000..0bffa3dbf --- /dev/null +++ b/.github/ISSUE_TEMPLATE/03-proxy_container_bug_report.yml @@ -0,0 +1,51 @@ +name: Proxy Container bug report +description: Report an issue with the proxy container. +labels: [bug, need repro, apps:proxy-container] +body: + - type: markdown + attributes: + value: | + Thank you for filing an issue! If you are here to ask a question, use Discord instead: https://discord.gg/djs + + This issue form is for the proxy container. + - type: textarea + id: description + attributes: + label: Issue description + description: Describe the issue in as much detail as possible. + validations: + required: true + - type: textarea + id: steps_to_reproduce + attributes: + label: Steps to Reproduce + description: What steps must be taken to reproduce this issue? + placeholder: | + 1. Pull the container image + 2. Run the container with specific configuration + 3. Send a request + 4. Observe behavior + validations: + required: true + - type: textarea + id: versions + attributes: + label: Versions + description: List necessary versions here. This includes the container image tag, Docker version, operating system etc. + placeholder: | + - discordjs/proxy 1.0.0 + - Docker 27.5.1 + - Linux 6.1.0 + validations: + required: true + - type: dropdown + id: priority + attributes: + label: Issue priority + description: Please be realistic. If you need to elaborate on your reasoning, please use the issue description field above. + options: + - Low (slightly annoying) + - Medium (should be fixed soon) + - High (immediate attention needed) + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/03-feature_request.yml b/.github/ISSUE_TEMPLATE/04-feature_request.yml similarity index 98% rename from .github/ISSUE_TEMPLATE/03-feature_request.yml rename to .github/ISSUE_TEMPLATE/04-feature_request.yml index d6ffc4074..1dca0c2b8 100644 --- a/.github/ISSUE_TEMPLATE/03-feature_request.yml +++ b/.github/ISSUE_TEMPLATE/04-feature_request.yml @@ -16,6 +16,7 @@ body: - discord.js - Documentation - Guide + - Proxy Container - brokers - builders - collection @@ -24,7 +25,6 @@ body: - formatters - next - proxy - - proxy-container - rest - structures - ui diff --git a/.github/ISSUE_TEMPLATE/04-guide.yml b/.github/ISSUE_TEMPLATE/05-guide.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/04-guide.yml rename to .github/ISSUE_TEMPLATE/05-guide.yml diff --git a/.github/issue-labeler.yml b/.github/issue-labeler.yml index 3e6a8c384..1810802a9 100644 --- a/.github/issue-labeler.yml +++ b/.github/issue-labeler.yml @@ -1,6 +1,9 @@ apps:guide: - "### Which (application|package|application or package) is this (bug report|feature request) for\\?\\n\\nGuide\\n" +apps:proxy-container: + - "### Which (application|package|application or package) is this (bug + report|feature request) for\\?\\n\\nProxy Container\\n" apps:website: - "### Which (application|package|application or package) is this (bug report|feature request) for\\?\\n\\nDocumentation\\n" @@ -31,9 +34,6 @@ packages:next: packages:proxy: - "### Which (application|package|application or package) is this (bug report|feature request) for\\?\\n\\nproxy\\n" -packages:proxy-container: - - "### Which (application|package|application or package) is this (bug - report|feature request) for\\?\\n\\nproxy-container\\n" packages:rest: - "### Which (application|package|application or package) is this (bug report|feature request) for\\?\\n\\nrest\\n" diff --git a/.github/labeler.yml b/.github/labeler.yml index d4214ce85..9b878c3fd 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -3,6 +3,11 @@ apps:guide: - any-glob-to-any-file: - apps/guide/* - apps/guide/**/* +apps:proxy-container: + - changed-files: + - any-glob-to-any-file: + - apps/proxy-container/* + - apps/proxy-container/**/* apps:website: - changed-files: - any-glob-to-any-file: @@ -68,11 +73,6 @@ packages:proxy: - any-glob-to-any-file: - packages/proxy/* - packages/proxy/**/* -packages:proxy-container: - - changed-files: - - any-glob-to-any-file: - - packages/proxy-container/* - - packages/proxy-container/**/* packages:rest: - changed-files: - any-glob-to-any-file: diff --git a/.github/labels.yml b/.github/labels.yml index 62ecd2f4e..3f3aaf711 100644 --- a/.github/labels.yml +++ b/.github/labels.yml @@ -4,6 +4,8 @@ color: '5663e9' - name: apps:guide color: fbca04 +- name: apps:proxy-container + color: fbca04 - name: apps:website color: fbca04 - name: backlog @@ -76,8 +78,6 @@ color: fbca04 - name: packages:proxy color: fbca04 -- name: packages:proxy-container - color: fbca04 - name: packages:rest color: fbca04 - name: packages:structures diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 429f79483..4a7633678 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -6,7 +6,6 @@ on: paths: - 'packages/*/src/**' - '!packages/create-discord-bot/**' - - '!packages/proxy-container/**' - '!packages/ui/**' tags: - '**' diff --git a/.github/workflows/publish-dev-docker.yml b/.github/workflows/publish-dev-docker.yml index 550b190f2..841c6fa8f 100644 --- a/.github/workflows/publish-dev-docker.yml +++ b/.github/workflows/publish-dev-docker.yml @@ -40,7 +40,7 @@ jobs: uses: docker/build-push-action@v6 with: context: . - file: packages/proxy-container/Dockerfile + file: apps/proxy-container/Dockerfile platforms: ${{ matrix.platform }} outputs: type=image,name=${{ env.IMAGE_NAME }},push-by-digest=true,name-canonical=true,push=true diff --git a/.github/workflows/publish-docker.yml b/.github/workflows/publish-docker.yml index 5b29d28e4..5a52864c0 100644 --- a/.github/workflows/publish-docker.yml +++ b/.github/workflows/publish-docker.yml @@ -38,7 +38,7 @@ jobs: uses: docker/build-push-action@v6 with: context: . - file: packages/proxy-container/Dockerfile + file: apps/proxy-container/Dockerfile platforms: ${{ matrix.platform }} outputs: type=image,name=${{ env.IMAGE_NAME }},push-by-digest=true,name-canonical=true,push=true @@ -74,7 +74,7 @@ jobs: - name: Get Major Version id: version run: | - FULL_VER=$(jq --raw-output '.version' packages/proxy-container/package.json) + FULL_VER=$(jq --raw-output '.version' apps/proxy-container/package.json) MAJOR=$(echo $FULL_VER | cut -d '.' -f1) echo "major=$MAJOR" >> $GITHUB_OUTPUT diff --git a/README.md b/README.md index 2740f2852..b47dfef12 100644 --- a/README.md +++ b/README.md @@ -95,5 +95,5 @@ If you don't understand something in the documentation, you are experiencing pro [util-source]: https://github.com/discordjs/discord.js/tree/main/packages/util [voice-source]: https://github.com/discordjs/discord.js/tree/main/packages/voice [ws-source]: https://github.com/discordjs/discord.js/tree/main/packages/ws -[proxy-container-source]: https://github.com/discordjs/discord.js/tree/main/packages/proxy-container +[proxy-container-source]: https://github.com/discordjs/discord.js/tree/main/apps/proxy-container [good-first-issue]: https://github.com/discordjs/discord.js/contribute diff --git a/packages/proxy-container/.gitignore b/apps/proxy-container/.gitignore similarity index 100% rename from packages/proxy-container/.gitignore rename to apps/proxy-container/.gitignore diff --git a/packages/proxy-container/.lintstagedrc.cjs b/apps/proxy-container/.lintstagedrc.cjs similarity index 100% rename from packages/proxy-container/.lintstagedrc.cjs rename to apps/proxy-container/.lintstagedrc.cjs diff --git a/packages/proxy-container/.prettierignore b/apps/proxy-container/.prettierignore similarity index 100% rename from packages/proxy-container/.prettierignore rename to apps/proxy-container/.prettierignore diff --git a/packages/proxy-container/.prettierrc.cjs b/apps/proxy-container/.prettierrc.cjs similarity index 100% rename from packages/proxy-container/.prettierrc.cjs rename to apps/proxy-container/.prettierrc.cjs diff --git a/packages/proxy-container/Dockerfile b/apps/proxy-container/Dockerfile similarity index 100% rename from packages/proxy-container/Dockerfile rename to apps/proxy-container/Dockerfile diff --git a/packages/proxy-container/LICENSE b/apps/proxy-container/LICENSE similarity index 100% rename from packages/proxy-container/LICENSE rename to apps/proxy-container/LICENSE diff --git a/packages/proxy-container/README.md b/apps/proxy-container/README.md similarity index 94% rename from packages/proxy-container/README.md rename to apps/proxy-container/README.md index e1d0597e6..44b7e4f25 100644 --- a/packages/proxy-container/README.md +++ b/apps/proxy-container/README.md @@ -19,7 +19,7 @@ ## About -`@discordjs/proxy-container` - Lightweight HTTP proxy for Discord's API, brought to you as a container 📦 +`discordjs/proxy` - Lightweight HTTP proxy for Discord's API, brought to you as a container 📦 ## Usage @@ -79,6 +79,6 @@ If you don't understand something in the documentation, you are experiencing pro [guide-update]: https://discordjs.guide/legacy/additional-info/changes-in-v14 [discord]: https://discord.gg/djs [discord-developers]: https://discord.gg/discord-developers -[source]: https://github.com/discordjs/discord.js/tree/main/packages/proxy-container +[source]: https://github.com/discordjs/discord.js/tree/main/apps/proxy-container [related-libs]: https://discord.com/developers/docs/topics/community-resources#libraries [contributing]: https://github.com/discordjs/discord.js/blob/main/.github/CONTRIBUTING.md diff --git a/packages/proxy-container/package.json b/apps/proxy-container/package.json similarity index 97% rename from packages/proxy-container/package.json rename to apps/proxy-container/package.json index af58428c1..539ba3124 100644 --- a/packages/proxy-container/package.json +++ b/apps/proxy-container/package.json @@ -37,7 +37,7 @@ "repository": { "type": "git", "url": "https://github.com/discordjs/discord.js.git", - "directory": "packages/proxy-container" + "directory": "apps/proxy-container" }, "bugs": { "url": "https://github.com/discordjs/discord.js/issues" diff --git a/packages/proxy-container/src/index.ts b/apps/proxy-container/src/index.ts similarity index 100% rename from packages/proxy-container/src/index.ts rename to apps/proxy-container/src/index.ts diff --git a/packages/proxy-container/tsconfig.eslint.json b/apps/proxy-container/tsconfig.eslint.json similarity index 100% rename from packages/proxy-container/tsconfig.eslint.json rename to apps/proxy-container/tsconfig.eslint.json diff --git a/packages/proxy-container/tsconfig.json b/apps/proxy-container/tsconfig.json similarity index 100% rename from packages/proxy-container/tsconfig.json rename to apps/proxy-container/tsconfig.json diff --git a/packages/proxy-container/tsup.config.ts b/apps/proxy-container/tsup.config.ts similarity index 100% rename from packages/proxy-container/tsup.config.ts rename to apps/proxy-container/tsup.config.ts diff --git a/eslint.config.js b/eslint.config.js index bb3427fd5..2b0b0d59c 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -72,8 +72,10 @@ const typeScriptRuleset = merge(...typescript, { }, }); +const nextAppsGlob = `apps/{guide,website}/**/*${commonFiles}`; + const reactRuleset = merge(...react, { - files: [`apps/**/*${commonFiles}`, `packages/ui/**/*${commonFiles}`], + files: [nextAppsGlob, `packages/ui/**/*${commonFiles}`], plugins: { 'react-compiler': reactCompiler, }, @@ -87,11 +89,11 @@ const reactRuleset = merge(...react, { }, }); -const jsxa11yRuleset = merge(...jsxa11y, { files: [`apps/**/*${commonFiles}`, `packages/ui/**/*${commonFiles}`] }); +const jsxa11yRuleset = merge(...jsxa11y, { files: [nextAppsGlob, `packages/ui/**/*${commonFiles}`] }); -const nextRuleset = merge(...next, { files: [`apps/**/*${commonFiles}`] }); +const nextRuleset = merge(...next, { files: [nextAppsGlob] }); -const edgeRuleset = merge(...edge, { files: [`apps/**/*${commonFiles}`] }); +const edgeRuleset = merge(...edge, { files: [nextAppsGlob] }); const prettierRuleset = merge(...prettier, { files: [`**/*${commonFiles}`] }); diff --git a/packages/actions/src/releasePackages/generateReleaseTree.ts b/packages/actions/src/releasePackages/generateReleaseTree.ts index 77a2c07f7..92c802e74 100644 --- a/packages/actions/src/releasePackages/generateReleaseTree.ts +++ b/packages/actions/src/releasePackages/generateReleaseTree.ts @@ -2,8 +2,6 @@ import { info, warning } from '@actions/core'; import type { PackageJSON, PackumentVersion } from '@npm/types'; import { $, file, write } from 'bun'; -const nonNodePackages = new Set(['@discordjs/proxy-container']); - interface pnpmTreeDependency { from: string; path: string; @@ -50,7 +48,6 @@ async function getReleaseEntries(dry: boolean, devTag?: string) { if (pkg.private) continue; // Just in case if (!pkg.version || !pkg.name) continue; - if (nonNodePackages.has(pkg.name)) continue; const release: ReleaseEntry = { name: pkg.name, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8b0f7a3c2..35209178b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -219,6 +219,52 @@ importers: specifier: ^4.67.0 version: 4.67.0(bufferutil@4.1.0) + apps/proxy-container: + dependencies: + '@discordjs/proxy': + specifier: workspace:^ + version: link:../../packages/proxy + '@discordjs/rest': + specifier: workspace:^ + version: link:../../packages/rest + tslib: + specifier: ^2.8.1 + version: 2.8.1 + devDependencies: + '@types/node': + specifier: ^24.10.13 + version: 24.10.13 + cross-env: + specifier: ^10.1.0 + version: 10.1.0 + eslint: + specifier: ^9.39.2 + version: 9.39.2(jiti@2.6.1) + eslint-config-neon: + specifier: ^0.3.2 + version: 0.3.2(@typescript-eslint/types@8.56.0)(@typescript-eslint/utils@8.56.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) + eslint-formatter-compact: + specifier: ^9.0.1 + version: 9.0.1 + eslint-formatter-pretty: + specifier: ^7.0.0 + version: 7.0.0 + prettier: + specifier: ^3.8.1 + version: 3.8.1 + terser: + specifier: ^5.46.0 + version: 5.46.0 + tsup: + specifier: ^8.5.1 + version: 8.5.1(@microsoft/api-extractor@7.57.1(@types/node@24.10.13))(jiti@2.6.1)(postcss@8.5.6)(tsx@4.19.2)(typescript@5.9.3)(yaml@2.8.2) + turbo: + specifier: ^2.8.10 + version: 2.8.10 + typescript: + specifier: ~5.9.3 + version: 5.9.3 + apps/website: dependencies: '@opennextjs/cloudflare': @@ -1398,52 +1444,6 @@ importers: specifier: ^4.0.18 version: 4.0.18(@edge-runtime/vm@3.2.0)(@types/node@22.19.11)(jiti@2.6.1)(lightningcss@1.31.1)(terser@5.46.0)(tsx@4.19.2)(yaml@2.8.2) - packages/proxy-container: - dependencies: - '@discordjs/proxy': - specifier: workspace:^ - version: link:../proxy - '@discordjs/rest': - specifier: workspace:^ - version: link:../rest - tslib: - specifier: ^2.8.1 - version: 2.8.1 - devDependencies: - '@types/node': - specifier: ^24.10.13 - version: 24.10.13 - cross-env: - specifier: ^10.1.0 - version: 10.1.0 - eslint: - specifier: ^9.39.2 - version: 9.39.2(jiti@2.6.1) - eslint-config-neon: - specifier: ^0.3.2 - version: 0.3.2(@typescript-eslint/types@8.56.0)(@typescript-eslint/utils@8.56.0(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.2(jiti@2.6.1))(typescript@5.9.3) - eslint-formatter-compact: - specifier: ^9.0.1 - version: 9.0.1 - eslint-formatter-pretty: - specifier: ^7.0.0 - version: 7.0.0 - prettier: - specifier: ^3.8.1 - version: 3.8.1 - terser: - specifier: ^5.46.0 - version: 5.46.0 - tsup: - specifier: ^8.5.1 - version: 8.5.1(@microsoft/api-extractor@7.57.1(@types/node@24.10.13))(jiti@2.6.1)(postcss@8.5.6)(tsx@4.19.2)(typescript@5.9.3)(yaml@2.8.2) - turbo: - specifier: ^2.8.10 - version: 2.8.10 - typescript: - specifier: ~5.9.3 - version: 5.9.3 - packages/rest: dependencies: '@discordjs/collection': @@ -18839,7 +18839,7 @@ snapshots: '@types/concat-stream@2.0.3': dependencies: - '@types/node': 22.19.11 + '@types/node': 24.10.13 '@types/cookiejar@2.1.5': {} @@ -19068,7 +19068,7 @@ snapshots: '@types/prompts@2.4.9': dependencies: - '@types/node': 22.19.11 + '@types/node': 24.10.13 kleur: 3.0.3 '@types/react-dom@19.2.3(@types/react@19.2.14)': @@ -19087,7 +19087,7 @@ snapshots: dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 22.19.11 + '@types/node': 24.10.13 form-data: 4.0.5 '@types/supertest@6.0.3': @@ -19112,7 +19112,7 @@ snapshots: '@types/ws@8.18.1': dependencies: - '@types/node': 22.19.11 + '@types/node': 24.10.13 '@types/yargs-parser@21.0.3': {}