Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

client+server/docker: add .psd support #711

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

recordcrash
Copy link

@recordcrash recordcrash commented Feb 7, 2025

image

This took me like 40 hours of trying to solve the dependency hell caused by the extremely outdated existing dependencies. To be able to use psd-tools (and I had to use psd-tools, believe me), I had to:

  1. Raise alpine to 3.16 from 3.13
  2. This broke sqlalchemy, so I had to freeze an older version instead of using the alpine default
  3. psd-tools requires scikit-image, which was incompatible with every version of numpy, etc. used in alpine
  4. This meant those dependencies also had to be frozen to older or newer versions
  5. Using wheels allowed me to make the build process way faster, though I still had to do things like open wheels manually to see what versions they expected, check for compatibility again, etc.
  6. A benefit of this is that it's less fragile and moving to 3.16 really opens up some new possibilities

The rest was as expected:

  • We add .psd to the list of supported formats on every list of formats on client and server.
  • A note: since .psd cannot be rendered on browsers, we simply render the thumbnail, which is a still image. This means large psds will look blurry on post view (before you download them), but this can be fixed in the future.

If you consider this too hacky, feel free to not merge, but I'm switching https://homestuck.net/resources/booru/ to this fork until it is. PSD support really is vital for our use case.

Closes #683.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support .psd files
1 participant