Slide 1

Slide 1 text

Poetry

Slide 2

Slide 2 text

virtualenv + pip + pip-tools + twine

Slide 3

Slide 3 text

PEP 518 ● ● [build-system] requires = ["setuptools", "wheel"]

Slide 4

Slide 4 text

Poetry is a... ● ● ● [build-system] requires = ["poetry>=0.12"] build-backend = "poetry.masonry.api"

Slide 5

Slide 5 text

Poetry does not... ● ● ●

Slide 6

Slide 6 text

Why not... ● ● ●

Slide 7

Slide 7 text

Version Specification

Slide 8

Slide 8 text

=1.2.3

Slide 9

Slide 9 text

~1.2.3

Slide 10

Slide 10 text

^1.2.3

Slide 11

Slide 11 text

*

Slide 12

Slide 12 text

{ git = “https://github.com/owner/repo”, rev = “3846693f2daea2a9f156aba10512161d3a7ed5f6” }

Slide 13

Slide 13 text

{ git = “https://github.com/owner/repo”, rev = “v1.0” }

Slide 14

Slide 14 text

{ git = “https://github.com/owner/repo”, rev = “develop” }

Slide 15

Slide 15 text

{ path = “../my/local/package” }

Slide 16

Slide 16 text

Generic Commands

Slide 17

Slide 17 text

$ poetry new

Slide 18

Slide 18 text

$ poetry init

Slide 19

Slide 19 text

$ poetry add

Slide 20

Slide 20 text

$ poetry add --dev

Slide 21

Slide 21 text

$ poetry lock

Slide 22

Slide 22 text

$ poetry show --tree

Slide 23

Slide 23 text

$ poetry run

Slide 24

Slide 24 text

Packaging Commands

Slide 25

Slide 25 text

$ poetry build

Slide 26

Slide 26 text

$ poetry publish

Slide 27

Slide 27 text

$ poetry config http-basic.pypi

Slide 28

Slide 28 text

https://pypi.org/manage/account/token/

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

$ poetry config pypi-token.pypi

Slide 31

Slide 31 text

pipx

Slide 32

Slide 32 text

pip + virtualenv

Slide 33

Slide 33 text

Why not... ● ● ●

Slide 34

Slide 34 text

Installation Commands

Slide 35

Slide 35 text

$ pipx install

Slide 36

Slide 36 text

$ pipx upgrade

Slide 37

Slide 37 text

Demo