Topics covered in this episode:
Watch on YouTubeAbout the show
Sponsored by us! Support our work through:
Brian #1: Better Python tests with inline-snapshot
- Alex Hall, on Pydantic blog
- Great for testing complex data structures
Allows you to write a test like this:
frominline_snapshotimportsnapshot
deftest_user_creation():
user=create_user(id=123,name="test_user")
assertuser.dict()== snapshot({})
Then run pytest --inline-snapshot=fix
And the library updates the test source code to look like this:
deftest_user_creation():
user=create_user(id=123,name="test_user")
assertuser.dict()== snapshot({
"id":123,
"name":"test_user",
"status":"active"
})
Now, when you run the code without “fix” the collected data is used for comparison
- Awesome to be able to visually inspect the test data right there in the test code.
- Projects mentioned
Michael #2: jolt Battery intelligence for your laptop
- Support for both macOS and Linux
- Battery Status — Charge percentage, time remaining, health, and cycle count
- Power Monitoring — System power draw with CPU/GPU breakdown
- Process Tracking — Processes sorted by energy impact with color-coded severity
- Historical Graphs — Track battery and power trends over time
- Themes — 10+ built-in themes with dark/light auto-detection
- Background Daemon — Collect historical data even when the TUI isn't running
- Process Management — Kill energy-hungry processes directly
Brian #3: Markdown code formatting with ruff
- Suggested by Matthias Schoettle
ruff can now format code within markdown files- Will format valid Python code in code blocks marked with
python, py, python3 or py3. - Also recognizes
pyi as Python type stub files. - Includes the ability to turn off formatting with comment
[HTML_REMOVED] , [HTML_REMOVED] blocks. - Requires preview mode
[tool.ruff.lint]
preview=true
Michael #4: act - run your GitHub actions locally
- Run your GitHub Actions locally! Why would you want to do this? Two reasons:
- Fast Feedback - Rather than having to commit/push every time you want to test out the changes you are making to your
.github/workflows/ files (or for any changes to embedded GitHub actions), you can use act to run the actions locally. The environment variables and filesystem are all configured to match what GitHub provides. - Local Task Runner - I love make. However, I also hate repeating myself. With
act, you can use the GitHub Actions defined in your .github/workflows/ to replace your Makefile!
- When you run
act it reads in your GitHub Actions from .github/workflows/ and determines the set of actions that need to be run.- Uses the Docker API to either pull or build the necessary images, as defined in your workflow files and finally determines the execution path based on the dependencies that were defined.
- Once it has the execution path, it then uses the Docker API to run containers for each action based on the images prepared earlier.
- The environment variables and filesystem are all configured to match what GitHub provides.
Extras
Michael:
Joke: Plug ‘n Paste