Forking PyPI package

Terry Reedy tjreedy at udel.edu
Wed May 28 22:06:08 EDT 2014


On 5/28/2014 8:31 PM, Wiktor wrote:
> Hello.
>
>    There's script pwdhash https://pypi.python.org/pypi/pwdhash.py/0.1.1,
> which I always* wanted to port to Python 3. (* - well, i.e. 6 months ;-))
>    I'm using this hashing algorithm quite often for years in my browser
> (Opera plugin), so I thought that it would be cool to have it as python
> script.
>
>    It took me some time to make it work under Python 3, because I knew
> nothing about str <-> bytes encoding, and this was biggest issue why
> original script wasn't Py3 compatible. So now my version works, it even
> supports Unicode characters (original JS script does that, but pwdhash.py
> script doesn't), and now I'm planning to do simple GUI version, because
> copying from console isn't very comfortable (and I couldn't find good [os
> and other packages independent] solution to copy string to clipboard. Best
> answer from here http://goo.gl/8V9Ba6 isn't working).
>    So, my point is, I think maybe it would be useful also to others.
>
>    I'm newbie not only to Python, but to programming in general, so I don't
> know, what is best practice in OS programming community. How forking works.
> How py2->py3 porting (by 3rd person) is realized in Pythonians community.
> Can you suggest me something? I see few scenarios:
>
> 1) I'm trying to contact with original script's author, and send him my
> propositions of changes in code. (Oh, one more thing: my code isn't
> backward compatible, and I don't know Py2 that much to include all those
> try/except, so it could be Py2+Py3 compatible). He decides, if he wants to
> release it as Py3 only version, or combine it with his script and release
> Py2+Py3 common version.
>
> 2) I'm not contacting with him, and I'm forking his project on GitHub
>     a) under the same name? - probably bad idea
>     b) under new name (e.g. py3pwdhash)?
> Of course all credits about original author stay in code / setup.py.
>
> 2.1) After forking on GitHub, I'm creating new package on PyPI
>     a) under old name, but different version number, and new description?
>     b) under new name, to not confuse users?
>
>
>    So, what should I do?
>    I know, that maybe I shouldn't touch that script in first place and just
> mail to author "Hey, would you please port it to Py3?", but I also treated
> it as programming exercise, and I didn't think about consequences. ;-)

Check the license of the code *and* contact the author if possible.

-- 
Terry Jan Reedy




More information about the Python-list mailing list