-
Notifications
You must be signed in to change notification settings - Fork 0
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
[Server] 0.3.3 배포 (#143) #267
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* [Server] 개발환경 세팅 (#4) * build: open-list-server init * chore: @nestjs/config class-validator class-transformer 설치 * chore: 루트 레벨에서 설치한 패키지 삭제 * chore: NestJs 개발 환경 세팅 * chore: @nestjs/config class-validator class-transformer 설치 * Server/feature/#13 (#25) * chore: postgresql, nestjs docker 세팅 * chore: @nestjs/typeorm, typeorm, pg 설치 * chore: Typeorm 세팅 및 TestModel 테이블 생성 * 테스트용 유저 API 구현 (#30) * chore: common resource 추가 * chore: users resource 추가 * feature: base entity 구현 * feature: usersEntity 구현 * feature: 모듈에 usersModel 추가 * style: entity,dto의 users -> user로 변경 * feature: CreateUserDto 구현 * feature: userEntity 이메일 필드 추가 * feature: createUserDto 이메일 필드 추가 * feature: user patch->put으로 변경 * feature: updateUserDto 구현 * feature : create user 구현 * feature: 모든 유저의 정보를 가져오는 API 구현 * feature: 특정 유저의 정보를 가져오는 API 구현 * feature: user 정보 수정 API 구현 * feature: user 삭제 API 구현 * feature: ValidationPipe 적용 * refactor: usersService 리팩토링 * [Server] 유닛 테스트 환경 세팅 (#32) * chore: test 경로 설정 * feature: TestCommonModule 구현 * feature: users.service.spec.ts 의존성 주입 * feature: users.controller.spec.ts 의존성 주입 * [Server] Users resource 이름 변경 (#34) * style: usersController 네이밍에 컨벤션 맞게 변경 * style: usersService 컨벤션에 따른 네이밍 변경 * style: UsersModel -> UserModel 컨벤션에 따른 네이밍 변경 * feature: usersService 테스트 코드 작성 (#39) * [Server] Folder entity 생성 및 crud 구현 (#42) * feat: folders crud 구현 * chore: TestModel 삭제 및 관련된 종속성 제거 * feat: folders.controller.spec.ts 삭제, folders.service.spec.ts 구현 * feature: docker파일 수정 (#57) * feat: private checklist entity 생성 및 crud 구현 (#61) * chore: 개발용 postgres 포트변경 5432->5433, .env도 port 5433으로 변경필요 * feat: checklists res 생성 * feat: checklist, private-checklist, shared-checklisst 엔티티 생성, user모델과 folder모델과의 의존관계 주입 * feat: author->editor로 수정, 공유체크리스트와 사용자의 relation을 many to many로 업데이트 * feat: 개인, 공유 체크리스트에 대해 생성과 업데이트 시 dto 생성 * fix: class 이름 오타 수정 * refactor: rest api 방식에 따라 함수명 변경 * feat: CheckListModel에서 진행률 컬럼 삭제 * feat: folder와 user간의 manyToOne relation적용 * feat: private-checklist crud 작성 * feat: folder service 커버리지 100 달성 * test: private-checklist test code 작성, 커버리지 92퍼센트 * feat: checklist 폴더 분리 & dto 빈문자열 검증 추가 (#66) * refactor: checklists를 private, shared폴더로 분리. * refactor: private-checklists를 folders 하위로 이동 * fix: 빈문자열 검증 추가 * [Server] Winston으로 로그 관리 (#70) * chore: nest-winston winston winston-daily-rotate-file 설치 * feat: winston logger 설정 파일 구현 * feat: winston logger middleware 구현 * feat: 요청 logger middleware 구현 * feat: 로그에 요청 처리 시간 추가되도록 개선 * chore: PR 템플릿 수정 * chore: PR 템플릿 수정 * feat: jwt access, refresh token 기반 인가 구현 * chore: auth resource 추가 * chore: jwt 모듈 추가 * feature: signToken 구현 * feature: 토큰 검증, 토큰 재발급 기능 구현 * feature: 로그인 기능 구현 * feature: 로그인 관련 서비스 구현 * feature: login 컨트롤러 구현 * style: loginDto -> loginUserDto로 변경 * feature: access 토큰 재발급 컨트롤러 구현 * refactor: access토큰 재발급 형식 변경 * feature: 유저 register 기능 구현 * feature: auth.service.ts 테스트 코드 작성 * fix: 이메일 중복시 에러 메시지 수정 --------- Co-authored-by: Minseong Park <[email protected]> * [Server] shared-checklist 소켓 구현 (#78) * [Server] apple oauth api 구현 (#86) * chore: @nestjs/axios 설치 * chore: axios 설치 * chore: axios 설치 * feat: dto수정, userId 컬럼추가, providerId 수정, fullName 컬럼 추가 * feat: entity에 따라 dto 항목 수정 * feat: apple oauth 로그인 서비스 함수 추가 client secret 만들고, axios post로 user 정보 가지고옴. * feat: apple oauth 로그인 엔드포인트 추가 * feat: apple 유저에대해 create, update 함수 구현 * feat: publicKey 발급받는 로직추가 * [Server] access 토큰 재발급시 유저 정보 없는 버그 수정 (#83) * [Server] privateChecklist의 내용 저장 api 구현 (#88) * [Server] apple oauth 로그인 로직 수정 (#118) * feat: env 사용방식 변경 + idToken 검증로직 추가 * chore: jwk를 pem으로 변환하기 위한 jose 라이브러리 설치 * chore: jose 라이브러리 제거 @panva/jose 설치 * feat: request body로 들어오는 auth-user.dto.ts 수정 * feat: 애플 유저 등록 로직 수정 * docs: jsdoc return type 수정 * feat: apple login 로직 수정(appleToken, clientSecret 로직 삭제) * feat: refreshAccessToken 함수에서 refreshToken도 함께 반환해주도록 로직 수정 * [Server] Clova Studio api 구현 (#126) * feat: checklist-ai 리소스 생성 * feat: create-checklist-items.dto.ts 요청 dto 생성 * feat: 문자열 및 각종 옵션 상수화 * feat: user-role const 파일 삭제 => 함수화 * feat: /checklist-ai POST 요청 api 생성 대,중,소 카테고리를 body로 받아오면 clova studio에서 체크리스트 항목 10개를 반환한다. * feat: AccessTokenGuard 구현 및 적용 (#129) * feat: access token guard 구현 * feat: access token guard 전역 적용 * style: access-token.guard.ts 주석 추가 * feat: userId decorator 구현 * feat: folders controller에 userId 데코레이터 추가 * feat: 폴더 서비스에 user 데코레이터 추가 * feat: 개인 체크리스트 컨트롤러에 유저 데코레이터 추가 * feat: private-checklists service에 user 데코레이터 추가 * fix: 테스트 코드 수정 * Server/feature/#128 (#139) * feat: json 구조로 카테고리 데이터 정의 * feat: categories 의존성 주입 * feat: endpoint만들고, 실제 존재하는 id인지 검증하는 dto 생성 * fix: 오타수정 forder->folder * feat: param에 dto 적용하지 못해 삭제 * feat: 카테고리 json 데이터 변수명 변경, 대문자로 * feat: 대,중,소 카테고리 반환 api 구현 * test: categories.service.spec.ts 테스트 코드 작성 * test: categories.service.spec.ts 테스트 코드 수정 커버리지 100 * feat: 공유 체크리스트 API 및 소켓 작업 구현 (#140) * feat: shared checklist item entity 구현 * style: SharedChecklistItemModel 오타 수정 * feat: shared checklist id uuid로 변경 * feat: create shared checklist 디티오 수정 * feat: shared-checklists 생성 구현 * refactor: shared-checklists 저장하는 함수 분리 * feat: shared-checklists 1개, 전부 가져오는 기능 추가 * feat: 유저 초대 기능 추가 * feat: 공유 체크리스트 삭제 기능 구현 * style: shared-checklists service 주석 추가 * feature: 공유 체크리스트 소켓에 데이터 누적 기능 추가 * feat: shared-checklists 소켓 통신 시 데이터 데베에 저장 구현 * feat: 소켓 연결시 방의 데이터 히스토리를 전송하는 기능 추가 * style: 소켓 주석 추가 * 🔐feat: 개발용 임시로 액세스,리프레시 토큰들 만료기한 일주일로 설정 (#142) --------- Co-authored-by: Minseong Park <[email protected]>
수고하셨습니다. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
[Server] 개발환경 세팅 ([Server] 개발환경 세팅 #4)
build: open-list-server init
chore: @nestjs/config class-validator class-transformer 설치
chore: 루트 레벨에서 설치한 패키지 삭제
chore: NestJs 개발 환경 세팅
chore: @nestjs/config class-validator class-transformer 설치
Server/feature/[Server] server 기본세팅 #13 ([Server] server 기본세팅 #25)
chore: postgresql, nestjs docker 세팅
chore: @nestjs/typeorm, typeorm, pg 설치
chore: Typeorm 세팅 및 TestModel 테이블 생성
테스트용 유저 API 구현 (테스트용 유저 API 구현 #30)
chore: common resource 추가
chore: users resource 추가
feature: base entity 구현
feature: usersEntity 구현
feature: 모듈에 usersModel 추가
style: entity,dto의 users -> user로 변경
feature: CreateUserDto 구현
feature: userEntity 이메일 필드 추가
feature: createUserDto 이메일 필드 추가
feature: user patch->put으로 변경
feature: updateUserDto 구현
feature : create user 구현
feature: 모든 유저의 정보를 가져오는 API 구현
feature: 특정 유저의 정보를 가져오는 API 구현
feature: user 정보 수정 API 구현
feature: user 삭제 API 구현
feature: ValidationPipe 적용
refactor: usersService 리팩토링
[Server] 유닛 테스트 환경 세팅 ([Server] 유닛 테스트 환경 세팅 #32)
chore: test 경로 설정
feature: TestCommonModule 구현
feature: users.service.spec.ts 의존성 주입
feature: users.controller.spec.ts 의존성 주입
[Server] Users resource 이름 변경 ([Server] Users resource 이름 변경 #34)
style: usersController 네이밍에 컨벤션 맞게 변경
style: usersService 컨벤션에 따른 네이밍 변경
style: UsersModel -> UserModel 컨벤션에 따른 네이밍 변경
feature: usersService 테스트 코드 작성 ([Server] 테스트용 유저 API 테스트 #39)
[Server] Folder entity 생성 및 crud 구현 ([Server] Folder entity 생성 및 crud 구현 #42)
feat: folders crud 구현
chore: TestModel 삭제 및 관련된 종속성 제거
feat: folders.controller.spec.ts 삭제, folders.service.spec.ts 구현
feature: docker파일 수정 ([Server] nest docker파일 수정 #57)
feat: private checklist entity 생성 및 crud 구현 (feat: private checklist entity 생성 및 crud 구현 #61)
chore: 개발용 postgres 포트변경 5432->5433, .env도 port 5433으로 변경필요
feat: checklists res 생성
feat: checklist, private-checklist, shared-checklisst 엔티티 생성, user모델과 folder모델과의 의존관계 주입
feat: author->editor로 수정, 공유체크리스트와 사용자의 relation을 many to many로 업데이트
feat: 개인, 공유 체크리스트에 대해 생성과 업데이트 시 dto 생성
fix: class 이름 오타 수정
refactor: rest api 방식에 따라 함수명 변경
feat: CheckListModel에서 진행률 컬럼 삭제
feat: folder와 user간의 manyToOne relation적용
feat: private-checklist crud 작성
feat: folder service 커버리지 100 달성
test: private-checklist test code 작성, 커버리지 92퍼센트
feat: checklist 폴더 분리 & dto 빈문자열 검증 추가 ([Server] checklist 폴더 분리 #66)
refactor: checklists를 private, shared폴더로 분리.
refactor: private-checklists를 folders 하위로 이동
fix: 빈문자열 검증 추가
[Server] Winston으로 로그 관리 ([Server] Winston으로 로그 관리 #70)
chore: nest-winston winston winston-daily-rotate-file 설치
feat: winston logger 설정 파일 구현
feat: winston logger middleware 구현
feat: 요청 logger middleware 구현
feat: 로그에 요청 처리 시간 추가되도록 개선
chore: PR 템플릿 수정
chore: PR 템플릿 수정
feat: jwt access, refresh token 기반 인가 구현
chore: auth resource 추가
chore: jwt 모듈 추가
feature: signToken 구현
feature: 토큰 검증, 토큰 재발급 기능 구현
feature: 로그인 기능 구현
feature: 로그인 관련 서비스 구현
feature: login 컨트롤러 구현
style: loginDto -> loginUserDto로 변경
feature: access 토큰 재발급 컨트롤러 구현
refactor: access토큰 재발급 형식 변경
feature: 유저 register 기능 구현
feature: auth.service.ts 테스트 코드 작성
fix: 이메일 중복시 에러 메시지 수정
[Server] shared-checklist 소켓 구현 ([Server] shared-checklist 소켓 구현 #78)
[Server] apple oauth api 구현 ([Server] apple oauth api 구현 #86)
chore: @nestjs/axios 설치
chore: axios 설치
chore: axios 설치
feat: dto수정, userId 컬럼추가, providerId 수정, fullName 컬럼 추가
feat: entity에 따라 dto 항목 수정
feat: apple oauth 로그인 서비스 함수 추가
client secret 만들고, axios post로 user 정보 가지고옴.
feat: apple oauth 로그인 엔드포인트 추가
feat: apple 유저에대해 create, update 함수 구현
feat: publicKey 발급받는 로직추가
[Server] access 토큰 재발급시 유저 정보 없는 버그 수정 ([Server] access 토큰 재발급시 유저 정보 없는 버그 수정 #83)
[Server] privateChecklist의 내용 저장 api 구현 ([Server] privateChecklist의 내용 저장 api 구현 #88)
[Server] apple oauth 로그인 로직 수정 ([Server] apple oauth 로그인 로직 수정 #118)
feat: env 사용방식 변경 + idToken 검증로직 추가
chore: jwk를 pem으로 변환하기 위한 jose 라이브러리 설치
chore: jose 라이브러리 제거 @panva/jose 설치
feat: request body로 들어오는 auth-user.dto.ts 수정
feat: 애플 유저 등록 로직 수정
docs: jsdoc return type 수정
feat: apple login 로직 수정(appleToken, clientSecret 로직 삭제)
feat: refreshAccessToken 함수에서 refreshToken도 함께 반환해주도록 로직 수정
[Server] Clova Studio api 구현 ([Server] Clova Studio api 구현 #126)
feat: checklist-ai 리소스 생성
feat: create-checklist-items.dto.ts 요청 dto 생성
feat: 문자열 및 각종 옵션 상수화
feat: user-role const 파일 삭제 => 함수화
feat: /checklist-ai POST 요청 api 생성
대,중,소 카테고리를 body로 받아오면 clova studio에서 체크리스트 항목 10개를 반환한다.
feat: AccessTokenGuard 구현 및 적용 ([Server] AccessTokenGuard 구현 및 적용 #129)
feat: access token guard 구현
feat: access token guard 전역 적용
style: access-token.guard.ts 주석 추가
feat: userId decorator 구현
feat: folders controller에 userId 데코레이터 추가
feat: 폴더 서비스에 user 데코레이터 추가
feat: 개인 체크리스트 컨트롤러에 유저 데코레이터 추가
feat: private-checklists service에 user 데코레이터 추가
fix: 테스트 코드 수정
Server/feature/[Server] AI 추천용 카테고리 api 구현 #128 (feat: 체크리스트 api 구현 #139)
feat: json 구조로 카테고리 데이터 정의
feat: categories 의존성 주입
feat: endpoint만들고, 실제 존재하는 id인지 검증하는 dto 생성
fix: 오타수정 forder->folder
feat: param에 dto 적용하지 못해 삭제
feat: 카테고리 json 데이터 변수명 변경, 대문자로
feat: 대,중,소 카테고리 반환 api 구현
test: categories.service.spec.ts 테스트 코드 작성
test: categories.service.spec.ts 테스트 코드 수정 커버리지 100
feat: 공유 체크리스트 API 및 소켓 작업 구현 ([Server] 공유 체크리스트 API 및 소켓 작업 구현 #140)
feat: shared checklist item entity 구현
style: SharedChecklistItemModel 오타 수정
feat: shared checklist id uuid로 변경
feat: create shared checklist 디티오 수정
feat: shared-checklists 생성 구현
refactor: shared-checklists 저장하는 함수 분리
feat: shared-checklists 1개, 전부 가져오는 기능 추가
feat: 유저 초대 기능 추가
feat: 공유 체크리스트 삭제 기능 구현
style: shared-checklists service 주석 추가
feature: 공유 체크리스트 소켓에 데이터 누적 기능 추가
feat: shared-checklists 소켓 통신 시 데이터 데베에 저장 구현
feat: 소켓 연결시 방의 데이터 히스토리를 전송하는 기능 추가
style: 소켓 주석 추가
🔐feat: 개발용 임시로 액세스,리프레시 토큰들 만료기한 일주일로 설정 (🔐feat: 개발용 임시로 액세스,리프레시 토큰들 만료기한 일주일로 설정 #142)
🚀 완료한 기능 혹은 수정 기능
💡 고민과 해결 과정
배경
고민
해결과정
📸 스크린샷
✅ 테스트 결과(커버리지/테스트 결과)