2022 Thumbor updates

BackgroundEdit

Thumbor is a smart imaging service that enables on-demand cropping, resizing, applying filters and optimizing of images. The Wikimedia media thumbnailing infrastructure is based on Thumbor, which has evolved and released various new versions since the Wikimedia Foundation adopted it.

Over the years we have been unable to keep pace with the latest releases to Thumbor and related technologies, resulting in an outdated service that is difficult to maintain and contribute to. To add additional complexity, Wikimedia Thumbor uses a community tool, Thumbor Community Core, to provide modifications as extensions to the Thumbor tool.

In order to simplify Thumbor maintenance, take advantage of new version features, address issues within the service, and invite more contributors from the movement, we seek to upgrade and streamline Wikimedia Thumbor. This project details the efforts of the Wikimedia Foundation to deliver this work.

What is changingEdit

Our goal is to update/migrate Thumbor (both Mediawiki and Community Core) to Thumbor version 7 and Python 3, while retaining and/or improving existing Thumbor performance and functionality. We will attempt to minimize drastic changes or impacts to end-users, ensuring that we communicate potential large impacts or changes via updates on this page.

Key Milestones

  1. Update or Replace Thumbor Community Core to support Thumbor version 7 and Python 3
  2. Update Wikimedia Thumbor to support Thumbor version 7 and Python 3
  3. Dockerization & Migration to Kubernetes
  4. Pre-Release Testing & Release to Production
  5. Upgrade to latest available versions (if needed)

Help & Learning MoreEdit

To learn more about Mediawiki Thumbor see Thumbor.

To learn more about Thumbor, see Thumbor.

To see or track our migration project work, see Thumbor Migration Phabricator Board.

To see the general product workboard for Thumbor, see Thumbor Phabricator Board.

December 2022 Progress UpdatesEdit

Milestones #1 & 2 Update Wikimedia Thumbor to support Thumbor version 7 and Python

  T252719 Upgrade thumbor to Thumbor 7 and python3 DONE

Milestone #3 Dockerization & Migration to Kubernetes

  T233196 Migrate thumbor to Kubernetes IN PROCESS

Milestone #4 Pre-Release Testing & Release to Production

  Bug fixes. See Thumbor Migration Workboard for details  IN PROCESS
  Rollout on Production scheduled for January 2023

Milestone #5 Upgrade to latest available versions (if needed)

  T216815 Upgrade Thumbor to Bullseye Not Yet Started

Enhancements

 T256959 Allow PDF's to be rendered at higher (or user specified DPI) Blocked Requires technical decision making
 T47212 TIF less focused than JPG equivalent (due to conditional sharpening applied to JPEGs and not TIFFS) Blocked Requires technical decision making
 T256959 Allow PDF's to be rendered at higher (or user specified DPI) Blocked Requires technical decision making


For questions or comments, please use the talk page.