Releases: pinup-team/pinup
Releases · pinup-team/pinup
v1.2.0
v1.2.0 — 본인인증/자체로그인 · 게시판 성능 · 팝업 필터 (2025-08-31)
✨ 하이라이트
- 회원가입 이메일 본인인증 도입(#119), 자체 로그인 정식 지원(#115)
- 비밀번호 변경 플로우 추가(#118)
- 게시판 목록 대폭 성능 개선(9.15s → 0.23s, p95 ~7–8배 개선) 및 좋아요 UI 동기화(#116)
- 팝업스토어 리스트 진행상태/자치구 필터 추가(#114)
🔧 변경 상세
Auth / Member
- 자체 로그인 기반 인증(세션) 및 예외 처리(미입력/불일치/미존재) 구현(#115)
- 회원가입에 이메일 본인인증 추가: 코드 발송/검증, 5분 제한, 세션 저장(#119)
- 비밀번호 변경 기능, 이메일 인증 API 정비(#118)
- 리뷰 기반 UX/라우팅/유효성 개선 및 중복 계정 생성 방지(#117)
@PasswordRequiredForLocal커스텀 어노테이션으로 PINUP 계정만 비밀번호 요구(#115)
Posts(게시판)
- JPQL/DTO 리팩토링, N+1 제거, GROUP BY 단순화 → 단일 요청 ×39.8배 개선(#116)
- 리스트 카드 좋아요 UI 도입, 리스트↔상세 상태 동기화(#116)
- 그리드/메타 레이아웃 안정화(한 줄 유지, 고정 gap, 버튼 정렬)(#116)
- REST Docs 및 단위/슬라이스 테스트 보강(#116)
Popup Store
- 리스트 조회에 status/sigungu 필터 추가, 예외 케이스(종료일 과거) 처리(#114)
- Controller 기본값/redirect 로직 정리, Repository 조건 조회 메소드 추가(#114)
Frontend
- 자치구 select 추가, URL 파라미터(
?status=...&sigungu=...) 연동(#114) - 좋아요/검증 UI와 타이머, 상태 갱신 등 JS 로직 추가/정비(#116/#118/#119)
CI
- Discord 액션 정리/업데이트(메시지/알림 안정화)
🗄️ DB 마이그레이션(요약)
memberspassword컬럼 추가provider_idNULL 허용provider_type체크 제약 재정의: 'PINUP' 추가
verification신규 테이블(email UNIQUE, code, expires_at, created_at/updated_at)- 스크립트는 idempotent하게 작성(재실행 안전)
🚀 업그레이드/배포
- DB 백업 → DDL 적용(위 변경 반영 완료)
- GitHub Release Publish:
v1.2.0 - 파이프라인 완료 후 헬스체크 & 스모크
- 가입→본인인증, 로그인(성공/실패), 비밀번호 변경
- 게시판 목록 응답 필드/정렬, 좋아요 동기화
- Docker 이미지:
pinup0106/pinup:v1.2.0
⚠️ 리스크/확인 포인트
- 인증 플로우 변경에 따른 핵심 시나리오 스모크 필수
- 게시판 목록 응답 필드/정렬 기존 유지 확인
✅ 포함된 PR
- #114 feat: 팝업스토어 리스트 진행상태/자치구 필터
- #115 PINUP 자체 로그인
- #116 feat(posts): 게시판 리스트 성능 개선 · 좋아요 UI · 레이아웃 안정화
- #117 fix: 자체로그인 리뷰 오류 수정
- #118 feat: 본인인증 및 비밀번호 변경
- #119 feat: 회원가입 시 본인인증 추가
🙌 Contributors
v1.1.1
📦 v1.1.1 - 에러 수정
🔧 Fixed
- 압축 & 난독화로
.js파일이 존재하지 않아 에러 발생- 코드에서
.js->.min.js로 치환
- 코드에서
What's Changed
- feat: 운영시 .js를 .min.js로 치환하도록 변경 by @whoamixzerone in #112
- fix: 운영시 .js 참조 에러 by @whoamixzerone in #113
Full Changelog: v1.1.0...v1.1.1
v1.1.0
📦 v1.1.0 - 좋아요 API 안정화 및 Store/Location 리팩토링
🚀 Features
- 좋아요 API 안정화 및 성능 개선
- 중복 요청 및 동시성 충돌 대응 강화
- 낙관적 락 기반 처리 + RetryTemplate 재시도 로직 도입
- TransactionTemplate을 활용한 트랜잭션 경계 명확화 및 실패 시 fallback 처리
- ExponentialRandomBackOffPolicy 기반 재시도 간격 분산 (Jitter)
- 최대 6회 재시도로 충돌 감소 및 처리 안정화
- 예외 기반 흐름 제거 → 명시적 조건 분기 방식으로 리팩토링
- 200명 동시 사용자 부하 테스트에서 성공률 99% 이상 확인, 응답 속도 개선
- 게시판 좋아요 API 신규 추가
🔧 Refactoring
- Store 도메인 전반 리팩토링
- 도메인 구조 정리, 불필요한 의존성 제거
- 테스트 케이스 추가 및 모듈 분리
- Location 도메인 리팩토링
- 패키지 구조 재정리, 로직 명확화
- 단위 테스트 보강
- StoreImage 도메인 리팩토링
- 책임 분리 및 테스트 커버리지 향상
🧪 테스트 및 문서화
- REST Docs 기반 좋아요 API 문서화 (postLike.adoc 등)
- 단위 / 통합 / 동시성 테스트 다층 적용
- k6 기반 부하 테스트 스크립트 구성
- 다양한 전략별 시나리오 검증
📎 PR 목록 요약
- [#106] Location 도메인 리팩토링
- [#107] 좋아요 API 낙관적 락 적용 및 예외 처리 개선, 문서화 및 Load Test 반영
- [#108] Store 이미지 도메인 리팩토링 & 테스트 추가
- [#109] Store 도메인 전체 리팩토링
- [#110] 좋아요 API 중복 처리 및 재시도 안정화 (6회 적용)
- [#111] Store/Location 기능 리팩토링 및 게시판 좋아요 API 추가
🔗 Full Changelog: v1.0.2...v1.1.0
What's Changed
- refactor: location domain refactoring by @whoamixzerone in #106
- refactoring: 스토어 이미지 도메인 리팩토링 & 테스트 추가 by @whoamixzerone in #108
- feat: 좋아요 API 낙관적 락 적용, 예외 처리 개선 및 REST Docs / Load Test 반영 by @hwijae33 in #107
- refactor: Store 도메인 전체적인 리팩토링 by @whoamixzerone in #109
- feat: 좋아요 API 중복 처리 로직 개선 및 재시도 안정화 (6회 적용) by @hwijae33 in #110
- [Store/Location] 기능 리팩토링 및 게시판 좋아요 API 신규 추가 (v1.1.0) by @hwijae33 in #111
Full Changelog: v1.0.2...v1.1.0
v1.0.2
🔖 Release: dev → main (2025-06-19)
✅ 작업 완료 사항
🧩 구조화 로깅(AppLogger) 전면 적용
- 기존 Slf4j 방식 제거 → AppLogger 기반 구조화 로깅으로 전환
- InfoLog, WarnLog, ErrorLog 등 도메인별 DTO 로그 형식 도입
- 도메인 전반에 AppLogger 적용
- 테스트 환경에서도 AppLogger Mock 주입 방식 적용
⚙️ 필터 및 설정 개선
- SessionExpirationFilter에서 MDC 중복 처리 제거
- MdcLoggingFilter, MdcClassNameAspect 기반 요청 로그 자동화 처리 통합
- GlobalExceptionHandler 구조화 로깅 방식으로 변경
🛠 기능 리팩토링 및 개선
- MemberApiController 반환값 VO로 일괄 정리
member.adoc문서 파일 추가- 테스트 내
.with(csrf())중복 설정 제거 build.gradle내 테스트 명 변경에 따른 경로 정리
🌐 외부 연동 및 테스트 강화
- SecretsManager 객체지향 리팩토링 및 단위 테스트 작성
- Kakao API WebClient 구조화 및 MockWebServer 기반 테스트 구현
- KakaoService 단위 테스트 구성
📁 도메인별 리팩토링 및 기능 추가
- FAQ, Notice 신규 도메인 기능 구현
- Store 도메인 리팩토링
🧪 기타
- 구조화 로그를 위한 공통 로깅 추상 클래스 도입 (
BaseLog) - 테스트 환경 충돌 방지를 위한 LoggerConfig 구성
🚀 배포
- 기능 안정화 및 테스트 반영을 포함한 배포 진행
- 마이너 버전 업데이트:
v1.0.2
What's Changed
- feat: DTO 기반 구조화 로깅(AppLogger) 시스템 도입 by @hwijae33 in #98
- Member RestDocs by @kimdohee58 in #97
- SecretManager, KakaoApi oop refactoring & test by @whoamixzerone in #99
- feat: 필요한 데이터들 로그 기록 by @whoamixzerone in #100
- feat:Post 도메인 구조화 로깅(AppLogger) 적용 및 컨트롤러 DEBUG 로그 추가 by @hwijae33 in #101
- feat: PostImages 및 S3 도메인 AppLogger 구조화 로깅 도입 및 테스트 개선 by @hwijae33 in #102
- feat: Commets 도메인 AppLogger 구조화 로깅 도입 및 테스트 개선 by @hwijae33 in #103
- Member 모듈 AppLogger 추가 by @kimdohee58 in #104
- Release v1.0.2 by @pinup-corp in #105
Full Changelog: v1.0.1...v1.0.2
v1.0.1
🔖 Release: dev → main (2025-06-03)
✅ 작업 완료 사항
🧩 로그 설정 및 세션 처리
-
SessionExpirationFilter에 MDC 로깅 추가 완료 -
logback-spring.xml파일 생성 및 로그 설정 추가→ 콘솔, 파일, CloudWatch 로그 전송 설정 구성
-
CloudWatch 전송을 위한 의존성 및 AOP 로깅 의존성 사전 추가
🛠 기능 개선 및 안정화
-
게시글 작성 시 서버 유효성 검증 로직 개선
→ 상세 validation 메시지 응답 처리
-
댓글 작성 UI 반응형 개선
→ 입력창 위치 조정 및 비로그인 상태에서
401예외 처리 안정화 -
팝업 수정 페이지 이동 시 발생한 코드 누락 에러 수정
→ 유정 팀원 push 내용 기반 누락 코드 보완
🌐 보안 및 설정
PATCH,OPTIONS메서드 CORS 허용 추가 (SecurityConfig.java수정)
🗃 DB 컬럼 수정
-
store도메인의thumbnailIndex컬럼에 기본값 설정→
@Column(columnDefinition = "INTEGER DEFAULT 0")추가 완료
🧪 기타
- 기능 커밋 정리 및 PR 작성 완료
🚀 배포
- 코드 수정으로 인한 재배포 진행
- 패치 버전 업데이트:
v1.0.1
What's Changed
- feat(posts): 게시글 작성 유효성 검증 및 CORS 인증 문제 대응 by @hwijae33 in #93
- feat: 팝업 수정 페이지 빠진 코드 추가 & logback 설정 파일 추가 by @whoamixzerone in #92
- Update README.md by @hwijae33 in #94
- logback MDC by @kimdohee58 in #95
- Logging 추가 by @kimdohee58 in #96
Full Changelog: v1.0.0...v1.0.1
v1.0.0
PinUp Release v1.0.0
- Google, Naver 로그인
- 마이페이지
- 닉네임 변경(랜덤 추천)
- 회원 탈퇴
- 팝업스토어
- 진행 상태 별 리스트 조회(전체, 진행 예정, 진행 중, 종료)
- 상세 정보 & 카카오 맵
- 등록 & 수정(관리자 권한)
- 팝업스토어 게시글
- 팝업 후기 글 작성
- 수정 & 삭제(작성자 & 관리자 권한)
- 게시글 댓글
- 후기에 대한 댓글 작성
- 삭제(작성자 & 관리자 권한)
- 고객센터(공지사항, FAQ)
- 등록 & 수정 & 삭제 (관리자 권한)