Good information, thanks for digging! That is strange. Glad to know Pillow
worked (I'd love to see it replace PIL entirely), but I wish I knew why
zlib couldn't be found.
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com
On Fri, Oct 19, 2012 at 1:16 PM, Chris Clark <chris.cl...@actian.com> wrote:
> Yet more info, please excuse the top post.
> We hit this again (reviewboard 1.6.11 silently does not create thumbnails
> now, rather than raising an error). I think I have a better handle on why
> the"simple" test works and yet Django/Reviewboard fails.
> Image.open() doesn't do anything interesting. It isn't until you try and
> read the file that anything is done. The real test is:
> import Image
> except ImportError:
> from PIL import Image
> x = Image.open("/home/ingres/patchdoc_new.png")
> The "to string" fails for me with:
> IOError: decoder zip not available
> Due to some weird inability to find zlib. There are some notes online
> about Ubuntu (and suggesting soft linking) but they didn't work for me.
> I ended up trying Pillow (they've done some cleanup for easy install). My
> new "fix" is now:
> sudo rm -rf
> # or what ever version is being used
> sudo easy_install Pillow
> In the course of this research I ended up installing a few dev libs but
> using PIL with them did NOT help, I'm not sure if they helped with Pillow
> or not :-)
> sudo apt-get install libpng-dev
> sudo apt-get install libfreetype6-dev
> Using the base OS provided library is usually the better option though (as
> per my last update).
> On Monday, October 24, 2011 2:29:59 PM UTC-7, Chris Clark wrote:
> Thilo-Alexander Ginkel wrote:
> > On Mon, Feb 14, 2011 at 23:01, Christian Hammond <> wrote:
> >> I don't believe they're stored temporarily anywhere. If so, it's
> internal to
> >> Django and I don't know it off-hand.
> >> The only thing I've ever seen permission-wise is when there's a
> >> within media/uploaded that doesn't have the proper write
> permissions for the
> >> server.
> > Hm... Actually, after doing some more testing I think that
> > aren't an issue as GIF files can be uploaded properly. I also can't
> > imaging why libpng should be loadable from the command line, but not
> > from the Apache process...
> Arise zombie thread, live again! ;-)
> OK, so it turns out after years of happily running with RB we've hit
> this too. I KNOW this used to work (as my image testing when we first
> deployed was with PNG files).
> Our problem appears to be identical to this, regular RB install (i.e.
> easy_install based) which always seems to pull down PIL even though it
> is already installed (we're running Ubuntu server and I always ensure
> the debian PIL package is installed that has full image support). We
> could only attach new GIF screen shots to reviews.
> Using PIL in a Python terminal always worked (i.e. open the supposedly
> bad image via Image.open), but RB/Django would always fail with:
> ------ Cut here ------
> Upload Screenshot
> One or more fields had errors
> * Upload a valid image. The file you uploaded was either not an
> image or a corrupted image.
> ------ Cut here ------
> On a hunch I thought I'd have a look at what PIL instances are on the
> file system (e.g. all the eggs that easy_install pulled down), after
> upgrading a few times over the years we had 2.
> reviews:~$ find / -name \*PIL\* 2>/dev/null
> ... So I removed all the PIL eggs (remember I already have PIL
> sudo rm -rf
> Followed by a reviewboard restart:
> sudo /etc/init.d/apache2 restart
> And we can now attach PNGs and not just GIFs. So what out for
> easy_install and PIL.
> I know pip purports to support removal (and would probably be a better
> solution) so this is not a recommendation of resolution! I'm just
> sharing what I found on my system, don't go deleting files if you don't
> know the impact/dependencies!
> Want to help the Review Board project? Donate today at
> Happy user? Let us know at http://www.reviewboard.org/users/
> To unsubscribe from this group, send email to
> For more options, visit this group at
Want to help the Review Board project? Donate today at
Happy user? Let us know at http://www.reviewboard.org/users/
To unsubscribe from this group, send email to
For more options, visit this group at