#357: Python 3.7 EOLed, We Hadn't Noticed
Published Tue, Oct 17, 2023,
recorded Tue, Oct 17, 2023
About the show
Sponsored by us! Support our work through:
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 Tuesdays at 11am PT. Older video versions available there too.
Michael #1: QuickMacHotKey
- This is a set of minimal Python bindings for the undocumented macOS framework APIs that even the most modern, sandboxing-friendly shortcut-binding frameworks use under the hood for actually binding global hotkeys.
- Thinking of updating my urlify menubar app.
Brian #2: Things I’ve learned about building CLI tools in Python
- Simon Willison
- A cool Cookiecutter starter project, if you like Click.
- Conventions and consistency in commands, arguments, options, and flags.
- The importance of versioning. Your CLI is an API.
- Include examples in
--help
- Include
--help
in documentation. - Aside, Typer is also cool, and is built on Click.
Michael #3: Warp Terminal (referral code)
- Really nice reimagining of the terminal
- Currently macOS only but will be Linux, then Windows
- New command section & output section mode
- Blocks can be navigated and searched as a single thing (even if it’s 1,000 lines of output)
- CTRL+R gives a nice history like McFly I’ve discussed before
- Completions into popular CLIs (i.e. git)
- Edit like an editor (even you VIM people 🙂 )
- Has AI built in too
- Free for individuals
- If you’re going to give it a try, use my referral I guess?
Brian #4: Python 3.7 EOLed, but I hadn’t noticed
- EOL was June 27
- I’m still supporting 3.7, as are most projects I work with. But I’m not sure when that will change.
- VS Code is deprecating 3.7 support
- Why I’m ok with supporting 3.7 for some projects
- dataclasses came in with 3.7
from __ future__ import annotations
allows the use of union types withX|Y
.- example
- I’ll probably drop 3.7 as my dependent projects drop it.
Extras
Brian:
- pytest-param-scope is an in progress hack to workaround this missing scope.
- Runs setup before any param test cases, and teardown after the last one.
- Stop defining people by what they’re not: on “non-code contributors” - Josh Simmons
Michael:
- OpenAI has unveiled the Beta version of its Python SDK (via Mark Little)
- StackOverflow lays off 28% of its staff
- Weird follow up of their “what to do if you’re laid off” post from 6 months ago?
- Is AI eating into their traffic?
- ArsTechnica has thoughts too
Joke: