규도자 개발 블로그

python-cli-base: 파이썬 cli package를 만들기 위한 베이스 프로젝트 본문

Python/Python

python-cli-base: 파이썬 cli package를 만들기 위한 베이스 프로젝트

규도자 (gyudoza) 2022. 9. 24. 22:31

python-cli-base: 파이썬 cli package를 만들기 위한 베이스 프로젝트

를 만들었다. 코드는 https://github.com/jujumilk3/python-cli-base 이곳에서 확인할 수 있다.

 

물론 pip install python-cli-base명령어를 통해 pip로도 설치할 수 있으며 pypi 주소는 https://pypi.org/project/python-cli-base/ 이곳이다. 만약에 python cli app을 만들고 싶은 사람이라면 이걸 설치해서 어디서 무엇을 어떻게 참조해서 실행되는 것인지 분석해본다면 코드를 추가해서 간단하게 자신이 원하는 cli app을 제작할 수 있을 것이다. 그런 목적으로 제작하기도 했고. 내가 많이 해매서.. ㅠㅠ

 

최종목적은 circular import 검사기를 만들고 github actions에 올려서 ci/cd 과정 중에 쓸 수 있게 하는 것이므로 인스톨했을 때 바로 pcb라는 명령어로 실행될 수 있게 작업했고 부차적인 명령어 옵션들은 저장소 README.md에 설명돼있다. 제작할 때 기존에 설치하자마자 cli 명령어를 지원하던 aws-cli나 black 등등을 많이 참고했다.

 

circular import 검사기는 왜 만들려고 하는 것이냐, 코드가 병합되면서 내가 작업할 땐 없었던 cyclic reference가 생기기 때문이다. 최근에 겪기도 했었고, ci/cd과정 중에 test code가 있었음에도 불구하고 test coverage가 100%를 채우지 않는 이상 발견할 수 없는 문제였다. 그래서 사실 circular import를 검사해주는 pycycle이라는 프로젝트를 찾긴 했는데 (https://github.com/bndr/pycycle) 얘로는 복잡한 프로젝트에서의 circular import를 찾지 못하더라. 현재 배포버전에서 버그도 있고 영 신뢰할만하지가 않다.

 

그래서 직접 만들기로 했다 핳하

 

 

pcb는 현재 0.0.2버전으로 릴리즈하긴 했는데 뭐 더 추가할 것도 없고 뺄 것도 없는 100줄 이하의 프로젝트라서 따로 또 작업할 일은 없을 것 같다.

 

p.s: 오픈소스 좋아하는 사람들의 특징...이라고 해야하나. 오히려 뭔가 이런 허점이나 결함, 결핍을 발견하게 되면 너무 기분이 좋다. 하하핳

 

Comments