`VersionConstraint.version` is allowed to be `None`
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 32/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- python
調査の方向性
Start with src/univers/version_constraint.py at the linked line where wildcard constraints produce a None version. Reproduce the examples with VersionRange.from_string("vers:npm/1.1|2.2") and VersionRange.from_string("vers:npm/*"), then read related issues #10 and #19 for the intended API. Done means the project has a clear, tested behavior for wildcard constraints instead of an unexpected raw None.
索引モデルが issue の本文から書いたものです。
説明
Is is more of a design decision than an issue.
Let's consider that in a place far far away, someone writes a piece code to get versions from all the constraints:
>>> vr = VersionRange.from_string("vers:npm/1.1|2.2")
>>> range_versions = [c.version for c in vr.constraints]
>>> range_versions
[SemverVersion(string='1.1'), SemverVersion(string='2.2')]
Everything is nice and good until we meet vers:ANY/*
>>> vr = VersionRange.from_string("vers:npm/*")
>>> range_versions = [c.version for c in vr.constraints]
>>> range_versions
[None]
Suddenly, range_versions break all expectations and contains a value value of NoneType than Version
A possible fix would be to allow None versions, such as Version(None)
Introduced here:
https://github.com/nexB/univers/blob/83e4fa651da7868f5c6f7c05a006bfadaac8d1cd/src/univers/version_constraint.py#L70
Related:
https://github.com/nexB/univers/issues/10
https://github.com/nexB/univers/issues/19
- 主要言語
- Python
- スター
- 50
- フォーク
- 31
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
aboutcode-org/univers のほかの issue
-
Do not allow creation of `VersionRange` with empty constraint対応中かも @MGpromax が 66 日前に担当しました。 オープンbug High-Priority
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
aboutcode-org/univers#203 ·
-
maven.py: "release" qualifier not treated as release alias対応中かも @selsky が 72 日前に担当しました。 オープン
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
aboutcode-org/univers#188 ·
-
VersionRange.invert() returns a complement that excludes versions outside an enumerated range対応中かも @akashrajeev が 13 日前に担当しました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 72/100
aboutcode-org/univers#214 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 15/100
aboutcode-org/univers#206 · コメント 3 件 · リアクション 2 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 18/100
aboutcode-org/univers#205 ·
aboutcode-org/univers の issue をすべて見る
似ている issue
-
getchaintips leaves out the active tip once a header is staged on it, where Core always lists itオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
btclib-org/btclib-node#2158 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
dbt-msft/dbt-sqlserver#897 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
Gathin23/cleanyourtv#2770 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
vllm-project/vllm#64845 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
dekobon/big-code-analysis#1729 ·
メンテナーはふだん 1 日以内に返信