프로필 배너와 함께 사용할 수 있나요?
install.sh 설치 스크립트와 관련된 문제로 인해 Discourse의 재빌드가 실패합니다. 여기를 참고하세요.
이 플러그인을 설치하려고 했는데, 이 댓글을 보고 마음을 바꿨네요 ㅋㅋ
여전히 같은 문제입니다. install.sh 부분을 주석 처리한 후 재구축을 실행하세요. 다시 주석 해제하고 재구축하면 정상적으로 동작합니다. 이상하네요.
설치가 여전히 오류가 나나요?
아니, 나한테는 안 그래.
주석을 달지 않고 다시 설치해 보셨나요?
저는 Discourse를 자주 다시 빌드합니다.
몇 달 전의 문제가 무엇이었는지는 정확히 모르겠습니다. 당시 GeoIP 다운로드가 로컬 파일로 변경되었는데, 그것과 관련이 있었을 수도 있습니다.
솔직히 그 문제가 뭔지 저도 잘 모르겠는데, 그 스크립트는 보고된 오류와는 전혀 관련이 없습니다.
안녕하세요, 최신 Discourse 버전(v2026.8.0-latest.1)에서 이 플러그인을 사용하면서 치명적인 오류가 발생하고 있습니다.
사용자가 프로필 사진을 설정하거나 업데이트하려고 하면 프론트엔드에서 일반적인 422 (Unprocessable Content) 오류가 반환되고 Uppy에서 네트워크 경고가 기록됩니다.
Sidekiq/Rails 로그를 확인해보니, 현재 이미지 최적화 해시에서 resize_animated 키가 누락된 것으로 보이며, 이로 인해 플러그인이 UploadCreator 파이프라인을 충돌시키고 있습니다.
/logs에서 가져온 백트레이스는 다음과 같습니다:
Job exception: key not found: "resize_animated"
/var/www/discourse/app/models/optimized_image.rb:336:in 'Hash#fetch'
/var/www/discourse/app/models/optimized_image.rb:336:in 'OptimizedImage.optimize'
/var/www/discourse/plugins/discourse-animated-avatars/lib/discourse_animated_avatars/optimized_image_extension.rb:9:in 'DiscourseAnimatedAvatars::OptimizedImageExtension::ClassMethods#resize_animated'
/var/www/discourse/plugins/discourse-animated-avatars/lib/discourse_animated_avatars/upload_creator_gifsicle_extension.rb:18:in 'DiscourseAnimatedAvatars::UploadCreatorGifsicleExtension#crop!'
/var/www/discourse/lib/upload_creator.rb:115:in 'block in UploadCreator#create_for'
추가 로그가 필요하시면 말씀해 주세요!
설치 후 GIF와 WebP 이미지(200픽셀 이하)로 테스트해 보았지만, 이미지가 리사이즈되지 않아야 하는데 모든 시도에 key not found: "resize_animated" 오류가 발생하여 작동하지 않습니다.
플러그인은 가이드에 설명된 대로 설치했으며, 필수 post_exec 지침도 따랐습니다.
버그 제보 감사합니다! 이 버그는 v2026.8 및 이후 버전에만 영향을 미칩니다. 방금 수정 사항을 배포했으니 지금 바로 업데이트하시면 됩니다.
resize_animated 키 오류에 대한 빠른 수정에 감사합니다. 해당 부분은 해결되었고 29784ee (Discourse v2026.9.0-latest)로 업데이트했습니다. 하지만 이제 프로필 사진을 설정/업데이트할 때 같은 코드 경로에서 새로운 치명적 오류가 발생하고 있습니다.
--crop 인자가 잘못된 형식인 것 같습니다. Gifsicle은 --crop x,y+width+height (또는 x,y-x2,y2) 형식을 기대하지만, 현재는 0,49+399처럼 x,y 쌍과 단일 +399만 존재하며 두 번째 +height 구성 요소가 완전히 누락되어 있습니다.
app.js:367 ℹ️ Discourse v2026.9.0-latest — https://github.com/discourse/discourse/commits/ed9f07d9f5 — Ember v6.10.1
uppy-upload.js:503 POST https://btt.community/uploads.json?client_id=f57abab8b5c64413a953f6c839424130 422 (Unprocessable Content)
(anonymous) @ fetcher.js:83
await in (anonymous)
_ @ fetcher.js:17
(anonymous) @ fetcher.js:86
(anonymous) @ index.js:81
(anonymous) @ index.js:227
(anonymous) @ TaskQueue.js:45
#i @ TaskQueue.js:92
add @ TaskQueue.js:73
#uploadLocalFile @ index.js:218
(anonymous) @ index.js:316
#uploadFiles @ index.js:297
(anonymous) @ index.js:345
#runUpload @ Uppy.js:1413
await in #runUpload
upload @ Uppy.js:1521
(anonymous) @ Uppy.js:523
setTimeout
#f @ Uppy.js:521
addFiles @ Uppy.js:672
addFiles @ uppy-upload.js:503
_run @ index.js:804
_join @ index.js:783
join @ index.js:605
join @ index.js:152
(anonymous) @ index.js:250
(anonymous) @ uploads.js:411
n @ uploads.js:410
uppy-upload.js:503 [Uppy] [05:34:13] This looks like a network error, the endpoint might be blocked by an internet provider or a firewall.
(anonymous) @ loggers.js:7
log @ Uppy.js:1277
(anonymous) @ Uppy.js:970
r @ index.js:131
(anonymous) @ index.js:33
emit @ Uppy.js:110
(anonymous) @ index.js:134
await in (anonymous)
(anonymous) @ index.js:227
(anonymous) @ TaskQueue.js:45
#i @ TaskQueue.js:92
add @ TaskQueue.js:73
#uploadLocalFile @ index.js:218
(anonymous) @ index.js:316
#uploadFiles @ index.js:297
(anonymous) @ index.js:345
#runUpload @ Uppy.js:1413
await in #runUpload
upload @ Uppy.js:1521
(anonymous) @ Uppy.js:523
setTimeout
#f @ Uppy.js:521
addFiles @ Uppy.js:672
addFiles @ uppy-upload.js:503
_run @ index.js:804
_join @ index.js:783
join @ index.js:605
join @ index.js:152
(anonymous) @ index.js:250
(anonymous) @ uploads.js:411
n @ uploads.js:410
빠른 답변 감사합니다! 애니메이션 webp 이미지로 다시 시도해 보았더니 다음과 같은 출력이 보였습니다:
gifsicle --colors=256 --crop 0,0+200 --resize-fit 288x288 --optimize=3 --output /tmp/RackMultipartID.webp /tmp/RackMultipartID.webp
하지만 이미지는 여전히 png 형식입니다. 제가 놓치고 있는 부분이 있을까요? 혹시 모르니 브라우저도 강제로 새로고침해 보았지만, 비애니메이션 이미지가 계속 표시됩니다.
프로필 사진을 전혀 변경할 수 없습니다. 이미 GIF 프로필 사진을 사용 중인데, 이를 PNG 프로필 사진으로 교체하려고 시도했지만 이전 메시지에서 언급한 팝업과 오류가 표시되고 사진이 변경되지 않습니다.
저는 이 플러그인에 필요한 업데이트가 있다면 테스트를 도와드릴 수 있다는 점을 겸손하게 말씀드리고 싶습니다. 이를 통해 플러그인이 다시 포괄적으로 사용될 수 있도록 하기 위함입니다.
편하신 방법으로 저에게 연락해 주시면 됩니다. 저는 시간이 많이 남아 있어 일정과 시간을 유연하게 조정할 수 있습니다.
제 수정 과정에서 숨겨져 있던 버그가 드러난 것 같습니다. 또 다른 수정 사항(그리고 추가 테스트)과 함께 저장소를 업데이트했습니다. v2026.8 버전 이후의 Discourse가 영향을 받습니다.
치명적 오류와 업로드 차단 문제는 버그였으며 수정되었습니다. 다만, 애니메이션 WebP 이미지는 아직 지원되지 않습니다. 이 플러그인은 원래 GIF를 위해 설계되었으며, 다른 이미지 형식은 정적으로만 유지됩니다. 애니메이션 WebP(및 APNG) 지원은 향후 추가될 수 있습니다.
수정해 주셔서 감사합니다! 제 인스턴스(012466a로 업데이트)에서 테스트해 봤는데 정상적으로 작동합니다. .png와 .gif 프로필 사진을 모두 시도해 봤고, 둘 다 오류가 없었습니다. 제 쪽에서는 문제없이 보입니다.
업데이트에 대해 감사드리며, GIF 형식으로 완벽하게 작동함을 확인합니다.
애니메이션 WebP 지원 기능이 추가되었으며, 몇 가지 편리한 도구도 함께 제공됩니다!
이제 animated_gif_avatar_to_webp 설정을 통해 애니메이션 GIF 아바타를 WebP로 자동으로 변환할 수 있으며, 이를 통해 전체 파일 크기를 크게 줄일 수 있습니다. 이 설정은 업로드 시점에 작동하므로 기존 GIF 파일은 그대로 유지됩니다.
animated_gif_avatar_to_webp가 활성화되면, 새로운 GIF 아바타가 적절한 비율과 크롭으로 WebP로 변환되므로 gifsicle 및 install.sh 훅이 더 이상 필요하지 않습니다.
관리자는 bin/rake animated_avatars:gif_to_webp rake 작업을 사용하여 기존 애니메이션 GIF 아바타를 WebP로 변환할 수도 있습니다. 사용 중인 모든 애니메이션 GIF 아바타가 WebP로 변환되어 더 작은 파일 크기의 아바타로 대체됩니다.
- FEAT: add animated WebP support (#80) · discourse/discourse-animated-avatars@937aa3d · GitHub
- FEATURE: Auto-convert animated GIF avatars to WebP on upload · discourse/discourse-animated-avatars@760d1dc · GitHub
- DEV: Add rake tasks to count and migrate animated GIF avatars to WebP · discourse/discourse-animated-avatars@4e3313d · GitHub

