[SOLVED] Missing module "Pleroma.Upload.Filter.Exiftool.StripLocation" after upgrading from Pleroma

I had installed the latest version of Pleroma the other day and then upgraded/replaced it with Akkoma 3.6.0-0-g36cb19d and I’m having problems attaching any pictures to my posts.

My syslog says:

Feb 22 20:07:45 web pleroma[1446092]: Request: POST /api/v1/media
Feb 22 20:07:45 web pleroma[1446092]: ** (exit) an exception was raised:
Feb 22 20:07:45 web pleroma[1446092]:     ** (UndefinedFunctionError) function Pleroma.Upload.Filter.Exiftool.StripLocation.filter/1 is undefined (module Pleroma.Upload.Filter.Exiftool.StripLocation is not available)
Feb 22 20:07:45 web pleroma[1446092]:         Pleroma.Upload.Filter.Exiftool.StripLocation.filter(%Pleroma.Upload{id: "0250f32a-919d-41c0-a4d3-5328f3bc1f04", name: "35Aa002_2022-10-23 [sfw].jpg", tempfile: "/tmp/plug-1677/multipart-1677096465-432705282909-1", content_type: "image/jpeg", width: nil, height: nil, blurhash: nil, path: "0250f32a-919d-41c0-a4d3-5328f3bc1f04/35Aa002_2022-10-23 [sfw].jpg"})
Feb 22 20:07:45 web pleroma[1446092]:         (pleroma 3.6.0-0-g36cb19d) lib/pleroma/upload/filter.ex:31: Pleroma.Upload.Filter.filter/2
Feb 22 20:07:45 web pleroma[1446092]:         (pleroma 3.6.0-0-g36cb19d) lib/pleroma/upload.ex:84: Pleroma.Upload.store/2
Feb 22 20:07:45 web pleroma[1446092]:         (pleroma 3.6.0-0-g36cb19d) lib/pleroma/web/activity_pub/activity_pub.ex:1505: Pleroma.Web.ActivityPub.ActivityPub.upload/2
Feb 22 20:07:45 web pleroma[1446092]:         (pleroma 3.6.0-0-g36cb19d) lib/pleroma/web/mastodon_api/controllers/media_controller.ex:25: Pleroma.Web.MastodonAPI.MediaController.create/2
Feb 22 20:07:45 web pleroma[1446092]:         (pleroma 3.6.0-0-g36cb19d) lib/pleroma/web/mastodon_api/controllers/media_controller.ex:5: Pleroma.Web.MastodonAPI.MediaController.action/2
Feb 22 20:07:45 web pleroma[1446092]:         (pleroma 3.6.0-0-g36cb19d) lib/pleroma/web/mastodon_api/controllers/media_controller.ex:5: Pleroma.Web.MastodonAPI.MediaController.phoenix_controller_pipeline/2
Feb 22 20:07:45 web pleroma[1446092]:         (phoenix 1.6.15) lib/phoenix/router.ex:354: Phoenix.Router.__call__/2

The root of the error seems to be this: “module Pleroma.Upload.Filter.Exiftool.StripLocation is not available”

I’ve tried doing a reinstall of Akkoma (I am using the OTP method) with commands like:

mv /opt/pleroma /opt/pleroma-bak
su pleroma -s $SHELL -lc "curl 'https://akkoma-updates.s3-website.fr-par.scw.cloud/stable/akkoma-$FLAVOUR.zip' -o /tmp/akkoma.zip && unzip /tmp/akkoma.zip -d /tmp/"
mkdir /opt/pleroma
mv -v /tmp/release/* /opt/pleroma
systemctl restart pleroma

However, I get the same error message. I’ve also looked at some of the image mogrify settings on my /pleroma/admin dashboard in the Upload settings but haven’t had any luck resolving this error.

I think I found a resolution to this one.

In my /etc/pleroma/config.exs file I had to change:

config :pleroma, Pleroma.Upload, filters: [Pleroma.Upload.Filter.Exiftool.StripLocation, Pleroma.Upload.Filter.Exiftool.ReadDescription, Pleroma.Upload.Filter.AnonymizeFilename, Pleroma.Upload.Filter.Dedupe]

To:

config :pleroma, Pleroma.Upload, filters: [Pleroma.Upload.Filter.Exiftool, Pleroma.Upload.Filter.AnonymizeFilename, Pleroma.Upload.Filter.Dedupe]

It seems the ExifTool filter stops at “Pleroma.Upload.Filter.ExifTool” without the additional “.StripLocation” and “.ReadDescription” suffixes attached.

1 Like

Yeah. The ReadDescription one isn’t in Akkoma atm. Pleroma’s “StripLocation” is the same as “Pleroma.Upload.Filter.ExifTool”.

For who’s interested, see also PR https://akkoma.dev/AkkomaGang/akkoma/pulls/241

2 Likes