Topics covered in this episode:
Watch on YouTube
About the show
Connect with the hosts
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: rumdl - A Markdown Linter written in Rust
- via Owen Lamont
- Supports toml file config settings
- Install via uv tool install rumdl.
- ⚡️ Built for speed with Rust - significantly faster than alternatives
- 🔍 54 lint rules covering common Markdown issues
- 🛠️ Automatic fixing with
-fix
for most rules
- 📦 Zero dependencies - single binary with no runtime requirements
- 🔧 Highly configurable with TOML-based config files
- 🌐 Multiple installation options - Rust, Python, standalone binaries
- 🐍 Installable via pip for Python users
- 📏 Modern CLI with detailed error reporting
- 🔄 CI/CD friendly with non-zero exit code on errors
Brian #2: Coverage 7.10.0: patch
Michael #3: aioboto3
- via Pat Decker
- Wrapper to use boto3 resources with the aiobotocore async backend
- aiobotocore allows you to use near enough all of the boto3 client commands in an async manner just by prefixing the command with
await
.
- With aioboto3 you can now use the higher level APIs provided by boto3 in an asynchronous manner.
Brian #4: You might not need a Python class
- Adam Grant
- This is an important periodic reminder to everyone coming into Python from other languages.
- Many other languages lean on classes a lot more than we need to in Python
- Adams suggestions
- Simple Data Containers: Use Named Tuples or Data Classes
- Stateless Utility Functions: Just Use Functions
- Grouping Constants: Use Modules
- Managing State with Simple Structures: Use Dictionaries or Lists
- Simple One-off Operations: Use Lambdas or Comprehensions
- I’ll add “just use functions”
- Avoiding Complexity: Built-in Libraries
- When You Actually Need a Class
- I’ll add
- You probably don’t
- If you think you do, ask a friend. Friends don’t let friends create extraneous classes in Python.
- If you think your case is an exception, it probably isn’t
- If you think dataclasses aren’t right for you, check out attrs
Extras
Brian:
Michael:
Joke: Default text editor