Repository navigation
Conversation
Что: - public-ip 6.0.2 -> 8.0.0 (точная версия) в apps/dokploy и packages/server. - Код не менялся: getPublicIpWithFallback в packages/server/src/wss/utils.ts и apps/dokploy/server/wss/terminal.ts вызывает publicIpv4/publicIpv6 без опций и ловит любую ошибку. - Из bun.lock ушли got 12 и его зависимости (cacheable-request, http2-wrapper, keyv и др.): v8 ходит по HTTPS через встроенный fetch. Зачем: - Major-обновление (волна 1): v6 больше не развивается, v8 тянет меньше зависимостей. Риски: - timeout (по умолчанию 5 с) в v8 считается на всю операцию, а не на каждый запрос: при недоступном IPv4 переход на IPv6 наступает не позже чем через 5 с. - При ошибке теперь бросается IpNotFoundError или TimeoutError; код ловит любую ошибку, поведение то же. - Нужен Node.js 20+, в образах Node 24. - Метод .cancel() удалён; в коде он не использовался. Проверки: - bun run typecheck: все 4 workspace без ошибок. - vitest: __test__/wss, domain-validation, domain-overview, cluster-router-security - 41 файл, 602 теста пройдены. - bunx biome check на изменённых package.json: без замечаний. - bun audit --audit-level=moderate: уязвимостей нет. - Локально publicIpv4() вернул IPv4-адрес, publicIpv6() без IPv6 отклонился с TimeoutError. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Collaborator
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Зачем
public-ipопределяет публичный IP сервера для веб-терминала (сначала IPv4, при ошибке IPv6). Ветка 6.x больше не развивается; 8.x отказалась отgotи ходит по HTTPS через встроенныйfetch, поэтому вbun.lockстало заметно меньше пакетов.Что изменилось
public-ip6.0.2 → 8.0.0 (вышла 2025-09-21), точная версия вapps/dokploy/package.jsonиpackages/server/package.json.getPublicIpWithFallbackвpackages/server/src/wss/utils.tsиapps/dokploy/server/wss/terminal.tsвызываетpublicIpv4()/publicIpv6()без опций и ловит любую ошибку, это совместимо с v8.bun.lock: удаленыgot12 и его дерево (cacheable-request,http2-wrapper,keyv,p-cancelableи др.),is-ip4 → 5,aggregate-error4 больше не нужен. Другие пакеты не сдвинулись.Из release notes:
.cancel(), вместо него опцияsignal(AbortController) — мы.cancel()не использовали;timeoutтеперь действует на всю операцию, а не на каждый запрос.Что это значит для нас: по умолчанию
timeout5 с на весь поиск, так что если IPv4 недоступен, переход на IPv6 наступает не позже чем через 5 с. При неудаче v8 бросаетIpNotFoundErrorилиTimeoutError; нашcatchловит любую ошибку, поведение то же.Проверки
bun install --frozen-lockfile— ок.bun run typecheck— все 4 workspace без ошибок.bunx vitest run --config __test__/vitest.config.ts __test__/wss __test__/domains/domain-validation.test.ts __test__/domain-overview __test__/cluster/cluster-router-security.test.ts— 41 файл, 602 теста пройдены (часть из них импортируетserver/wss/terminal.ts, то есть сам модульpublic-ipv8).bunx biome checkна изменённыхpackage.json— без замечаний.bun audit --audit-level=moderate— уязвимостей нет.publicIpv4()вернул IPv4-адрес;publicIpv6()на машине без IPv6 отклонился сTimeoutError, который нашcatchперехватывает.next buildиserver:build(их соберёт CI). Тестов, которые мокаютpublic-ipи проверяют переход IPv4 → IPv6, в репозитории нет; новый сетевой тест не добавлял.Что проверить вручную на dev
Error obtaining public IPv4 addressилиError to obtain public IPv4 addressпри открытии терминала.🤖 Generated with Claude Code