In the last episode, we talked about going from script to supported package.
I worked on a project called subark and did the packaging with flit.
Today's episode is a continuation where we add new features to a supported package and how to develop and test a flit based package.
Covered:
viewing stages of a project with git tags
flit support for editable installs
flit description entry in pyproject.toml to put README on pypi.
development dependencies in pyproject.toml
editor layout for optimal TDD-ing
test case grouping
modifications to traditional TDD that helps me develop faster.
code and command snippets from episode:
For git checkout of versions:

$ git clone https://github.com/okken/submark.git
$ cd submark
$ python3 -m venv venv --prompt submark
$ source ./bin/activate
(submark) $ git checkout v0.1
... etc ...
(submark) $ git checkout v0.7

To grab the latest again:

(submark) $ git checkout master

pyproject.toml change for README to show up on pypi:

[tool.flit.metadata]
...
description-file = "README.md"
...

Adding dev dependencies to pyproject.toml:

[tool.flit.metadata.requires-extra]
test = ["pytest", "pytest-cov", "tox"]

Installing in editable mode (in top level repo directory). works in mac, linux, windows:

(submark) $ flit install --pth-file

or for mac/linux:

(submark) $ flit install -s

In the last episode, we talked about going from script to supported package.

I worked on a project called subark and did the packaging with flit.

Today's episode is a continuation where we add new features to a supported package and how to develop and test a flit based package.

Covered:

viewing stages of a project with git tags
flit support for editable installs
flit description entry in pyproject.toml to put README on pypi.
development dependencies in pyproject.toml
editor layout for optimal TDD-ing
test case grouping
modifications to traditional TDD that helps me develop faster.

code and command snippets from episode:

For git checkout of versions:

$ git clone https://github.com/okken/submark.git
$ cd submark
$ python3 -m venv venv --prompt submark
$ source ./bin/activate
(submark) $ git checkout v0.1
... etc ...
(submark) $ git checkout v0.7

To grab the latest again:

(submark) $ git checkout master

pyproject.toml change for README to show up on pypi:

[tool.flit.metadata]
...
description-file = "README.md"
...

Adding dev dependencies to pyproject.toml:

[tool.flit.metadata.requires-extra]
test = ["pytest", "pytest-cov", "tox"]

Installing in editable mode (in top level repo directory). works in mac, linux, windows:

(submark) $ flit install --pth-file

or for mac/linux:

(submark) $ flit install -s

Sponsored By:

PyCharm Professional: PyCharm is designed by programmers, for programmers, to provide all the tools you need for productive Python development. Promo Code: TESTANDCODE22

Links:

submark · PyPIsubmark on GitHubThe pyproject.toml config file — Flit 1.3 documentationFlit install — Flit 1.3 documentationTest & Code 80: From Python script to Maintainable Package