Resolve every tool's versions through the tool-versions data
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
- 技術スタック
- docker, github, typescript
調査の方向性
Start by reading the resolver changes in #7826 and the embedded fallback work in #7825, then trace the tool-version data flow between containerbase/base and containerbase/tool-versions. Compare tools with registry lookups, swallowed errors, or special constraints such as Poetry's plugin range. Done means every tool resolves latest, partial, and exact versions through online data with embedded fallback, while respecting release age and tool-specific limits.
索引モデルが issue の本文から書いたものです。
説明
What would you like containerbase to do?
Give every tool a version resolver and resolve all of them through the tool-versions data.
Today the tools are covered unevenly:
-
some tools have no resolver and only get the generic partial-version lookup from #7826
-
some resolvers only handle
latest(php, composer, mise) -
some resolvers catch their own lookup errors and keep the input, so the embedded fallback from #7825 never runs (nuget, gradle, maven, pip), eg.
install-tool nuget 6.11downloadsv6.11whentools.jsoncan't be reached -
some resolvers apply more than a version lookup, which the embedded fallback skips, eg. poetry's
latestrespects the version range ofpoetry-plugin-pypi-mirror, the offline fallback picks the newest embedded release
Required changes
- one resolver per tool, based on the tool-versions data (online first, embedded as fallback)
-
latest, partial and exact versions resolve the same way for every tool - lookup errors aren't swallowed, the shared fallback handles them
- tool-specific limits, like poetry's plugin range, also apply to versions from the tool-versions data
- a minimum release age (eg. 1 hour) for
latestand partial versions, so a new release isn't picked before all its downloads are reachable: in tool-versions when publishing, and in resolvers that still ask a registry directly. Eg.install-pip pipenv 2026resolved to 2026.10.2 from the PyPI JSON api 6½ minutes after the upload, while pip's index still ended at 2026.10.1. - drop the interim
partialflag from #7826
Some resolutions change for users, eg. a partial version that was used as is resolves to the newest matching release. That is accepted, the embedded data keeps installs working when the online lookup fails.
Part of #7768.
Drafted by Claude Opus 5.5 (Claude Code) for @viceice.
- 主要言語
- TypeScript
- スター
- 58
- フォーク
- 65
- 平均マージ
- 11時間 31分
- マージ済み PR(30日)
- 443
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートなし
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
containerbase/base のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
containerbase/base#7891 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
containerbase/base#7842 ·
メンテナーはふだん 1 日以内に返信
-
priority-3-normal tool/dotnet
難易度 1/5 1〜3時間 初心者へのやさしさ 78/100
containerbase/base#5996 ·
メンテナーはふだん 1 日以内に返信
-
git prebuild (OpenSSL) breaks HTTPS on FIPS-enabled hosts: "Insufficient randomness"対応中かも @ollie-sutton が今日担当しました。 オープン
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
containerbase/base#7922 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
containerbase/base#7908 ·
メンテナーはふだん 1 日以内に返信
containerbase/base の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
cloudscape-design/components#5184 ·
メンテナーはふだん 2 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
JarX-Concepts/react-native-platform-components#130 ·
メンテナーはふだん 1 日以内に返信
-
fix(api): optimize-for-web /preview outer catches miss asDecoderOutOfMemory on V8 OOM and SIGKILLオープンarea: backend bug priority: low
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
snapotter-hq/SnapOtter#3773 ·
メンテナーはふだん 1 日以内に返信
-
ai-driven-qa ux-audit
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
linagora/twake-contacts-frontend#386 ·
メンテナーはふだん 1 日以内に返信
-
git: README should state plainly that without --repository every reachable repository is in scopeオープンdocumentation server-git v2
難易度 1/5 1〜3時間 初心者へのやさしさ 84/100
modelcontextprotocol/servers#5225 ·
メンテナーはふだん 1 日以内に返信