I have just successfully built the package under python 2.7.3 by using the
HTMLParser from python rather than Django's version.

-- 
David Watson
dwat...@debian.org

On 2 August 2012 13:16, David Watson <da...@planetwatson.co.uk> wrote:

> On 2 August 2012 13:08, Raphael Hertzog <hert...@debian.org> wrote:
>
>> On Thu, 02 Aug 2012, Raphael Hertzog wrote:
>> > On Thu, 02 Aug 2012, Raphael Hertzog wrote:
>> > > If the problem is indeed not in Django, then we can temporarily
>> disable
>> > > the test suite and upload the package.
>> >
>> > I just tried to build the current python-django 1.4-1 in Debian Sid and
>> it
>> > also failed. So this tends to confirm that something else broke Django's
>> > test suite (since the test suite worked when I uploaded 1.4-1 to sid).
>> >
>> > Now we need to find the culprit (and fix it or work-around it).
>>
>> Apparently the build works fine in wheezy so I have built it in wheezy and
>> uploaded it in sid.
>>
>> sid and wheezy differ in their python2.7 version: 2.7.3-2 vs 2.7.3~rc2-2.1
>>
>> So the regression might be between those two versions.
>>
>> Doko, python-django test suite fails in sid but not in wheezy. The failure
>> looks like a HTMLParser regression. Do you know of any possible regression
>> in python 2.7.3 about this?
>>
>> I see in the upstream changelog a “- Issue #14538: HTMLParser can now
>> parse correctly start tags that contain a bare '/'.” maybe this could be
>> related?
>>
>> I also found https://code.djangoproject.com/ticket/18239 which might
>> imply
>> that Django is relying on some internals of HTMLParser so it would
>> actually be a bug in Django in that case...
>>
>> I was just looking into this and these are the changes in HTMLParser.py
>
> diff ../HTMLParser.py-old ../HTMLParser.py
> 25c25
> < tagfind = re.compile('[a-zA-Z][-.a-zA-Z0-9:_]*')
> ---
> > tagfind = re.compile('([a-zA-Z][-.a-zA-Z0-9:_]*)(?:\s|/(?!>))*')
> 31c31
> <     r'[\s/]*((?<=[\'"\s/])[^\s/>][^\s/=>]*)(\s*=+\s*'
> ---
> >     r'((?<=[\'"\s/])[^\s/>][^\s/=>]*)(\s*=+\s*'
> 292c292
> <         self.lasttag = tag = rawdata[i+1:k].lower()
> ---
> >         self.lasttag = tag = match.group(1).lower()
>
> --
> David Watson
> dwat...@debian.org
>

Reply via email to