matthewwithanm / django-imagekit

Automated image processing for Django. Currently v4.0
http://django-imagekit.rtfd.org/
BSD 3-Clause "New" or "Revised" License
2.24k stars 276 forks source link

Doesn't work with Pillow v8.3.1 #528

Closed AlexElizard closed 2 years ago

AlexElizard commented 2 years ago

Hello, the library does not work with Pillow v8.3.1. And the question is: is the release of a new version planned? Last release was 4 years ago Output: Process finished with exit code -1073741819 (0xC0000005)

Configuration:

vstoykov commented 2 years ago

It's interesting that it is failing. I'm using it in another project with the exact same version of Pillow and it is working.

More information is needed in order this error to be reproduced.

AlexElizard commented 2 years ago

What kind of information is needed?

vstoykov commented 2 years ago

Like is there any traceback or something. Basically anything that can help. This error message Process finished with exit code -1073741819 (0xC0000005) doesn't seems like something from Python. We should identify where the problem is. The reproducible steps with example repo that can be cloned can also be helpful.

Querschlag commented 2 years ago

I'm having the same problem on REL 07 with mod_wsgi, Django 2.2.24, django-imagekit 4.0.2 and Pillow >=8.3.0 (anything below works). It only happens when the application started through the Apache mod_wsgi process. Unfortunately I can not provide a stacktrace or similar. The only output I get is a wsgi error about truncated or oversized response headers and that seems to be the indication for a crashed wsgi process.

Although downgrading Pillow does solve the problem it also reintroduces a handful security issues that were fixed in 8.3.0.

vstoykov commented 2 years ago

Because Pillow is a C library it's possible that the latest versions are not very friendly with the old RHEL. Is it possible to try to reproduce in your environment simple Django application which is using Pillow directly without imagekit to see if it will crash or not?

Imagekit is pure Python application and as such is not doing some very fancy stuff in order to crash the python interpreter without any log. Such kind of crashing is looking like something lower level. I can be wrong and your test can prove or deny that.

reilwaystation commented 2 years ago

yes it's not downgrading to Pillow==8.1.0 works for me

Querschlag commented 2 years ago

Seems to be fixed with Pillow==8.3.2

vstoykov commented 2 years ago

@AlexElizard can you try with Pillow==8.3.2 and mark the issue as invalid because it's not issue with django-imagekit?

AlexElizard commented 2 years ago

@vstoykov The new version of the pillow does not solve the problem. There is a bug in the pillow library when working with windows. I apologize for the time taken dump

lifenautjoe commented 2 years ago

I know this is related to Pillow 8 but Pillow just released version 9.0 which has some breaking changes which do not seem to work with django-imagekit.

Shall I open another issue?

vstoykov commented 2 years ago

Because the previous issue was not related to the django-imagekit at all you can open another issue and provide some details in order to investigate where is the issue. I tested locally with Pillow 9.0 and it seems to work but there can be something which I'm not using from the Pillow which was used by some parts of ImageKit and there to be missing test.