PLAY PODCASTS
#474 Astral to join OpenAI
Episode 474

#474 Astral to join OpenAI

Python Bytes · Michael Kennedy and Brian Okken

March 23, 202645m 33s

Audio is streamed directly from the publisher (pythonbytes.fm) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.

Show Notes

Topics covered in this episode:
Watch on YouTube

About the show

Sponsored by us! Support our work through:

Brian #1: Starlette 1.0.0

  • As a reminder, Starlette is the foundation for FastAPI
  • Starlette 1.0 is here! - fun blog post from Marcello Trylesinski
  • “The changes in 1.0 were limited to removing old deprecated code that had been on the way out for years, along with a few bug fixes. From now on we'll follow SemVer strictly.”
  • Fun comment in the “What’s next?” section:
    • “Oh, and Sebastián, Starlette is now out of your way to release FastAPI 1.0. 😉”
  • Related: Experimenting with Starlette 1.0 with Claude skills
    • Simon Willison
    • example of the new lifespan mechanism, very pytest fixture-like
      @contextlib.asynccontextmanager
      async def lifespan(app):
      async with some_async_resource():
          print("Run at startup!")
          yield
          print("Run on shutdown!")
      app = Starlette(
      routes=routes,
      lifespan=lifespan
      )
      

Michael #2: Astral to join OpenAI

  • via John Hagen, thanks
  • Astral has agreed to join OpenAI as part of the Codex team
  • Congrats Charlie and team
  • Seems like **Ruff** and uv play an important roll.
  • Perhaps ty holds the most value to directly boost Codex (understanding codebases for the AI)
  • All that said, these were open source so there is way more to the motivations than just using the tools.
  • After joining the Codex team, we'll continue building our open source tools.
  • Simon Willison has thoughts
  • discuss.python.org also has thoughts
  • The Ars Technica article has interesting comments too
  • It’s probably the death pyx
    • Simon points out “pyx is notably absent from both the Astral and OpenAI announcement posts.”

Brian #3: uv audit

  • Submitted by Owen Lemont
  • Pieces of uv audit have been trickling in. uv 0.10.12 exposes it to the cli help
  • Here’s the roadmap for uv audit
  • I tried it out on a package and found a security issue with a dependency
    • not of the project, but of the testing dependencies
    • but only if using Python < 3.10, even though I’m using 3.14
  • Kinda cool
  • Looks like it generates a uv.lock file, which includes dependencies for all project supported versions of Python and systems, which is a very thorough way to check for vulnerabilities.
  • But also, maybe some pointers on how to fix the problem would be good. No --fix yet.

Michael #4: Fire and forget (or never) with Python’s asyncio

  • Python’s asyncio.create_task() can silently garbage collect your fire-and-forget tasks starting in Python 3.12
  • Formerly fine async code can now stop working, so heads up
  • The fix? Use a set to upgrade to a strong ref and a callback to remove it
  • Is there a chance of task-based memory leaks? Yeah, maybe.

Extras

Brian:

Joke: We now have translation services

Topics

pythonpycharmpython3softwareprogrammingwebweb developmentdeveloperidepodcastopen sourcenewsheadlineseducationsoftware developerdata sciencesciencecloud computing