#416: A Ghostly Episode
Published Mon, Jan 13, 2025,
recorded Mon, Jan 13, 2025
About the show
Sponsored by us! Support our work through:
Connect with the hosts
- Michael: @mkennedy@fosstodon.org / @mkennedy.codes (bsky)
- Brian: @brianokken@fosstodon.org / @brianokken.bsky.social
- Show: @pythonbytes@fosstodon.org / @pythonbytes.fm (bsky)
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.
Brian #1: Terminals & Shells
- Ghostty is out
- Started by Mitchel Hashimoto, one of the co-founders of Hashicorp
- “Ghostty is a terminal emulator that differentiates itself by being fast, feature-rich, and native. While there are many excellent terminal emulators available, they all force you to choose between speed, features, or native UIs. Ghostty provides all three.”
- Currently for macOS & Linux (Windows planned)
- Version 1.0.1 released Dec 31, announced in Oct
- Features: cross-platform, windows, tabs, and splits, Themes, Ligatures, …
- Shell Integration: Some Ghostty features require integrating with your shell. Ghostty can automatically inject shell integration for bash, zsh, fish, and elvish.
- Fish is moving to Rust
- “fish is a smart and user-friendly command line shell with clever features that just work, without needing an advanced degree in bash scriptology.”
- “fish 4.0 is a big upgrade. It’s got lots of new features to make using the command line easier and more enjoyable, such as more natural key binding and expanded history search. And under the hood, we’ve rebuilt the foundation in Rust.”
Michael #2: Winloop: An Alternative library for uvloop compatibility with windows
- via Owen Lamont
- An alternative library for uvloop compatibility with windows .
- It always felt disappointing when libuv is available for windows but windows was never compatible with uvloop.
Brian #3: Ruff & uv
- Ruff 0.9.0 has a new 2025 style guide
- f-string formatting improvements
- Now formats expressions interpolated inside f-string curly braces
- Quotes normalized according to project config
- Unnecessary escapes removed
- Examines interpolated expressions to see if splitting the string over multiple lines is ok
- Other changes to, but it’s the f-string improvements I’m excited about.
- f-string formatting improvements
- Python 3.14.0a3 is out, and available with uv
uv python install 3.14 --preview
Michael #4: uv-secure
- by Owen Lamont (yes again :) )
- This tool will scan PyPi dependencies listed in your uv.lock files (or uv generated requirements.txt files) and check for known vulnerabilities listed against those packages and versions in the PyPi json API.
- I don't intend uv-secure to ever create virtual environments or do dependency resolution - the plan is to leave that all to uv since it does that so well and just target lock files and fully pinned and dependency resolved requirements.txt files).
- Works “out of the box” with a requirements.txt from uv pip compile.
Extras
Brian:
- Test & Code Season 2: pytest plugins
- Season 1 was something like 223 episodes over 9.5 years
- Started the summer of 2015
- Send in pytest plugin suggestions to Brian on BlueSky or Mastodon
Michael:
- Episode Deep Dive feature at Talk Python
- Feedback on social media:
- Those deep dives look really handy. <looks at another one> Yes, those ARE really handy! Thanks for doing that.
- wow, yes please! This is awesome.
- Wow, this is amazing. … It helps when going back to check something (without having to re-listen).
- Feedback on social media:
- PyCon Austria at.pycon.org
- Heavy metal status codes
- Beautiful Soup feedback CFA via Sumana Harihareswara
Joke: That's a stupid cup