Python Bytes   /     #407: Back to the future, destination 3.14

Description

Topics covered in this episode: Python 3.14.0 alpha 1 is now available uv supports dependency groups dive: A tool for exploring each layer in a docker image pytest-metadata Extras Joke Watch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python Training The Complete pytest Course & Hello, pytest! Patreon Supporters Connect with the hosts Michael: @mkennedy@fosstodon.org Brian: @brianokken@fosstodon.org Show: @pythonbytes@fosstodon.org 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 First of seven planned alpha releases. Many new features for Python 3.14 are still being planned and written. Among the new major new features and changes so far: PEP 649: deferred evaluation of annotations Improved error messages 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: I’ve started filtering deprecated plugins from the pytest plugin list. I’m also going to start reviewing the list and pulling out interesting plugins as the topic of the next season of Test & Code. Michael: Pillow 11 is out pip install deutschland Talk Python has a dedicated blog, please subscribe! Joke: Dog names

Summary

Topics include Python 3.14.0 alpha 1 is now available, uv supports dependency groups, dive: A tool for exploring each layer in a docker image, and pytest-metadata.

Subtitle
Duration
00:28:26
Publishing date
2024-10-28 00:00
Link
https://pythonbytes.fm/episodes/show/407/back-to-the-future-destination-3.14
Contributors
  Michael Kennedy and Brian Okken
author  
Enclosures
https://pythonbytes.fm/episodes/download/407/back-to-the-future-destination-3.14.mp3
audio/mpeg