[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#873156: fofix: FoFiX.py rises a NotImplementedError on startup



Control: tag -1 - patch

On Fri, 25 Aug 2017 06:15:51 +0200 Christian Trenkwalder <christian@trenkwalder.it> wrote:
> Dear Maintainer,

The fofix package unfortunately has no maintainer any more.
https://bugs.debian.org/836421

> after installing the fofix package on a (up-to-date) system, 
> the application terminates due to unhandlet exception.
> This is caused by the usage of the removed 'tostring()' within python and python suggests 'tobytes()' should be used instead. 

Confirmed in stretch.
Can't reproduce in sid, since the package is not installable
due to python-imaging being gone. Installing python-imaging from
stretch in sid is possible, but results in different errors.

> After replacing the tostring() calls with tobytes() as suggested, 
> the application becomes usable.
> 
> I have attached a diff at the end of the report.

There seem to be more occurrences of tostring in the source than
the ones updated by your patch, do they need updating, too?
Are the objects touched by your patch actally of the same problematic
type? The signatures of the tostring() methods seems to differ.
But I didn't dig deep...

src/Shader.py:508:      noise = pygame.image.tostring(img, "RGB")
src/Texture.py:77:      string = image.tostring('raw', 'RGBA', 0, -1)
src/Texture.py:80:      string = image.tostring('raw', 'RGB', 0, -1)
src/Texture.py:83:      string = image.tostring('raw', 'L', 0, -1)
src/Texture.py:89:        string = image.tostring('raw', 'RGB', 0, -1)
src/Texture.py:114:      string = pygame.image.tostring(surface, "RGB")
src/Texture.py:116:      string = image.tostring('raw', 'L', 0, -1)
src/Texture.py:120:        string = pygame.image.tostring(surface, "RGBA", True)
src/Texture.py:123:        string = pygame.image.tostring(surface, "RGB", True)
src/Texture.py:133:      string = pygame.image.tostring(surface, "RGB")
src/Texture.py:135:      string = image.tostring('raw', 'L', 0, -1)
src/Texture.py:139:        string = pygame.image.tostring(surface, "RGBA", True)
src/Texture.py:142:        string = pygame.image.tostring(surface, "RGB", True)
src/Video.py:114:      bigIconColorData = bigIcon.tostring()
src/Video.py:115:      bigIconMaskData = bigIcon.split()[3].point(lambda p: 255 - p).convert('1').tostring()
src/Video.py:116:      smallIconColorData = smallIcon.tostring()
src/Video.py:117:      smallIconMaskData = smallIcon.split()[3].point(lambda p: 255 - p).convert('1').tostring()
src/FontTest.py:134:    letter = pygame.image.tostring(letter_render, 'RGBA', 1)

There is not much point fixing this without fixing
https://bugs.debian.org/866423
i.e. switching from python-imaging to e.g. python-pil
which may require interface adaptations as well.


Andreas


Reply to: