Python 2 to 3 conversion - embrace the pain

John Nagle nagle at animats.com
Wed Mar 18 02:37:06 EDT 2015


On 3/15/2015 4:43 PM, Roy Smith wrote:
> In article <am4cga9sn16m74v1952gnfq5u443mkk9l1 at 4ax.com>,
>  Mario Figueiredo <marfig at gmail.com> wrote:
> 
>> What makes you think your anecdotal bugs constitute any sort of
>> evidence this programming language isn't ready to be used by the
>> public?
> 
> There's several levels of "ready".
> 
> I'm sure the core language is more than ready for production use for a 
> project starting from scratch which doesn't rely on any third party 
> libraries.
> 
> The next step up on the "ready" ladder would be a new project which will 
> require third-party libraries.  And that pretty much means any 
> non-trivial project.  I'm reasonably confident that most common use 
> cases can now be covered by p3-ready third party modules. 

   If only that were true.  Look what I'm reporting bugs on:

	ssl - a core Python module.
	cPickle - a core Python module.
	pymysql - the pure-Python recommended way to talk to MySQL.
	bs4/html5parser - a popular parser for HTML5

We're not in exotic territory here.  I've done lots of exotic
projects, but this isn't one of them.

There's progress.  The fix to "ssl" has been made and committed.
I have a workaround for the cPickle bug - use pure-Python Pickle.
I have a workaround for the pymysql problem, and a permanent fix
is going into the next release of pymysql. I have a tiny test case
for bs4/html5parser that reproduces the bug on a tiny snippet of
HTML, and that's been uploaded to the BS4 issues tracker.
I don't have a workaround for that.

All this has cost me about two weeks of work so far.

The "everything is just fine" comments are not helpful.
Denial is not a river in Egypt.

				John Nagle
	




More information about the Python-list mailing list