ImageMagick replaced with libvips for image processing

AI-generated summary

tgxworld announced that Discourse has replaced ImageMagick with libvips as the default image processing library to enhance the security of user upload handling. Although this is not a direct port of ImageMagick operations, the team expects no noticeable changes in image rendering for end users. The ImageMagick dependency is scheduled for removal from the Discourse Docker images in the coming weeks.

In response to NateDhaliwal asking if developer installation steps needed updating, tgxworld confirmed that the guides were generally updated. NateDhaliwal questioned the status of the Ubuntu/Debian development installation guide, but tgxworld clarified that it had indeed been updated to link to the installation instructions for libvips. merefield subsequently asked for the underlying rationale behind the switch, likely referring back to the security improvements highlighted in the initial announcement.

This week, we made libvips the default image processing library in Discourse as part of our ongoing work to make processing user uploads more secure.

Although this isn’t a direct port of the ImageMagick operations, we do not expect any noticeable changes in how images appear to end users. In the coming weeks, we plan to remove the ImageMagick dependency from the Discourse Docker images.

Questions? Comments? Spotted something weird with images? Let me know!

Does the dev install steps need to change?

Which guide are you referring to? We did update the guides but might have missed one or two.

I was referring to Install Discourse on Ubuntu or Debian for Development. I don’t think that was updated.

It was updated which links to the installation instructions for libvips .

out of interest, what was the rationale for this change?