Home
cover of episode #407 Back to the future, destination 3.14

#407 Back to the future, destination 3.14

2024/10/28
logo of podcast Python Bytes

Python Bytes

Frequently requested episodes will be transcribed first

Shownotes Transcript

Topics covered in this episode:

- **[Python 3.14.0 alpha 1 is now available](https://pythoninsider.blogspot.com/2024/10/python-3140-alpha-1-is-now-available.html?featured_on=pythonbytes))**

Watch on YouTube)

About the show

Sponsored by us! Support our work through:

Connect with the hosts

Join us on YouTube at pythonbytes.fm/live) to be part of the audience. Usually Monday at 10am PT. Older video versions available there too.

Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list), we'll never share it.

Michael #1: Python 3.14.0 alpha 1 is now available)

Brian #2: uv supports dependency groups)

  • we covered dependency groups in episode 406)

  • as of 0.4.27), uv supports dependency groups

  • docs show how to add dependencies) with uv add --group

  • also “The --dev, --only-dev, and --no-dev flags are equivalent to --group dev, --only-group dev, and --no-group dev respectively.”

  • To install a group, uv pip install --group doesn’t work yet.

  • It’s waiting for PyPA to decide on an interface for pip, and uv pip will use that interface.

  • But sync works.

`$ uv init # create a pyproject.toml
$ uv add --group foo pytest
$ uv venv # create venv
$ uv sync --group foo # will install all dependencies, including group "foo"
`

Michael #3: dive: A tool for exploring each layer in a docker image)

  • via Mike Fiedler

  • Features:

  • Show Docker image contents broken down by layer

  • Indicate what's changed in each layer

  • Estimate "image efficiency"

  • Quick build/analysis cycles

  • CI Integration

Brian #4: pytest-metadata)

  • An incredibly useful plugin for adding, you guessed it, metadata, to your pytest results.

  • Required for pytest-html) but also useful on it’s own

  • Adds metadata to

  • text output with --verbose

  • xml output when using --junit-xml, handy for CI systems that support junit.xml

  • Other plugins depend on this and report in other ways, such as pytest-html

  • By default, already grabs

  • Python version

  • Platform info

  • List of installed packages

  • List of installed pytest plugins

  • You can add your own metadata

  • You can access all metadata (and add to it) from tests, fixtures, and hook functions via a metadata fixture.

  • This is in the Top pytest Plugins list), currently #5.

Extras

Brian:

Michael:

Joke: Dog names