- 읽을거리
- 사용법
- 설명
setuptools를 사용하여 패키지를 배포할 준비를 할 때, 필요한 정보
를 담고 있음
- Python 패키지에 대한 선언적인 구성 정보를 제공하며,
setuptools
를 통한 빌드 및 설치 과정에서 사용됩니다.
- 주로 패키지 버전, 설명 등이 여기에 정의
[metadata]
name = example_pkg
version = attr: example_pkg.__version__
author = Your Name
author_email = developer@example.com
description = An example package for ROS2
license = MIT
[metadata]
name = example_pkg
version = 0.0.1
author = Your Name
author_email = you@example.com
description = An example package
long_description = file: README.md
long_description_content_type = text/markdown
url = https://github.com/yourusername/example_pkg
license = MIT
[options]
packages = find:
install_requires =
requests
numpy
[options.packages.find]
exclude =
tests*
testing*
- version = attr: example_pkg.version는 패키지의 init.py 파일에서 버전 정보를 가져오는 방법을 나타냄*
packages = find:
옵션은 프로젝트 내에서 정의된 패키지들을 자동으로 찾는 것
- 이 옵션은
setuptools
가 현재 프로젝트 내에서 소스 코드로 존재하는 패키지들을 자동으로 찾아서 설치 패키지에 포함시키도록 지시
- 즉, 이는 프로젝트의 구조를 분석하여, 프로젝트에 정의된 패키지들을 식별하고, 설치 과정에서 이들을 처리하는 데에 사용
install_requires
는 프로젝트가 의존하는 외부 패키지들을 설치하기 위해 필요한 것
- 모듈 내에 있는 import 문에 필요한 외부 패키지(외부 의존성)를 설치
- 명시적으로 setup.cfg 에 입력해줘야함.
- 여기에 나열된 패키지들은
pip
(또는 해당 설치 도구)에 의해 PyPI (Python Package Index) 또는 다른 지정된 소스에서 자동으로 다운로드 및 설치
setup.py와 setup.cfg 의 차이?