Brett Cannon
@snarky.ca
#Python core developer who also works on packaging; works on Python stuff at #Microsoft (although this is a personal account). Proudly #Canadian.
Reposted by Brett Cannon
EuroPython 2025 — Conference Opening 🎉
YouTube video by EuroPython Conference
www.youtube.com
November 5, 2025 at 11:42 PM
For anyone who is a Feedbin user like @hynek , I created a small project at github.com/brettcannon/... to help remove duplicate feed entries across your feeds.
GitHub - brettcannon/feedbin-deduplication: Deduplicate unread entries from your Feedbin account
Deduplicate unread entries from your Feedbin account - brettcannon/feedbin-deduplication
github.com
November 5, 2025 at 6:47 PM
For anyone who is a Feedbin user like @hynek , I created a small project at github.com/brettcannon/... to help remove duplicate feed entries across your feeds.
Reposted by Brett Cannon
The Steering Council has accepted PEP 810 (explicit lazy imports) for Python 3.15!
discuss.python.org/t/pep-810-ex...
#Python #PEP810 #LazyImports #lazy #Python315
discuss.python.org/t/pep-810-ex...
#Python #PEP810 #LazyImports #lazy #Python315
PEP 810: Explicit lazy imports
Dear PEP 810 authors. The Steering Council is happy to unanimously[1] accept “PEP 810, Explicit lazy imports”. Congratulations! We appreciate the way you were able to build on and improve the previ...
discuss.python.org
November 3, 2025 at 4:29 PM
The Steering Council has accepted PEP 810 (explicit lazy imports) for Python 3.15!
discuss.python.org/t/pep-810-ex...
#Python #PEP810 #LazyImports #lazy #Python315
discuss.python.org/t/pep-810-ex...
#Python #PEP810 #LazyImports #lazy #Python315
Reposted by Brett Cannon
Glamour UK Magazine made 9 trans women as their collective Women of the Year
Instead of offering congratulations, JK Rowling naturally tried insulting them instead
Glamour’s response, however, is priceless
Instead of offering congratulations, JK Rowling naturally tried insulting them instead
Glamour’s response, however, is priceless
October 31, 2025 at 9:05 PM
Glamour UK Magazine made 9 trans women as their collective Women of the Year
Instead of offering congratulations, JK Rowling naturally tried insulting them instead
Glamour’s response, however, is priceless
Instead of offering congratulations, JK Rowling naturally tried insulting them instead
Glamour’s response, however, is priceless
The final release of Python 3.9 is out!
discuss.python.org/t/the-final-...
May you all enjoy using the features added in Python 3.10 if that's now your oldest version. 😁
docs.python.org/3/whatsnew/3...
discuss.python.org/t/the-final-...
May you all enjoy using the features added in Python 3.10 if that's now your oldest version. 😁
docs.python.org/3/whatsnew/3...
The final Python 3.9 security fix release is out!
Python 3.9.25 is available now! If you’re still using that, grab the sources and build the update as there’s some final fixes: Security content (low severity) There are no CVEs for those, and so ot...
discuss.python.org
October 31, 2025 at 11:20 PM
The final release of Python 3.9 is out!
discuss.python.org/t/the-final-...
May you all enjoy using the features added in Python 3.10 if that's now your oldest version. 😁
docs.python.org/3/whatsnew/3...
discuss.python.org/t/the-final-...
May you all enjoy using the features added in Python 3.10 if that's now your oldest version. 😁
docs.python.org/3/whatsnew/3...
Reposted by Brett Cannon
It's true: I've joined @glyph, @offby1, @amethyst and @petrillic in gift-matching donations to @ThePSF
I've done gift matching before, because I think the PSF is doing tremendous work and I want more people to realize that. I was planning on doing gift matching for the end-of-year, but this way […]
I've done gift matching before, because I think the PSF is doing tremendous work and I want more people to realize that. I was planning on doing gift matching for the end-of-year, but this way […]
Original post on social.coop
social.coop
October 31, 2025 at 2:59 PM
It's true: I've joined @glyph, @offby1, @amethyst and @petrillic in gift-matching donations to @ThePSF
I've done gift matching before, because I think the PSF is doing tremendous work and I want more people to realize that. I was planning on doing gift matching for the end-of-year, but this way […]
I've done gift matching before, because I think the PSF is doing tremendous work and I want more people to realize that. I was planning on doing gift matching for the end-of-year, but this way […]
Reposted by Brett Cannon
do i have any connections with the linux foundation following me? if so, can you dm me? :)
October 31, 2025 at 6:32 PM
do i have any connections with the linux foundation following me? if so, can you dm me? :)
Reposted by Brett Cannon
This week, the #python Software Foundation rejected a $1.5MM NSF grant, due to a requirement that the PSF abandon diversity work.
So I joined forces with Python folks (@offby1, @petrillic, @amethyst) and we're matching up to $12,000 of donations to the PSF. 🧵
So I joined forces with Python folks (@offby1, @petrillic, @amethyst) and we're matching up to $12,000 of donations to the PSF. 🧵
October 29, 2025 at 9:26 PM
This week, the #python Software Foundation rejected a $1.5MM NSF grant, due to a requirement that the PSF abandon diversity work.
So I joined forces with Python folks (@offby1, @petrillic, @amethyst) and we're matching up to $12,000 of donations to the PSF. 🧵
So I joined forces with Python folks (@offby1, @petrillic, @amethyst) and we're matching up to $12,000 of donations to the PSF. 🧵
Reposted by Brett Cannon
Looking to make a CPython contribution? I'm going to start working on maintaining a "Good First Issue" board for argparse.
If you're interested, have a look and let me know on the GitHub issue if you have any questions. Happy to help 🤝🏻!
github.com/orgs/python/...
If you're interested, have a look and let me know on the GitHub issue if you have any questions. Happy to help 🤝🏻!
github.com/orgs/python/...
Argparse issues • python
Argparse issues
github.com
October 28, 2025 at 2:49 AM
Looking to make a CPython contribution? I'm going to start working on maintaining a "Good First Issue" board for argparse.
If you're interested, have a look and let me know on the GitHub issue if you have any questions. Happy to help 🤝🏻!
github.com/orgs/python/...
If you're interested, have a look and let me know on the GitHub issue if you have any questions. Happy to help 🤝🏻!
github.com/orgs/python/...
Maybe someone who knows the Bluesky APIs and AT protocol can tell me if I'm wrong, but I haven't found a way to programmatically update my muted words list or mute a thread. Am I missing something?
October 28, 2025 at 12:11 AM
Maybe someone who knows the Bluesky APIs and AT protocol can tell me if I'm wrong, but I haven't found a way to programmatically update my muted words list or mute a thread. Am I missing something?
Reposted by Brett Cannon
They say "don't read the comments" but I think the ratio of good vs bad comments in this thread makes it very, very worthwhile.
Also, the *reach* has been amazing. I've seen reposts from people I follow for very non-Python reasons (not mutuals!), who as far as I know have never posted or […]
Also, the *reach* has been amazing. I've seen reposts from people I follow for very non-Python reasons (not mutuals!), who as far as I know have never posted or […]
Original post on social.coop
social.coop
October 27, 2025 at 9:35 PM
They say "don't read the comments" but I think the ratio of good vs bad comments in this thread makes it very, very worthwhile.
Also, the *reach* has been amazing. I've seen reposts from people I follow for very non-Python reasons (not mutuals!), who as far as I know have never posted or […]
Also, the *reach* has been amazing. I've seen reposts from people I follow for very non-Python reasons (not mutuals!), who as far as I know have never posted or […]
Reposted by Brett Cannon
TLDR; The PSF has made the decision to put our community and our shared diversity, equity, and inclusion values ahead of seeking $1.5M in new revenue. Please read and share. pyfound.blogspot.com/2025/10/NSF-...
🧵
🧵
The official home of the Python Programming Language
www.python.org
October 27, 2025 at 2:47 PM
TLDR; The PSF has made the decision to put our community and our shared diversity, equity, and inclusion values ahead of seeking $1.5M in new revenue. Please read and share. pyfound.blogspot.com/2025/10/NSF-...
🧵
🧵
Reposted by Brett Cannon
We are still looking for feedback on tsgo, but it is worth calling out we expect some type-checking changes that you may need to adapt to.
The native previews are easy to grab from npm, and are published nightly to try out!
www.npmjs.com/package/@typ...
The native previews are easy to grab from npm, and are published nightly to try out!
www.npmjs.com/package/@typ...
October 24, 2025 at 12:22 AM
We are still looking for feedback on tsgo, but it is worth calling out we expect some type-checking changes that you may need to adapt to.
The native previews are easy to grab from npm, and are published nightly to try out!
www.npmjs.com/package/@typ...
The native previews are easy to grab from npm, and are published nightly to try out!
www.npmjs.com/package/@typ...
Reposted by Brett Cannon
Gleam is entirely funded by sponsorship, and it has dropped over the last 3 months.
If you like Gleam please sponsor, or ask your employer to sponsor. Every contribution is meaningful, no matter how small.
Thank you so much! 💖
github.com/sponsors/gle...
If you like Gleam please sponsor, or ask your employer to sponsor. Every contribution is meaningful, no matter how small.
Thank you so much! 💖
github.com/sponsors/gle...
Sponsor @gleam-lang on GitHub Sponsors
Support friendly, fun, and scalable type-safe programming with Gleam!
github.com
October 24, 2025 at 9:47 AM
Gleam is entirely funded by sponsorship, and it has dropped over the last 3 months.
If you like Gleam please sponsor, or ask your employer to sponsor. Every contribution is meaningful, no matter how small.
Thank you so much! 💖
github.com/sponsors/gle...
If you like Gleam please sponsor, or ask your employer to sponsor. Every contribution is meaningful, no matter how small.
Thank you so much! 💖
github.com/sponsors/gle...
Reposted by Brett Cannon
Here's @savannah.dev's first feature in Typer 😎
Suggest commands on error 🙋
Available in Typer 0.20.0 just released 🎉
Read the new docs: typer.tiangolo.com/tutorial/com...
Suggest commands on error 🙋
Available in Typer 0.20.0 just released 🎉
Read the new docs: typer.tiangolo.com/tutorial/com...
October 20, 2025 at 5:14 PM
Here's @savannah.dev's first feature in Typer 😎
Suggest commands on error 🙋
Available in Typer 0.20.0 just released 🎉
Read the new docs: typer.tiangolo.com/tutorial/com...
Suggest commands on error 🙋
Available in Typer 0.20.0 just released 🎉
Read the new docs: typer.tiangolo.com/tutorial/com...
Reposted by Brett Cannon
Something isn't done yet? It can't be because that thing is really hard, maintainer. No, it must be because you don't want to do it.
October 20, 2025 at 6:43 PM
Something isn't done yet? It can't be because that thing is really hard, maintainer. No, it must be because you don't want to do it.
Reposted by Brett Cannon
Gentle reminder that if you’re stuck in the Adobe Creative Cloud ecosystem for whatever reason, you can start the cancellation process, select “too expensive” as your cancellation reason, and there should be a 50% off rate on the next screen.
October 21, 2025 at 7:05 PM
Gentle reminder that if you’re stuck in the Adobe Creative Cloud ecosystem for whatever reason, you can start the cancellation process, select “too expensive” as your cancellation reason, and there should be a 50% off rate on the next screen.
In case you prefer text over video, the blog post version of my #EuroPython keynote about why it took 4 years to get a lock files specification for #Python is now up at snarky.ca/why-it-took-... .
Why it took 4 years to get a lock files specification
(This is the blog post version of my keynote from EuroPython 2025 in Prague, Czechia.)
We now have a lock file format specification. That might not sound like a big deal, but for me it took 4 years o...
snarky.ca
October 11, 2025 at 3:48 AM
In case you prefer text over video, the blog post version of my #EuroPython keynote about why it took 4 years to get a lock files specification for #Python is now up at snarky.ca/why-it-took-... .
Reposted by Brett Cannon
In case any other horror movie fans want to lock in with me for the rest of the month, I've put together a list of movies I'm watching/rewatching.
letterboxd.com/seaquenched/...
letterboxd.com/seaquenched/...
Savannah's 31 Days of Halloween 2025
A list of 98 films compiled on Letterboxd, including You Won't Be Alone (2022), The Witch (2015), The Wicker Man (1973), A Dark Song (2016) and A Nightmare on Elm Street (1984).
letterboxd.com
October 5, 2025 at 9:34 PM
In case any other horror movie fans want to lock in with me for the rest of the month, I've put together a list of movies I'm watching/rewatching.
letterboxd.com/seaquenched/...
letterboxd.com/seaquenched/...
Reposted by Brett Cannon
Obviously @hugovk.dev did a lot of work on 3.14, so I also pressed a few buttons and released 3.13.8 😅
discuss.python.org/t/3-13-8-has...
#Python #Python313 #release
discuss.python.org/t/3-13-8-has...
#Python #Python313 #release
October 7, 2025 at 2:39 PM
Obviously @hugovk.dev did a lot of work on 3.14, so I also pressed a few buttons and released 3.13.8 😅
discuss.python.org/t/3-13-8-has...
#Python #Python313 #release
discuss.python.org/t/3-13-8-has...
#Python #Python313 #release
Reposted by Brett Cannon
Just released! 🚀
Please install and enjoy Python 3.14! 🥧
discuss.python.org/t/python-3-1...
#Python #Python314 #release
Please install and enjoy Python 3.14! 🥧
discuss.python.org/t/python-3-1...
#Python #Python314 #release
October 7, 2025 at 2:29 PM
Just released! 🚀
Please install and enjoy Python 3.14! 🥧
discuss.python.org/t/python-3-1...
#Python #Python314 #release
Please install and enjoy Python 3.14! 🥧
discuss.python.org/t/python-3-1...
#Python #Python314 #release
After coming back from vacation, I need to look up what it takes to use AI to hide the US politics posts in my feed so I actually want to come here.
October 3, 2025 at 10:20 PM
After coming back from vacation, I need to look up what it takes to use AI to hide the US politics posts in my feed so I actually want to come here.
Reposted by Brett Cannon
Did you know Gleam has a playground? ⭐
Thanks to it, you can try Gleam directly in your browser, no installation needed. Perfect for exploring the language, testing snippets or sharing examples with others.
Give it a try: playground.gleam.run
Thanks to it, you can try Gleam directly in your browser, no installation needed. Perfect for exploring the language, testing snippets or sharing examples with others.
Give it a try: playground.gleam.run
The Gleam Playground
Write, run, and share Gleam code in your browser: a playground for the Gleam programming language.
playground.gleam.run
October 3, 2025 at 10:50 AM
Did you know Gleam has a playground? ⭐
Thanks to it, you can try Gleam directly in your browser, no installation needed. Perfect for exploring the language, testing snippets or sharing examples with others.
Give it a try: playground.gleam.run
Thanks to it, you can try Gleam directly in your browser, no installation needed. Perfect for exploring the language, testing snippets or sharing examples with others.
Give it a try: playground.gleam.run
Reposted by Brett Cannon
Let me post a *non*-subskeet for once... We made a thing!
discuss.python.org/t/pep-810-ex...
#Python #PEP
discuss.python.org/t/pep-810-ex...
#Python #PEP
PEP 810: Explicit lazy imports
👋 Hi everyone, We are very exited to share with you PEP 810: Explicit lazy imports: We’re proposing an opt-in lazy import syntax that defers module loading until first use, aiming for faster startup,...
discuss.python.org
October 3, 2025 at 12:04 PM
Let me post a *non*-subskeet for once... We made a thing!
discuss.python.org/t/pep-810-ex...
#Python #PEP
discuss.python.org/t/pep-810-ex...
#Python #PEP
Reposted by Brett Cannon
How does a package get installed? Why is Python packaging hard? And why it took 4 years to get a lock files specification? Find out in Brett's @snarky.ca keynote, now available on our YouTube channel.
September 22, 2025 at 11:02 AM
How does a package get installed? Why is Python packaging hard? And why it took 4 years to get a lock files specification? Find out in Brett's @snarky.ca keynote, now available on our YouTube channel.