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

Release: ๐ŸŽ‡ Release v1.0.0 #159

Merged
merged 172 commits into from
Aug 27, 2024
Merged

Release: ๐ŸŽ‡ Release v1.0.0 #159

merged 172 commits into from
Aug 27, 2024

Conversation

psychology50
Copy link
Member

์ž‘์—… ์ด์œ 

  • Release v1.0.0

์ž‘์—… ์‚ฌํ•ญ


๋ฆฌ๋ทฐ์–ด๊ฐ€ ์ค‘์ ์ ์œผ๋กœ ํ™•์ธํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„


๋ฐœ๊ฒฌํ•œ ์ด์Šˆ

psychology50 and others added 30 commits March 6, 2024 16:55
โœจ ์ดˆ๊ธฐ ํ”„๋กœ์ ํŠธ ์„ค์ •
Co-authored-by: jinlee1703 <jinlee1703@gmail.com>
๐Ÿ“ PULL_REQUEST_TEMPLATE.md ์ž‘์„ฑ
๐Ÿ“ ์—๋Ÿฌ ์ฝ”๋“œ ๊ณตํ†ตํ™” ๋ฐ ์ธํ„ฐํŽ˜์ด์Šค ์ž‘์„ฑ
* chore: common ๋ชจ๋“ˆ์— spring-core ์˜์กด์„ฑ ์ฃผ์ž… && infra ๋ชจ๋“ˆ์— jwt ์˜์กด์„ฑ ์ฃผ์ž…

* feat: Auth ์ƒ์ˆ˜ ์„ค์ •

* feat: JwtProvider ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜

* feat: domain & field zero ์ƒ์ˆ˜ ์ž‘์„ฑ

* feat: Jwt ์˜ˆ์™ธ ์ƒ์ˆ˜ ์„ค์ •

* feat: Jwt ์˜ˆ์™ธ ํด๋ž˜์Šค

* fix: ReasonCode Zero bit ์ถ”๊ฐ€

* feat: JwtErrorCodeUtil ์ž‘์„ฑ

* chore: application.yml profile ๋ถ„๋ฆฌ

* feat: AT, RT Qualifier ๋ชฉ์  ์ปค์Šคํ…€ ์–ด๋…ธํ…Œ์ด์…˜ ์ž‘์„ฑ

* chore: jwt secret key & expiration time ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์ฃผ์ž…

* rename: provider annotation ๋„ค์ด๋ฐ ๋ณ€๊ฒฝ -> ์ „๋žต

* feat: common ๋ชจ๋“ˆ์— DateUtil ์ถ”๊ฐ€

* feat: access token claim dto && provider ์ž‘์„ฑ

* test: AccessTokenProvider test ์ž‘์„ฑ

* fix: test given์ ˆ ์ถ•์•ฝ

* refactor: AT Claims key ์ƒ์ˆ˜๊ฐ’์œผ๋กœ ๋ช…์‹œ์  ํ•„๋“œ ์ง€์ •

* feat: refresh token dto && payload key ์ƒ์ˆ˜ํ™”

* feat: refresh token provider ์ž‘์„ฑ

* test: ์„œ๋ช… ์กฐ์ž‘ ํ† ํฐ ์—๋Ÿฌ ๊ฒ€์ฆ

* rename: getSubInfoFromToken -> getJwtClaimsFromToken ๋ฉ”์„œ๋“œ๋ช… ๋ณ€๊ฒฝ

* rename: JwtProvider ์ฃผ์„ ์ˆ˜์ • ๋ฐ ๋ฉ”์„œ๋“œ ์ˆœ์„œ ๋ณ€๊ฒฝ

* fix: ํ† ํฐ ๋งŒ๋ฃŒ์‹œ ์˜ˆ์™ธ ํ•ธ๋“ค๋ง

* test: ํ† ํฐ ๋งŒ๋ฃŒ ์‹œ, true ๋ฐ˜ํ™˜ ๊ฒ€์‚ฌ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€

* fix: isTokenExpired() ๋ฉ”์„œ๋“œ ์˜ˆ์™ธ ํ•ธ๋“ค๋ง ๋กœ์ง ์ˆ˜์ • : ํ…Œ์ŠคํŠธ ์„ฑ๊ณต
* chore: mysql & jpa & queryDsl gradle ์˜์กด์„ฑ ์ถ”๊ฐ€

* chore: queryDsl generated ๋””๋ ‰ํ† ๋ฆฌ git ์ถ”์  ์ œ๊ฑฐ

* chore: jdbc, jpa application.yml ์„ค์ • ์ถ”๊ฐ€

* chore: extenal-api ๋ชจ๋“ˆ application.yml ๊ทธ๋ฃน ์ถ”๊ฐ€

* chore: jpa ์„ค์ • profile ๋ถ„๋ฆฌ && profile ๊ทธ๋ฃน ์ถ”๊ฐ€

* chore: infra ๋ชจ๋“ˆ application.yml ๊ทธ๋ฃน ์ถ”๊ฐ€

* feat: Jpa config

* feat: QueryDsl config

* chore: EnalbeJpaAuditing auditorAwareRef ์„ค์ • ์ œ๊ฑฐ

* fix: config ๋””๋ ‰ํ† ๋ฆฌ ์ˆ˜์ •
* chore: commit-lint ๊ด€๋ จ ํŒจํ‚ค์ง€ ์„ค์น˜

* chore: .gitignore์— node_modules ์ถ”๊ฐ€

* chore: commit convention ๋“ฑ๋ก

* chore: commit-lint ์ ์šฉ
* chore: infra ๋ชจ๋“ˆ ๋‚ด redis ์˜์กด์„ฑ ์ฃผ์ž… (api)

* chore: domain ๋ชจ๋“ˆ ๋‚ด redis ์˜์กด์„ฑ ์ฃผ์ž… (implementation)

* chore: redis ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •

* feat: Domain Redis Connection Bean Qualify Annotation ์ƒ์„ฑ

* feat: Domain Redis CacheManager Qualify Annotation ์ƒ์„ฑ

* feat: Domain Redis Template Qualify Annotation ์ƒ์„ฑ

* chore: domain ๋ชจ๋“ˆ redis config ์ž‘์„ฑ

* feat: Infra Redis CacheManager Qualify Annotation ์ƒ์„ฑ

* feat: SecurityUser Redis CacheManager Qualify Annotation ์ƒ์„ฑ

* feat: Oidc Redis CacheManager Qualify Annotation ์ƒ์„ฑ

* chore: infra ๋ชจ๋“ˆ cache config ์„ค์ •
* chore: external-api ๋ชจ๋“ˆ springdoc-openapi 2.4.0 ์˜์กด์„ฑ ์ฃผ์ž…

* chore: external-api ๋ชจ๋“ˆ ๋‚ด openapi ์„ค์ • ์ถ”๊ฐ€

* chore: swagger config ์ž‘์„ฑ

* fix: application profile prod -> dev
* fix: reason code zero bit ์ œ๊ฑฐ && 500๋ฒˆ๋Œ€ 0๋ฒˆ bit ์ƒ์ˆ˜ ์ถ”๊ฐ€

* test: caused-by-test ์˜ˆ์ƒ ์—๋Ÿฌ์ฝ”๋“œ ์ˆ˜์ • (ํ†ต๊ณผ ํ™•์ธ)

* fix: jwt-error-code ๋ณ€๊ฒฝ๋œ reason code๋กœ ์ˆ˜์ •
* chore: test api directory .gitignore ๊ฒฝ๋กœ ์ถ”๊ฐ€

* feat: ์„ฑ๊ณต ์‘๋‹ต ํด๋ž˜์Šค ์ •์˜

* feat: error-response ๊ณตํ†ต ์‘๋‹ต ํด๋ž˜์Šค ์ž‘์„ฑ

* fix: success ์‘๋‹ต nocontent() ์‘๋‹ต null -> empty object

* feat: method argument not valid ์ „์—ญ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* fix: reason 422 error type mismatch ์ฝ”๋“œ ์ถ”๊ฐ€

* feat: missing request header ์ „์—ญ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* feat: request json parsing ์‹คํŒจ ์ „์—ญ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* feat: missing request parameter ์ „์—ญ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* feat: ์กด์žฌํ•˜์ง€ ์•Š๋Š” url ์š”์ฒญ ์ „์—ญ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* feat: 500 internal server error ์ „์—ญ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* feat: npe & exception ์ „์—ญ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* fix: response status annotation ์ฒ˜๋ฆฌ

* style: intellij code convention setting ์ถ”๊ฐ€ํ•˜์—ฌ reformat
* feat: db, application ํƒ€์ž… ํ˜•๋ณ€ํ™˜ ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ

* feat: code <-> enum ๋ณ€ํ™˜ util ์ž‘์„ฑ

* feat: custom converter ๊ตฌํ˜„์„ ์œ„ํ•œ ์ถ”์ƒ ํด๋ž˜์Šค ์ž‘์„ฑ

* style: api & domain package ๊ฒฝ๋กœ ์ˆ˜์ •

* feat: create, update auditable ์ถ”์ƒ ํด๋ž˜์Šค ์ž‘์„ฑ

* feat: role type enum & conveter ์ •์˜

* feat: visibility type enum & conveter ์ •์˜

* rename: visibility to profile-visibility ํด๋ž˜์Šค๋ช… ์ˆ˜์ •

* fix: converter ์ƒ์„ฑ์ž ์ˆ˜์ •

* feat: user entity ์ƒ์„ฑ

* feat: user jpa data repository ์ƒ์„ฑ

* fix: ์—๋Ÿฌ ์ฒด๊ณ„ 7์ž๋ฆฌ ์ˆ˜ -> 4์ž๋ฆฌ ์ˆ˜

* test: 4์ž๋ฆฌ์ˆ˜ ์—๋Ÿฌ ์ฒด๊ณ„ ๊ธฐ๋ฐ˜ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ˆ˜์ •

* fix: reason code 400๋ฒˆ๋Œ€ 4๋ฒˆ invalid request ์ถ”๊ฐ€

* feat: user error code & exception ์ •์˜

* feat: user domain service ์ž‘์„ฑ

* feat: user domain service create ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* feat: user domain service exists ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* fix: jwt error code ๋‚ด์—์„œ domain, field code ์ œ๊ฑฐ

* chore: query-dsl generated ๊ฒฝ๋กœ .gitignore

* fix: profile-visibility converter ์˜ค์ฃผ์ž… ์ˆ˜์ •

* fix: test api ์‚ญ์ œ

* chore: ํŒจํ‚ค์ง€ ๊ฒฝ๋กœ ์ˆ˜์ •์œผ๋กœ ์ธํ•œ test ํŒจํ‚ค์ง€ ๊ฒฝ๋กœ ์ˆ˜์ •

* rename: caused by '7์ž๋ฆฌ ์—๋Ÿฌ์ฝ”๋“œ' ์ฃผ์„ ์ˆ˜์ •
* feat: white space validator ์ž‘์„ฑ

* rename: not-white space ์ฃผ์„ ์ถ”๊ฐ€

* feat: ์ „ํ™”๋ฒˆํ˜ธ ์ธ์ฆ ์š”์ฒญ dto ์ž‘์„ฑ

* rename: cerification -> verification ๋‹จ์–ด ์ˆ˜์ •

* feat: refresh token redis entity ์ž‘์„ฑ

* feat: refresh token repository ์ž‘์„ฑ

* fix: refresh token ttl time unit seconds -> milliseconds

* feat: refresh token service ๊ตฌํ˜„

* feat: ์ด๋ชจ์ง€ ์œ ํšจ์„ฑ ๊ฒ€์ฆ ์–ด๋…ธํ…Œ์ด์…˜ ์ž‘์„ฑ

* feat: ํŒจ์Šค์›Œ๋“œ ์œ ํšจ์„ฑ ๊ฒ€์ฆ ์–ด๋…ธํ…Œ์ด์…˜ ์ž‘์„ฑ

* feat: ์ผ๋ฐ˜ ํšŒ์›๊ฐ€์ž… dto ์ž‘์„ฑ

* fix: ์ผ๋ฐ˜ ํšŒ์›๊ฐ€์ž… dto code ํ•„๋“œ ์ถ”๊ฐ€

* feat: jwt tokens ํŽธ์˜ dto ํด๋ž˜์Šค ์ƒ์„ฑ

* fix: refresh token ttl timeunit milliseconde -> seconds

* feat: jwts ์ƒ์„ฑ mapper ์ •์˜

* fix: refresh token provider primary bean ์ œ๊ฑฐ

* feat: cookie util ์ž‘์„ฑ

* style: jwts dto ํด๋ž˜์Šค ํŒจํ‚ค์ง€ ๊ฒฝ๋กœ ์ˆ˜์ •

* fix: jwt auth mapper ํ† ํฐ ์ƒ์„ฑ ๋กœ์ง ์ˆ˜์ •

* feat: ํšŒ์›๊ฐ€์ž… usecase ๊ตฌํ˜„(์ธ์ฆ๋ฒˆํ˜ธ ๋ฏธํ™•์ธ)

* feat: auth controller sign up api ๊ฐœ๋ฐฉ

* style: test ๋ชจ๋“ˆ ๋‚ด ๊ฒฝ๋กœ ์ˆ˜์ •

* rename: sign-up dto ์ „ํ™”๋ฒˆํ˜ธ ์˜ˆ์‹œ ๋ฌธ์ž ์ˆ˜์ •

* fix: phone pattern \n ์ œ๊ฑฐ

* fix: not empty -> not blank validation check ๋ณ€๊ฒฝ

* fix: cookie util max age int -> long

* fix: auth controller cookie util ์˜์กด์„ฑ ์ฃผ์ž…

* test: auth controller 7๊ฐ€์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ

* test: ํ•„๋“œ ๋ˆ„๋ฝ ์‹œ๋‚˜๋ฆฌ์˜ค ์ถ”๊ฐ€ && cookie ํ—ค๋” ๊ฒ€์ฆ ์ˆ˜์ •

* fix: jwt mapper์—์„œ rt provider์— access claim -> refresh claim ์ˆ˜์ •
psychology50 and others added 21 commits July 25, 2024 14:09
* test: repository unit test

* feat: ์‚ฌ์šฉ์ž๊ฐ€ ์ฝ์ง€ ์•Š์€ ์•Œ๋ฆผ ์กด์žฌ ํ™•์ธ์„ ์œ„ํ•œ repository ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* feat: notification service has_unread_notification ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* feat: usecase ๋ฏธํ™•์ธ ์•Œ๋ฆผ ์กด์žฌ ์—ฌ๋ถ€ ์ฒดํฌ ๋ถ„๊ธฐ ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* feat: controller api ์ถ”๊ฐ€

* test: query join ์ œ๊ฑฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋„๋ก test ์ˆ˜์ •

* fix: jpa method ์ œ๊ฑฐ ํ›„ query dsl๋กœ ์ˆ˜์ •

* docs: swagger ๋ฌธ์„œ ์ž‘์„ฑ

* rename: read unread notification() -> is_exists_unread_notification()
* fix: device_token_owner dto query ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ device_token pk ํ•„๋“œ ์ถ”๊ฐ€

* fix: querydsl_no_offset_string_options id_name ๋ฐ›๋Š” ์ •์  ํŒฉํ† ๋ฆฌ ๋ฉ”์„œ๋“œ์—์„œ field=null ์ˆ˜์ •

* fix: query dsl no offset paging item reader id_select_query ์ถ”๊ฐ€

* feat: step builder ํŒจํ„ด์„ ์ ์šฉํ•œ querydsl_no_offset_paging_item_reader_builder ํด๋ž˜์Šค ์ •์˜

* fix: active_device_token_reader query ์ˆ˜์ •
* rename: notification writer -> daily_spending_notify_writer

* fix: announcement enum class not_announce ํƒ€์ž… ํ•„ํ„ฐ๋ง

* fix: daily_notication dto ๋ฒ”์šฉ์„ฑ ํ™•์žฅํ•˜์—ฌ announce_notification_dto๋กœ ์ˆ˜์ •

* feat: ๋งค์›” ๋ชฉํ‘œ ๊ธˆ์•ก ์„ค์ • ๊ณต์ง€ writer ์ž‘์„ฑ

* feat: monthly_target_amount_notify_config job $ step impl

* feat: ๋งค์›” ์ •๊ธฐ ๋ชฉํ‘œ ๊ธˆ์•ก ์„ค์ • ์•Œ๋ฆผ ์Šค์ผ€์ค„ ์„ค์ •

* fix: ๋ชฉํ‘œ ๊ธˆ์•ก ์•Œ๋ฆผ ๋ฉ”์‹œ์ง€ ์กฐํšŒ ์‹œ, title ํ•ด๋‹น ์›” ์‚ฝ์ž…๋˜๋„๋ก ์ˆ˜์ •

* fix: monthly_target_amount title %s๋ˆ„๋ฝ ์ˆ˜์ •

* fix: announce notification dto ๋‚ด๋ถ€์—์„œ ์›”๋ณ„ ๋ชฉํ‘œ ๊ธˆ์•ก title ์ƒ์„ฑ ์‹œ, ๋ถ„๊ธฐ ์ฒ˜๋ฆฌ
* fix: spending_custom_category sql_delete ์ฟผ๋ฆฌ ์ˆ˜์ •

* test: ํ…Œ์ŠคํŠธ db jdbc url ์ˆ˜์ •

* test: ๋„๋ฉ”์ธ ๋ชจ๋“ˆ db ์ปจํ…Œ์ด๋„ˆ๋Š” utc๋กœ ๋งž์ถค
* feat: controller, usecase ์ž‘์„ฑ

* feat: update service, domain service ์ž‘์„ฑ

* docs: swagger ์ž‘์„ฑ

* test: ์ง€์ถœ ์นดํ…Œ๊ณ ๋ฆฌ ์ˆ˜์ • ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* fix: controller ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜์ •

* fix: spel ํ‘œํ˜„์‹ ์ œ๊ฑฐ

* test: ๊ธฐ๋ณธ ์นดํ…Œ๊ณ ๋ฆฌ ์ด๋™ ํ…Œ์ŠคํŠธ ์ž‘์„ฑ

* docs: api ๋ฌธ์„œ ์ด๋™

* refactor: controller ๋ฐ usecase๋ฅผ spending ์—์„œ spendingcategory๋กœ ์ด์ „

* feat: ๊ธฐ๋ณธ ์นดํ…Œ๊ณ ๋ฆฌ๋กœ๋ถ€ํ„ฐ์˜ ์ด์ „ ๊ธฐ๋Šฅ ์ถ”๊ฐ€

* feat: ๊ถŒํ•œ๊ฒ€์‚ฌ ์ถ”๊ฐ€

* test: ๊ฐ์ผ€์ด์Šค๋ณ„ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค ์ž‘์„ฑ

* fix: ๊ถŒํ•œ๊ฒ€์‚ฌ ๋กœ์ง ์ด๋™

* fix: spendingerrorcode ์ƒ์ˆ˜ ์ œ๊ฑฐ

* fix: service ๋ฉ”์„œ๋“œ ์ ‘๋‘์‚ฌ udpate๋กœ ์ˆ˜์ •

* fix: ์ ‘๋‘์‚ฌ udpate๋กœ ์ถ”๊ฐ€ ์ˆ˜์ •

* fix: ๋ถˆํ•„์š”ํ•œ schema ์ œ๊ฑฐ

* fix: service ๋ฐ repository ๋ฉ”์„œ๋“œ๋ช… prefix customcategory๋กœ๋ณ€๊ฒฝ
* rename: oauth bulk delete ๋ฉ”์„œ๋“œ ์ปจ๋ฒค์…˜์— ๋งž๊ฒŒ in_query ์ ‘๋ฏธ์‚ฌ ์ถ”๊ฐ€

* feat: ์‚ฌ์šฉ์ž ์•„์ด๋”” ๊ธฐ๋ฐ˜ spending ์‚ญ์ œ bulk ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* feat: ์‚ฌ์šฉ์ž ์•„์ด๋”” ๊ธฐ๋ฐ˜ spending_custom_category ์‚ญ์ œ bulk ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* fix: ์‚ฌ์šฉ์ž ์‚ญ์ œ ์„œ๋น„์Šค ๋‚ด์—์„œ ์ง€์ถœ ๋ฐ์ดํ„ฐ ์‚ญ์ œ ๋กœ์ง ์ถ”๊ฐ€

* feat: device_token delete bulk ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* fix: device_token_service ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ฉ”์„œ๋“œ ์ œ๊ฑฐ

* fix: ์‚ฌ์šฉ์ž ์‚ญ์ œ ์‹œ, device token ๋น„ํ™œ์„ฑํ™” ์ถ”๊ฐ€

* test: ์‚ฌ์šฉ์ž ์‚ญ์ œ ํ…Œ์ŠคํŠธ ์‹œ ๋””๋ฐ”์ด์Šค ์‚ญ์ œ -> ๋น„ํ™œ์„ฑํ™” ํ…Œ์ŠคํŠธ๋กœ ์ˆ˜์ •

* fix: user_id๋กœ device_token ์กฐํšŒ ์‹œ, join๋˜๋Š” ๋ฌธ์ œ ์ œ๊ฑฐ

* test: spending ์‚ญ์ œ ํ…Œ์ŠคํŠธ

* fix: ๋ถˆํ•„์š”ํ•œ delete_at is null ์˜ต์…˜ ์ œ๊ฑฐ (์ด๋ฏธ sql_restriction์œผ๋กœ ์ฟผ๋ฆฌ์— ๋ฐ˜์˜๋จ)
* feat: aws_s3_provider delete object ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* fix: copy_object return ๊ฐ’ ์ถ”๊ฐ€

* refactor: aws s3 provider ํ˜ธ์ถœ ๋กœ์ง tx ์™ธ๋ถ€๋กœ ๋ถ„๋ฆฌ

* fix: presigned_url ๋ฐœ๊ธ‰ api ์‚ฌ์šฉ์ž ์•„์ด๋”” ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ ์ œ๊ฑฐ

* test: storage controller test ์ˆ˜์ •

* feat: s3 adapter get prefix ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* fix: ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ์ฃผ์†Œ dto ์‚ฝ์ž… ์ „ prefix ์ถ”๊ฐ€

* feat: ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ์‚ญ์ œ api

* fix: ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ์—…๋ฐ์ดํŠธ ์‹œ, ๊ธฐ์กด ์ด๋ฏธ์ง€๊ฐ€ ์žˆ๋‹ค๋ฉด ์‚ญ์ œ ๋กœ์ง ์ถ”๊ฐ€

* feat: ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ not found ์˜ˆ์™ธ ์ถ”๊ฐ€

* fix: ์‚ฌ์šฉ์ž ํ”„๋กœํ•„์ด ์—†๋Š” ๊ฒฝ์šฐ 404 ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* docs: ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ์‚ญ์ œ api ์Šค์›จ๊ฑฐ ์ž‘์„ฑ

* fix: put_profile_image ์‘๋‹ต์œผ๋กœ ์ €์žฅ๋œ ๊ฒฝ๋กœ ๋ฐ˜ํ™˜

* docs: ์ด๋ฏธ์ง€ ์ˆ˜์ • ์Šค์›จ๊ฑฐ ๋ฌธ์„œ ์ˆ˜์ •

* test: ํ”„๋กœํ•„ ์ •์ƒ ์š”์ฒญ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค ์ˆ˜์ •

* fix: ์•ˆ์ •์„ฑ์„ ์œ„ํ•ด user_dto์—์„œ profile_image_url null ๋ฐฉ์ง€ ์Šค๋‹ˆํŽซ ์œ ์ง€
* chore: api ๋ชจ๋“ˆ actuator ์˜์กด์„ฑ ์ถ”๊ฐ€

* fix: security filter actuator public endpoint ์˜ต์…˜ ์„ค์ •
* fix: user entity์˜ device token ์—ญ์ฐธ์กฐ ์ œ๊ฑฐ

* fix: device token unregister service์—์„œ user ์˜์†ํ™” ์ œ๊ฑฐ

* fix: device_entity์˜ ์ž์‹์˜ cascade ์˜ต์…˜ ์ œ๊ฑฐ
* feat: api_exception_explain ์–ด๋…ธํ…Œ์ด์…˜ ์ •์˜

* fix: ์—๋Ÿฌ ์„ค๋ช…์„ ์œ„ํ•œ ํ•„๋“œ ์ถ”๊ฐ€

* feat: ๋ณต์ˆ˜๊ฐœ์˜ error response๋ฅผ ๋‹ด๊ธฐ ์œ„ํ•œ ์ค‘๊ฐ„ ์–ด๋…ธํ…Œ์ด์…˜

* feat: ์—๋Ÿฌ ์‘๋‹ต ํŒŒ์„œ ๊ตฌํ˜„

* chore: swagger config์— ํŒŒ์„œ ๋นˆ ๋“ฑ๋ก

* rename: explanation ์˜คํƒ€ ์ˆ˜์ •

* fix: enum ์ƒ์ˆ˜ ์ถ”๋ก ์„ ์œ„ํ•œ field ์ถ”๊ฐ€ ๋ฐ ํŒŒ์„œ ๋กœ์ง ์ˆ˜์ •

* docs: ์ง€์ถœ ๋‚ด์—ญ ์ƒ์„ธ ์กฐํšŒ ์˜ˆ์™ธ์— api_response_explanations ์ ์šฉ

* chore: swagger config grouped_open_api add_operation_customizer ์ ์šฉ
* feat: pennyway domain config group ์—ด๊ฑฐ ํƒ€์ž… ์ •์˜

* feat: domain config ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ์–ด๋…ธํ…Œ์ด์…˜ ์ •์˜

* feat: domain config import select ๊ตฌํ˜„

* chore: redisson @configuration ์ œ๊ฑฐ, config group ์ƒ์ˆ˜ ์ถ”๊ฐ€

* rename: distributed lock aop -> aspect

* chore: batch ๋ชจ๋“ˆ redisson auth configure exclude

* chore: auto configurate ์˜ต์…˜ domain yml๋กœ ์ด์ „

* chore: redisson ๊ด€๋ จ ํด๋ž˜์Šค ๋ชจ๋‘ @component ์ œ๊ฑฐ -> ์ˆ˜๋™ bean ๋“ฑ๋ก

* chore: api ๋ชจ๋“ˆ domain config์— redisson ์„ค์ • ์ถ”๊ฐ€

* test: redisson ํ…Œ์ŠคํŠธ disabled
* fix: device token entity updated_at auditing ์ œ๊ฑฐ -> ์กฐํšŒํ•  ๋•Œ๋งˆ๋‹ค last_sigend_in ํ•„๋“œ ์—…๋ฐ์ดํŠธ

* fix: register service์—์„œ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ํ† ํฐ ์กฐํšŒ ์‹œ, signed in at ๊ฐฑ์‹ 

* fix: device token ๋งŒ๋ฃŒ ์—๋Ÿฌ ์ƒ์ˆ˜ ์ œ๊ฑฐ

* docs: put_device ํ™œ์„ฑํ™”๋˜์ง€ ์•Š์€ ํ† ํฐ ์—๋Ÿฌ ์ œ๊ฑฐ

* fix: device_token ์‚ญ์ œ ์š”์ฒญ์‹œ, deactivate ํ˜ธ์ถœํ•˜๋Š” ๋กœ์ง์œผ๋กœ ๋ณ€๊ฒฝ

* style: ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์˜์กด์„ฑ ์ œ๊ฑฐ

* test: ํ† ํฐ ํ™œ์„ฑํ™”, ๋น„ํ™œ์„ฑํ™” ํ…Œ์ŠคํŠธ ์ˆ˜์ •
* test: provider, oauth_id candidate test

* feat: already_used_oauth ์—๋Ÿฌ ์ฝ”๋“œ ์ถ”๊ฐ€

* feat: oauth_id, provider ์กฐ๊ฑด์œผ๋กœ oauth entity ์กฐํšŒ ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

* fix: oauth ๋ฐ์ดํ„ฐ ๋ณต๊ตฌ ์‹œ, user ํŒŒ๋ผ๋ฏธํ„ฐ ์ถ”๊ฐ€

* rename: test display name์„ ์ง๊ด€์ ์œผ๋กœ ์ˆ˜์ •

* fix: ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฏธ ์‚ฌ์šฉ ์ค‘์ธ ๊ฒฝ์šฐ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ

* test: oauth user_id ์—…๋ฐ์ดํŠธ ํ…Œ์ŠคํŠธ ์กฐ๊ฑด ์ถ”๊ฐ€

* fix: oauth to_string์—์„œ user ์ œ๊ฑฐ

* test: tx ์ œ๊ฑฐ

* test: oauth ์‚ญ์ œ ์ด๋ ฅ ๋ณต๊ตฌ ๋กœ์ง ์ œ๊ฑฐ ํ…Œ์ŠคํŠธ

* fix: oauth ๋ณต์ˆ˜ ๊ฐœ ๋ฐ์ดํ„ฐ๊ฐ€ ์กฐํšŒ๋  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜ ์ œ๊ฑฐ

* fix: oauth entity reverse_delete ๋ฉ”์„œ๋“œ ์ œ๊ฑฐ

* fix: user_sync_dto ๋‚ด๋ถ€ sync_oauth dto ์ œ๊ฑฐ

* docs: swagger ์—๋Ÿฌ ๋ฌธ์„œ ๊ฐฑ์‹ 

* fix: oauth service ๋ถˆํ•„์š” ๋ฉ”์„œ๋“œ ๋ฐ ์ฃผ์„ ์ œ๊ฑฐ
* fix: ์ •๋ ฌ ์กฐ๊ฑด spend_at ๋‚ด๋ฆผ์ฐจ์ˆœ, id ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ˆ˜์ •

* docs: swagger error ์ปค์Šคํ…€ ์–ด๋…ธํ…Œ์ด์…˜์œผ๋กœ ์ง€์ •
* feat: blue-green ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ deploy script ์ˆ˜์ •

* feat: deploy script์— workflow dispatch ์ถ”๊ฐ€

* fix: ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ ์ˆ˜์ • ๋ฐ script ๋ณ„๋„ ์ •์˜
* fix: domain sigin_in table ์ •๋ณด ์ œ๊ฑฐ

* fix: sigin in event redis ์ฝ”๋“œ ์ œ๊ฑฐ

* fix: sigin event interceptor ์ œ๊ฑฐ

* fix: web_config jwt provider ์˜์กด์„ฑ ์ œ๊ฑฐ

* fix: ip header converter ์ œ๊ฑฐ

* test: ๋ชจ๋“  ์ปจํŠธ๋กค๋Ÿฌ ํ…Œ์ŠคํŠธ์—์„œ web config ํด๋ž˜์Šค exclude ์ œ๊ฑฐ
@psychology50 psychology50 added the enhancement New feature or request label Aug 27, 2024
@psychology50 psychology50 self-assigned this Aug 27, 2024
@psychology50 psychology50 merged commit 741ab52 into main Aug 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants