Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

PypiVersionAPI.get_latest_date() crashes when a release entry is missing upload_time_iso_8601

オープン 初心者向け
#863 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@drawliin がすでに取り組んでいます。

2026年4月4日 から。

  • #864 @drawliin による — オープン

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
72/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
静か
技術スタック
python
領域
backend

調査の方向性

packagedb/package_managers.py を開き、PypiVersionAPI.get_latest_date() を見つけます。Issue に示されている downloads リストで失敗を再現し、その後、upload_time_iso_8601 のないエントリがスキップされ、有効なリリース日が UnboundLocalError なしで引き続き処理されることを確認します。

索引モデルが issue の本文から書いたものです。

説明

Summary

PypiVersionAPI.get_latest_date() in packagedb/package_managers.py can fail when a PyPI release entry is missing upload_time_iso_8601.

The current implementation only assigns current_date when that field is present, but still uses current_date later in the loop even when it was never set. That can raise UnboundLocalError instead of skipping the malformed entry.

Current behavior

A case like this can fail:

downloads = [
    {},
    {"upload_time_iso_8601": "2010-12-23T05:14:23.509436Z"},
]
主要言語
HTML
スター
70
フォーク
74
平均マージ
2日 4時間
マージ済み PR(30日)
7

環境構築

  • Dockerfile または Docker Compose ファイルあり
  • プルリクエストのテンプレートなし
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

aboutcode-org/purldb のほかの issue

aboutcode-org/purldb の issue をすべて見る

似ている issue

Backend & API Design の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。