-
hanyul released this
2026-10-23 00:01:57 +09:00 5.21.0 주요 변경사항
화면(web)
- 홈에서 갤러리를 눌러 상세 창을 열 때 표지 썸네일이 깜빡이던 문제를 고쳤습니다. 원본을 받은 직후가 아니라 decode가 끝난 뒤 원본으로 바꾸며, decode가 거부되거나 원본이 실패하면 썸네일을 유지합니다.
- 북마크 작가·그룹 탭에 갤러리 탭과 같은 필터 줄을 두었습니다.
작가·그룹 검색은 이름으로 행을 거르고,전체·안 읽음·읽는 중·완독은 각 행의 작품을 그 상태로 거르며 맞는 작품이 없는 행은 숨깁니다. 읽기 상태는 세 탭이 함께 쓰고 검색어는 탭마다 따로 둡니다. - 북마크 모아보기의
작가·그룹 N명 · 갤러리 N개 · 작품 N개를 폭이 되면 읽기 상태 필터와 같은 줄 끝에 둡니다(좁으면 다음 줄).숨긴 작품 보기는 읽기 상태 필터 바로 뒤로 옮겼습니다.
API(backend)
POST /api/galleries/creator-previews에 선택 필드status(로그인 사용자)와 guest 기록 ID 조건onlyGalleryIds·excludeGalleryIds(각 500개 이하)를 더했습니다. 필드가 없으면 기존과 같고 cache도 그대로 씁니다. 실제로 좁히는 요청은 한 요청에 작가·그룹 25명까지이며 web이 나눠 보냅니다.
기반 이미지
- backend·crawler·web의
node:26-alpine, byedpi의alpine:3.24고정 digest를 갱신했습니다. nginx는 upstreammainline-alpine-slimdigest가 바뀌어 다시 빌드됐습니다.
새 기능과 하위 호환 API 필드 추가이고 schema·Compose·환경 키 변경이 없어 minor 5.21.0으로 게시합니다.
이미지 게시 범위
- 새로 빌드(5.21.0·latest): backend·crawler·web·nginx·byedpi 다섯 서비스 모두(앱 변경과 기반 이미지 갱신).
- 다섯 서비스 모두
5.21.0태그가 있어IMAGE_TAG=5.21.0일괄 고정이 가능합니다.
NAS 업데이트와 주의사항
운영은 운영 반영을 따릅니다.
- schema·Compose 변경 없음: 반영 SQL이 없고
compose.yml·환경 파일 변경이 없습니다. - 다섯 서비스 이미지가 모두 바뀌어 backend·log-reader·crawler·web·nginx·byedpi가 교체됩니다. crawler를 먼저 멈춘 뒤 배포하고, 배포 뒤 수집 pipeline 재개 상태를 확인합니다.
- 배포 전 레지스트리에 다섯 서비스의
latest가 모두 있는지 확인합니다. - rollback: 5.20.0은 web·backend만
5.20.0태그가 있고 crawler·nginx·byedpi는5.19.0태그의 digest를 썼습니다. 되돌릴 때는 web·backend를5.20.0, crawler·nginx·byedpi를5.19.0으로 서비스별로 고정합니다(레지스트리에 해당 태그가 남아 있는지 먼저 확인).
검증
- 릴리스 commit
26b2eec2(앱 코드는de4b7409와 같은 tree):run-operations.ps1 -DeploymentOnly통과,run-unit.ps1 -Workspace all통과(web 158 suites·2039 tests, backend 88·755, crawler 72·925),run-integration.ps1첫 실행은browser-flow.mjs의 상세 응답 전후 행 위치 1.04px(허용 1px 미만) 불안정으로 실패했고 재실행 통과, 개발 stack backend·crawler·web·byedpi 재빌드 healthy. - 기능 branch(앱 tree 동일):
run-search-benchmark.ps1통과(작가 25명 좁힌 미리보기 p95 24146ms, 썸네일 조회 포함), 격리 북마크 UI(320px 통과, 문서 링크·anchor 0건, Compose config·bookmarks-browser.mjs) 1440git diff --check통과. Sol(gpt-6.1-sol) 독립 리뷰 3회(썸네일 1회, 북마크 2회) 지적 반영. - NOT RUN:
run-schema.ps1(schema 변경 없음),run-compose-compat.ps1, network runner,run-passkey.ps1, 실기기(Safari·Chrome·Android) 수동 확인.
게시 확인
- 릴리스 소스:
26b2eec2(annotated Git 태그5.21.0대상). - backend
5.21.0·latest(APP_VERSION=5.21.0):sha256:350789e171fa12b393c7f28a144980a760d0fc788d18cc8640edd2de78da503b - crawler
5.21.0·latest:sha256:56b8183fd9ede793287c650b12b033663e774f5f9710c704f03fecf99adde93b - web
5.21.0·latest:sha256:01e3b33ce45c687095d55b0119c96a248fa0f83b993b87629c42a1f5b611df06 - nginx
5.21.0·latest:sha256:4e67d92a695b9cf723093ff8f2a706959d79c954a9a3d5e83c1242fccb832a87 - byedpi
5.21.0·latest:sha256:f53d87d9aed48752b302242f042d5209f7cd3c5958c28126af2f017596c61e85 ops/publish-images.ps1 -Version 5.21.0 -Publish -ChangedOnly첫 실행에서 byedpi만 올라가고 나머지는 레지스트리 일시 오류(error from registry: unknown)로 실패해, 남은:5.21.0을 다시 push한 뒤-PromoteOnly -ChangedOnly로latest를 붙였습니다(Registry tags verified for 5.21.0.).-VerifyOnly -ChangedOnly -ServiceNames byedpi,nginx,backend,crawler,web과docker manifest inspect로 다섯latest를 다시 확인했습니다.
Downloads 2
-
Source code (zip)
0
2026-10-23 00:01:57 +09:00 -
Source code (tar.gz)
1
2026-10-23 00:01:57 +09:00