libgit2 / libgit2/pygit2

Improve repr of pygit2.hash

オープン
#1,215 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
Python
スター
1.7k
フォーク
408
平均マージ
2日 57分
マージ済み PR(30日)
7

説明

At present hash and pygit2.hash have the same repr. We can tell them apart by looking at the __module__ attribute. But not their type.

Python 3.10.6 (main, Nov 14 2022, 16:10:14) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygit2
>>> hash, pygit2.hash
(<built-in function hash>, <built-in function hash>)
>>> id(hash) - id(pygit2.hash)
2918112
>>> pygit2.hash.__module__
'pygit2._pygit2'
>>> hash.__module__
'builtins'
>>> type(hash), type(pygit2.hash)
(<class 'builtin_function_or_method'>, <class 'builtin_function_or_method'>)
>>> 

This will confuse anyone who relies on repr to check that they are using the correct hash function.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

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

調査の方向性

まず、issue にある Python REPL の例を再現し、pygit2.hash の背後にある実装を調べます。現在その repr が built-in hash とどのように一致しているかを確認し、次に 2 つの関数を区別できるよう表現を変更して、Python で修正後の出力を検証します。

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

評価

技術スタック
python
領域
devtools
issue の種類
機能追加
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

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

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