<aside>

</aside>

챕터 소개 🚀

"어? poetry update 했더니 갑자기 프로젝트가 안 돌아가요!" 😱 이런 끔찍한 상황, 겪고 싶지 않으시죠? 오늘은 Poetry 의존성 관리의 심장부, 버전 제약 조건과 업데이트 전략에 대해 깊이 파고들어 보겠습니다. poetry updatepoetry install의 차이점을 명확히 알고, poetry lockpoetry sync를 자유자재로 사용하며, 의도치 않은 '재앙'을 막는 방법을 배울 거예요. 의존성 충돌(SolverProblemError)이 발생했을 때 해결하는 탐정 기술도 익혀봅시다!


챕터 목표 🎯


이번 챕터에서 사용되는 전체 코드 및 프로젝트 구조 📂

이번 챕터는 코드를 변경하는 대신, pyproject.toml을 직접 수정하고 터미널에서 다양한 Poetry 명령어를 실행하며 그 결과를 관찰하는 실습 위주로 진행됩니다.


강의 내용 📖

install vs update : 안정성과 최신성의 줄다리기

두 명령어는 비슷해 보이지만, 아주 중요한 차이가 있습니다.

graph TD
    A["pyproject.toml<br/>fastapi >=0.111,<1.0"]
    B["poetry.lock<br/>fastapi == 0.111.0"]
    C[".venv"]

    subgraph "poetry install"
        B --"기준"--> C
    end

    subgraph "poetry update"
        A --"기준"--> B_new["poetry.lock<br/>(fastapi가 0.112.x로<br/>업데이트되면 그 버전으로 갱신)"]
        B_new --> C_new[".venv (갱신)"]
    end

ℹ️ 참고: Poetry 2.x에서 poetry lock의 기본 동작은 --no-update 입니다(잠겨있는 범위를 최대한 유지). 또한 과거 install --sync는 poetry sync로 대체되었습니다. (Poetry)