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>
This commit is contained in:
Almeida
2026-03-02 19:34:45 +00:00
committed by GitHub
parent ec796caf00
commit 3c9d90ad7e
27 changed files with 126 additions and 78 deletions

2
.github/CODEOWNERS vendored
View File

@@ -10,6 +10,7 @@ pnpm-lock.yaml @discordjs/core
/apps/guide/ @discordjs/website @discordjs/guide /apps/guide/ @discordjs/website @discordjs/guide
/apps/guide/content/ @discordjs/guide /apps/guide/content/ @discordjs/guide
/apps/proxy-container/ @discordjs/proxy
/apps/website/ @discordjs/website /apps/website/ @discordjs/website
/packages/actions/ @discordjs/actions /packages/actions/ @discordjs/actions
@@ -26,7 +27,6 @@ pnpm-lock.yaml @discordjs/core
/packages/formatters/ @discordjs/formatters /packages/formatters/ @discordjs/formatters
/packages/next/ @discordjs/core /packages/next/ @discordjs/core
/packages/proxy/ @discordjs/proxy /packages/proxy/ @discordjs/proxy
/packages/proxy-container/ @discordjs/proxy
/packages/rest/ @discordjs/rest /packages/rest/ @discordjs/rest
/packages/scripts/ @discordjs/scripts /packages/scripts/ @discordjs/scripts
/packages/structures/ @discordjs/structures /packages/structures/ @discordjs/structures

View File

@@ -22,7 +22,6 @@ body:
- formatters - formatters
- next - next
- proxy - proxy
- proxy-container
- rest - rest
- structures - structures
- ui - ui

View File

@@ -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

View File

@@ -16,6 +16,7 @@ body:
- discord.js - discord.js
- Documentation - Documentation
- Guide - Guide
- Proxy Container
- brokers - brokers
- builders - builders
- collection - collection
@@ -24,7 +25,6 @@ body:
- formatters - formatters
- next - next
- proxy - proxy
- proxy-container
- rest - rest
- structures - structures
- ui - ui

View File

@@ -1,6 +1,9 @@
apps:guide: apps:guide:
- "### Which (application|package|application or package) is this (bug - "### Which (application|package|application or package) is this (bug
report|feature request) for\\?\\n\\nGuide\\n" 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: apps:website:
- "### Which (application|package|application or package) is this (bug - "### Which (application|package|application or package) is this (bug
report|feature request) for\\?\\n\\nDocumentation\\n" report|feature request) for\\?\\n\\nDocumentation\\n"
@@ -31,9 +34,6 @@ packages:next:
packages:proxy: packages:proxy:
- "### Which (application|package|application or package) is this (bug - "### Which (application|package|application or package) is this (bug
report|feature request) for\\?\\n\\nproxy\\n" 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: packages:rest:
- "### Which (application|package|application or package) is this (bug - "### Which (application|package|application or package) is this (bug
report|feature request) for\\?\\n\\nrest\\n" report|feature request) for\\?\\n\\nrest\\n"

10
.github/labeler.yml vendored
View File

@@ -3,6 +3,11 @@ apps:guide:
- any-glob-to-any-file: - any-glob-to-any-file:
- apps/guide/* - apps/guide/*
- apps/guide/**/* - apps/guide/**/*
apps:proxy-container:
- changed-files:
- any-glob-to-any-file:
- apps/proxy-container/*
- apps/proxy-container/**/*
apps:website: apps:website:
- changed-files: - changed-files:
- any-glob-to-any-file: - any-glob-to-any-file:
@@ -68,11 +73,6 @@ packages:proxy:
- any-glob-to-any-file: - any-glob-to-any-file:
- packages/proxy/* - packages/proxy/*
- packages/proxy/**/* - packages/proxy/**/*
packages:proxy-container:
- changed-files:
- any-glob-to-any-file:
- packages/proxy-container/*
- packages/proxy-container/**/*
packages:rest: packages:rest:
- changed-files: - changed-files:
- any-glob-to-any-file: - any-glob-to-any-file:

4
.github/labels.yml vendored
View File

@@ -4,6 +4,8 @@
color: '5663e9' color: '5663e9'
- name: apps:guide - name: apps:guide
color: fbca04 color: fbca04
- name: apps:proxy-container
color: fbca04
- name: apps:website - name: apps:website
color: fbca04 color: fbca04
- name: backlog - name: backlog
@@ -76,8 +78,6 @@
color: fbca04 color: fbca04
- name: packages:proxy - name: packages:proxy
color: fbca04 color: fbca04
- name: packages:proxy-container
color: fbca04
- name: packages:rest - name: packages:rest
color: fbca04 color: fbca04
- name: packages:structures - name: packages:structures

View File

@@ -6,7 +6,6 @@ on:
paths: paths:
- 'packages/*/src/**' - 'packages/*/src/**'
- '!packages/create-discord-bot/**' - '!packages/create-discord-bot/**'
- '!packages/proxy-container/**'
- '!packages/ui/**' - '!packages/ui/**'
tags: tags:
- '**' - '**'

View File

@@ -40,7 +40,7 @@ jobs:
uses: docker/build-push-action@v6 uses: docker/build-push-action@v6
with: with:
context: . context: .
file: packages/proxy-container/Dockerfile file: apps/proxy-container/Dockerfile
platforms: ${{ matrix.platform }} platforms: ${{ matrix.platform }}
outputs: type=image,name=${{ env.IMAGE_NAME }},push-by-digest=true,name-canonical=true,push=true outputs: type=image,name=${{ env.IMAGE_NAME }},push-by-digest=true,name-canonical=true,push=true

View File

@@ -38,7 +38,7 @@ jobs:
uses: docker/build-push-action@v6 uses: docker/build-push-action@v6
with: with:
context: . context: .
file: packages/proxy-container/Dockerfile file: apps/proxy-container/Dockerfile
platforms: ${{ matrix.platform }} platforms: ${{ matrix.platform }}
outputs: type=image,name=${{ env.IMAGE_NAME }},push-by-digest=true,name-canonical=true,push=true 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 - name: Get Major Version
id: version id: version
run: | 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) MAJOR=$(echo $FULL_VER | cut -d '.' -f1)
echo "major=$MAJOR" >> $GITHUB_OUTPUT echo "major=$MAJOR" >> $GITHUB_OUTPUT

View File

@@ -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 [util-source]: https://github.com/discordjs/discord.js/tree/main/packages/util
[voice-source]: https://github.com/discordjs/discord.js/tree/main/packages/voice [voice-source]: https://github.com/discordjs/discord.js/tree/main/packages/voice
[ws-source]: https://github.com/discordjs/discord.js/tree/main/packages/ws [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 [good-first-issue]: https://github.com/discordjs/discord.js/contribute

View File

@@ -19,7 +19,7 @@
## About ## 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 ## 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 [guide-update]: https://discordjs.guide/legacy/additional-info/changes-in-v14
[discord]: https://discord.gg/djs [discord]: https://discord.gg/djs
[discord-developers]: https://discord.gg/discord-developers [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 [related-libs]: https://discord.com/developers/docs/topics/community-resources#libraries
[contributing]: https://github.com/discordjs/discord.js/blob/main/.github/CONTRIBUTING.md [contributing]: https://github.com/discordjs/discord.js/blob/main/.github/CONTRIBUTING.md

View File

@@ -37,7 +37,7 @@
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/discordjs/discord.js.git", "url": "https://github.com/discordjs/discord.js.git",
"directory": "packages/proxy-container" "directory": "apps/proxy-container"
}, },
"bugs": { "bugs": {
"url": "https://github.com/discordjs/discord.js/issues" "url": "https://github.com/discordjs/discord.js/issues"

View File

@@ -72,8 +72,10 @@ const typeScriptRuleset = merge(...typescript, {
}, },
}); });
const nextAppsGlob = `apps/{guide,website}/**/*${commonFiles}`;
const reactRuleset = merge(...react, { const reactRuleset = merge(...react, {
files: [`apps/**/*${commonFiles}`, `packages/ui/**/*${commonFiles}`], files: [nextAppsGlob, `packages/ui/**/*${commonFiles}`],
plugins: { plugins: {
'react-compiler': reactCompiler, '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}`] }); const prettierRuleset = merge(...prettier, { files: [`**/*${commonFiles}`] });

View File

@@ -2,8 +2,6 @@ import { info, warning } from '@actions/core';
import type { PackageJSON, PackumentVersion } from '@npm/types'; import type { PackageJSON, PackumentVersion } from '@npm/types';
import { $, file, write } from 'bun'; import { $, file, write } from 'bun';
const nonNodePackages = new Set(['@discordjs/proxy-container']);
interface pnpmTreeDependency { interface pnpmTreeDependency {
from: string; from: string;
path: string; path: string;
@@ -50,7 +48,6 @@ async function getReleaseEntries(dry: boolean, devTag?: string) {
if (pkg.private) continue; if (pkg.private) continue;
// Just in case // Just in case
if (!pkg.version || !pkg.name) continue; if (!pkg.version || !pkg.name) continue;
if (nonNodePackages.has(pkg.name)) continue;
const release: ReleaseEntry = { const release: ReleaseEntry = {
name: pkg.name, name: pkg.name,

100
pnpm-lock.yaml generated
View File

@@ -219,6 +219,52 @@ importers:
specifier: ^4.67.0 specifier: ^4.67.0
version: 4.67.0(bufferutil@4.1.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: apps/website:
dependencies: dependencies:
'@opennextjs/cloudflare': '@opennextjs/cloudflare':
@@ -1398,52 +1444,6 @@ importers:
specifier: ^4.0.18 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) 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: packages/rest:
dependencies: dependencies:
'@discordjs/collection': '@discordjs/collection':
@@ -18839,7 +18839,7 @@ snapshots:
'@types/concat-stream@2.0.3': '@types/concat-stream@2.0.3':
dependencies: dependencies:
'@types/node': 22.19.11 '@types/node': 24.10.13
'@types/cookiejar@2.1.5': {} '@types/cookiejar@2.1.5': {}
@@ -19068,7 +19068,7 @@ snapshots:
'@types/prompts@2.4.9': '@types/prompts@2.4.9':
dependencies: dependencies:
'@types/node': 22.19.11 '@types/node': 24.10.13
kleur: 3.0.3 kleur: 3.0.3
'@types/react-dom@19.2.3(@types/react@19.2.14)': '@types/react-dom@19.2.3(@types/react@19.2.14)':
@@ -19087,7 +19087,7 @@ snapshots:
dependencies: dependencies:
'@types/cookiejar': 2.1.5 '@types/cookiejar': 2.1.5
'@types/methods': 1.1.4 '@types/methods': 1.1.4
'@types/node': 22.19.11 '@types/node': 24.10.13
form-data: 4.0.5 form-data: 4.0.5
'@types/supertest@6.0.3': '@types/supertest@6.0.3':
@@ -19112,7 +19112,7 @@ snapshots:
'@types/ws@8.18.1': '@types/ws@8.18.1':
dependencies: dependencies:
'@types/node': 22.19.11 '@types/node': 24.10.13
'@types/yargs-parser@21.0.3': {} '@types/yargs-parser@21.0.3': {}