歡迎來到 PyCon TW 2023 共筆
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
共筆入口:https://hackmd.io/@pycontw/2023
手機版請點選上方 按鈕展開議程列表。
Welcome to PyCon TW 2023 Collaborative Writing
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →
Collaborative Writing Workplace:https://hackmd.io/@pycontw/2023
Using mobile please tap to unfold the agenda.
Collaborative writing start from below
從這裡開始共筆
Slide: https://slides.p3ac0ck.net/pycontw2023/index.html
- PEPs: 517, 621, and 660
pyproject.toml
format was defined
pyproject.toml https://pip.pypa.io/en/stable/reference/build-system/pyproject-toml/
Pipenv
- Pros
- supports lock-file
- easy to add/ upgrade pacakges
- wraps vitualenv
- Cons
- slow dependency resolver
- limited support for pep 621 style
pyproject.toml
Poetry
- Pros
- Dependency management with lock-file
- Wrapper virtual env
- Include Task-runner poetry run
- Helper for the building wheels
- Cons
- Not support PEP621 style
pyproject.toml
PDM
- Pros
- Fast dependency resolver (you can choose another resolver)
- Support PEP 621
- Include Task runner (pdm run)
- Cons
- Not include wheel building helper
- Pros
- Simple, only 2 commands
- Support PEP 621
- Combine-able with pip or hatch
- Maintained by the jazzband community
- Cons
- does not included task runner or wheel building tools
Hatch
- Pros
- Configurable to a backend for builing project
- Maintained acitvely by PyPA nearly official
- Support PEP 621
- Cons
pip
- Pros
- Build-in in Python, very simple
- Support PEP 621
- Cons
- cannot wrap virtualenv
- does not support file-managed dependencies
- does not include task-runnder and wheel builder
Summary
Case 1: Library developing
- Hatch (with pip-tools): Very configurable and flexible
Case 2: Application Developing
- PDM: All-in-one tool and easy to use
- resaons:
- fast dependency resolver
- supports PEP 621 style
pyproject.toml
Case 3: Automation Script Developing
- pip Simple to use, not built-in in Python)
- reasons:
- Lightweight, non-dep
- Simple to use
Appendix
Rye
- pros
- single-binary, easy to install and use
- works with
pyproject.toml
spec PEP 621 style
- wraps virtualenv, including package builder and publisher
- inlcude python version manager
- cons
Q & A
- is requirement.txt dead?
- no, but it has some problems
Below is the part that speaker updated the talk/tutorial after speech
講者於演講後有更新或勘誤投影片的部份