Develop a way to figure out the maximal list of projects that _may_ be compatible with WASI
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
調査の方向性
まず pypi-data プロジェクトと、pure wheels 用に文書化された sqlite3 クエリを確認します。作業範囲は、WASI wheel tags の依存関係解決、wheel のイントロスペクションと imports、WASI 上の pytest、および提案されている PyPI classifiers に及びます。完了条件は、記載された 6 層にわたる互換性アプローチを文書化して作成することです。
索引モデルが issue の本文から書いたものです。
説明
We are after a list of potential projects that could work with Python under WASI. There's essentially 6 layers to this, each one more specific than the previous, but all accurate for what they claim:
- All projects on PyPI
- Projects on PyPI that have a pure Python wheel
- Projects who only have dependencies that are pure Python wheels
- Importation of the top-level project succeeds
- Test suite passes
- Projects declare their support
We can calculate layers 1 and 2 easily thanks to https://github.com/sethmlarson/pypi-data (although with slightly outdated data). We can calculate layer 2 with sqlite3 pypi.db 'SELECT DISTINCT package_name FROM wheels WHERE python = "py3" OR python = "py2.py3" ORDER BY package_
name ASC' > project_with_pure_wheels.txt.
Layer 3 requires writing a resolver which can resolve for a specific environment and only for specific wheel tags (which helps out with lock files, but it's still work). Layer 4 probably can be automated with introspection inside wheel files and importing module(s) based on what's found in them (luckily WASI is sandboxed, so this should actually be a safe operation). Layer 5 will either have to be some crazy set of heuristics or we accept it as being a per-project thing (plus being able to actually run pytest under WASI). And for layer 6, I have opened https://discuss.python.org/t/do-we-want-classifiers-for-webassembly-on-pypi/22712 to discuss it with the community.
- 主要言語
- Python
- スター
- 100
- フォーク
- 15
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
microsoft/vscode-python-web-wasm のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 30/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
microsoft/vscode-python-web-wasm#46 · コメント 2 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 48/100
microsoft/vscode-python-web-wasm#37 · リアクション 2 件 ·
microsoft/vscode-python-web-wasm の issue をすべて見る
似ている issue
-
area/auth bug comp/agent P3 platform/discord type/security
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
NousResearch/hermes-agent#117848 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
bancolombia/sentinel#23 ·
-
test md オープンCI
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
langchain-ai/deepagents#6450 ·
-
bug client
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100