오픈소스
5 posts
(Backend.AI) hotfix PR 뜯어보기

얼마전, 오픈소스에 하나의 PR을 머지시켰다. 다음날 레포를 확인해보니, 내가 merge시킨 기능과 관련한 hotfix가 2개나 열려있었다.. #768. create vfolder status correctly 첫번째로 새로 추가한 컬럼()의 default value 설정값과 관련하여 버그가 발생한 듯하다. python sqlalchemy에서는 다음과 같은 포맷으로 table과 column을 관리한다. 테이블에 컬럼을 추가하는 작업을 진행할 때, 컬럼의 기본값을 지정해주기 위해 인자를 사용했다. 하지만 이미 존재하던 테이블에 새로운 컬럼을 추가한 것이므로, 새로운 데이터를 생성할 때 뿐만 아니라 기존에 table에 존재하던 데이터에 이 속성의 값을 어떻게 설정해주어야 할지까지 고려했어야 했다. 따라서 “없던 속성을 새로 추가한 상황”에서는 단순히 컬럼의 기본 속성값을 지정해주는 가 아닌, 해당 속성을 가지고 있지 않던 데이터에도 기본값을 저장하도록 인자를 사용했어야 했다. …

October 06, 2022
|
오픈소스
데이터베이스
(Backend.AI) 614. ImageNotFound message typo error

Issue Contents #614 존재하지 않는 이미지로 세션을 생성할 때 발생하는 ImageNotFound 에러의 메세지 typo errorf를 수정한다. Ideation & Issue Solving ImageNotFound typo error 수정 (a9801d) 주요 변경/개선 사항 반영완료 #615 Issue Contents #614 Ideation & Issue Solving 주요 변경/개선 사항

October 03, 2022
|
오픈소스
(Backend.AI) 742. Auto-generate and auto-commit news fragment from PR title

Issue Contents #742 프로젝트에 새롭게 기여하는 컨트리뷰터들에게 news fragment 작성 방법을 설명하는 번거로움을 덜기 위하여 PR제목을 수정할 경우 towncrier news fragment를 자동으로 생성/수정하도록 workflow를 구현하자. PR에 assign된 label과 매칭되는 news fragment를 가져오고, PR 제목이 변경될 경우 그 내용을 자동으로 수정/commit/push한다 assign된 label이 없는 경우는 workflow를 수행하지 않는다 label과 매칭되는 news fragment가 없는 경우 workflow는 failure를 뱉어야 한다 news fragment가 존재하지 않는 경우, 현재의 PR제목으로 news fragment를 생성해주자 Ideation & Issue Solving news fragment를 생성 및 수정하는 파이선 스크립트 파일을 생성하고, 를 사용하여 변경할 내용(—content) / 매칭여부를 확…

October 02, 2022
|
오픈소스
(Backend.AI) 575. introduce vfolder status

Issue Contents #575 vfolder clone, delete와 같은 storage-proxy operation 작업을 수행할 때, 사용자의 접근을 제어할 수 있도록 vfolder 상태값을 관리하려고 한다. Ideation & Issue Solving status값을 관리하기 위한 값을 생성하고 이 값을 field로 가지는 table을 생성한다. 새로 생성한 테이블은 FK로 vfolder table을 참조하도록 하자. manager의 vfolder api에 정의된 operation(create, clone, delete)에 vfolder status값을 관리하는 쿼리를 추가하자. vfolder status에 따라 사용자 접근을 제어하기 위해서 어떤 방법을 사용할까? Pull Request Review 테이블을 추가로 선언하는 것이 과연 필요할까? 라는 의문이 들어서, 이슈 작업을 시작하기 전에 멘토님께 아래와 같은 내용을 문의드렸다. 자주 일어나는 오퍼레이션이 아니므…

September 14, 2022
|
오픈소스
(Backend.AI) 691. Add the commit history between releases in the release notes

Issue Contents #691 release note()에 커밋 히스토리 기록을 추가하도록 를 수정한다. Ideation & Issue Solving 이전에 release된 버전의 tag와 현재 release된 버전의 tag를 얻어와서, 전체 커밋 히스토리를 조회할 수 있는 링크를 CHANGELOG에 추가하면 될 것 같았다. 기능상으로 유의미한 변화를 가져오지는 않지만, 사용자(오픈소스 기여자 및 프로젝트 관리자) 편의성을 충분히 개선시킬 수 있는 작업이라고 생각했다. 스크립트 내부에서 git shell command를 실행하기 위해 라이브러리(파이선 스크립트에서 다른 프로세스를 실행, 출력할 수 있다)를 사용 (1a3063) 이전~현재 버전 사이의 커밋 히스토리는 링크를 통해 조회할 수 있었다. 스크립트를 실행하면 생성되는 에 해당 링크가 추가되도록 수정했다. (1a3063) scripts/extract-release-changelog.py 주요 변경/개선 사항 반영완료…

September 14, 2022
|
오픈소스