Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Adam Johnson :django: :python:

@adamchainz@fosstodon.org
mastodon 4.7.3
  • Open on fosstodon.org

:django: #Django blogger and contributor
✍️ Author of three books on Django and Git
🍕 Django London co-organizer
🇬🇧 London / 🇵🇹 Lisbon

1835 Followers
457 Following
50 Posts
Joined November 11, 2022
Website:
https://adamj.eu/
Twitter:
https://twitter.com/adamchainz
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 4w ago

⏳ I just released time-machine 3.5.1 with 13 bug fixes.

Two were reported by humans. The rest came from prompting Claude Fable with just "Find and fix bugs".

None of them had a huge impact (this is a test library, after all), but they were all mistakes. The worst would leave time mocked after a test tearDownClass() failure, which would be pretty hard to debug.

Crazy times. These machines can help us build the highest-quality software, if we want.

#Python

https://time-machine.readthedocs.io/en/latest/changelog.html

fosstodon.org

Fosstodon

12
0
7
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 3w ago

🎁 Introducing django-mcpz: easy peasy MCP servers in Django!

This new package lets you build an MCP server in your Django project, letting LLMs do things on your site on behalf of your users.

https://adamj.eu/tech/2026/09/15/introducing-django-mcpz/

#Django #AI

adamj.eu
3
0
1
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 3w ago

RE: @MrJico@infosec.exchange

Great post on the cost and timing of decisions.

Thanks @GitRon@mastodon.social

> This is why we start with Django. Not because it is the best framework in some abstract sense, but because it comes with a working default for everything that is not business logic...

#Django

infosec.exchange
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 1mo ago

🎲 Just released pytest-randomly 5.0.0

The headline breaking change fixes combination with other test reordering plugins, including pytest-django. Previously, the same seed could produce different test orders between nearly-identical environments. Oops!

Software is never finished: even this 11 year old well-scoped plugin needs the occasional big fix!

#Python #pytest #Django

https://pypi.org/project/pytest-randomly/

fosstodon.org

Fosstodon

4
0
6
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 2mo ago

✍️ New post on using unittest.mock to spy on function calls. 🕵️‍♂️

I recently learned how to use the wraps argument to track all calls to a target function for later assertions. Very useful for testing things like “is caching working?” without having to mock the function completely.

#Python

https://adamj.eu/tech/2026/07/25/python-spy-unittest-mock-wraps/

fosstodon.org

Fosstodon

12
0
6
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 2mo ago
Replying to
@molly0xfff@hachyderm.io heLLM
12
0
2
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 2mo ago

✍️ Django’s release code words, up to the pending Django 6.1 “mélange”.

https://adamj.eu/tech/2026/07/24/django-release-code-words-6.1/

#Python #Django

adamj.eu
9
0
6
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 4w ago

@mahryekuh@hachyderm.io I know the approach has issues like your one, and no I don’t have a fix. I think the pytest-Django features works similarly to what my blog post describes so not sure what you’re seeing is different.

I do think we could overhaul the whole missing variable system to copy from Jinja. Rather than detecting missing variables when named, it substitutes them with a special object that raises an error it logs something when rendered. But I’ve not had time to formalise this proposal.

1
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 2mo ago

What do you see?

5
4
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 2mo ago

✍️ New post on a Python testing technique: inspecting interleaved calls across multiple mocks with attached mocks.

#Python

https://adamj.eu/tech/2026/07/27/python-mock-attach-mock/

fosstodon.org

Fosstodon

3
0
3
1
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago

✍️ New post detailing a workaround I came up with for “leak” beahviour from Python 3.14’s new garbage collection algorithm.

Topical as @hugovk@mastodon.social recently announced that the algorithm will be reverted in the next patch release!

https://adamj.eu/tech/2026/04/20/django-python-3.14-incremental-gc/

#Django #Python

adamj.eu
13
2
9
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 2mo ago

✍️ Introducing django-crawl, a tool for crawling your local Django site, useful for quickly finding what’s broken or performing site-wide checks.

https://adamj.eu/tech/2026/07/22/introducing-django-crawl/

#Django #Python

adamj.eu
3
0
3
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@hugovk The post in question: https://adamj.eu/tech/2019/09/12/how-i-import-pythons-datetime-module/
adamj.eu

Python: how I import the datetime module - Adam Johnson

12
4
8
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago

✍️ New post introducing profiling-explorer, a tool for exploring Python profiling data (pstats files).

Use it with the classic cProfile (now called profiling.tracing) or Python 3.15’s new sampling profiler, Tachyon (profiling.sampling).

https://adamj.eu/tech/2026/04/03/python-introducing-profiling-explorer/

#Python

adamj.eu
10
0
5
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago

I've just done a pass over a client project with deptry, and it worked great for finding unused dependencies!

https://deptry.com/

#Python

deptry.com
9
0
6
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 3mo ago
Replying to
@ngnpope@fosstodon.org @felixxm@fosstodon.org very cool
2
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 4mo ago
Replying to
@adamghill@indieweb.social You’re welcome! ☺️
3
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 2mo ago

RE: @wsvincent@fosstodon.org

🐛 let the bugs crawl to you…

fosstodon.org
1
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago
Replying to
@sethmlarson@mastodon.social @hugovk@mastodon.social Nice one, thanks for the write up I can send to folks.
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@brianokken git merge makes me feel squasy every time
3
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 3mo ago
Replying to
@mahryekuh@hachyderm.io praise be to the wool and to the prince
1
1
1
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago
Replying to
@treyhunner@mastodon.social Please, Trey, I'm supposed to be working! This is too good. Slick, fast, effective…
2
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago
Replying to
@stefan @xarvos The blog post is by Taylor Blau, a long time Git contributor, who works at GitHub. I've emailed him to let him know about the broken link.
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago
Replying to
@bmispelon that’s cool innit
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 8mo ago
Replying to on mastodon.social
@webology@mastodon.social Oh, wow, I had not tracked this either. Oracle being Oracle is not really a surprise, but it's still pretty devastating for the many users of MySQL. I am very glad that we got MariaDB support into Django some time ago, so there should be little friction for migratng Django projects.
4
0
1
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
They have, at least, deleted the post after I sent them an email.
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@FlipperPA well fucking done mate!
2
2
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@davidism Oh, wow…
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@jake prunes do keep you regular :)
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@CodenameTim @markush Perusing the docs is always a good time!
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@felixxm wow, well done and a wish you a smooth continued recovery 💚
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 4mo ago
Replying to
@paulox@fosstodon.org have fun!
1
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago
Replying to
@carlton@chaos.social Living in the fast lane! There is a bit of a security risk here as standard tools (dependably, uv audit, etc) will not alert you about fixes, and any attempt to pull in security fixes will necessarily mean facing extra deprecations and changes “on the spot”. Probably fine for elite teams like yours, though 😉
1
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 8mo ago
Replying to
@hugovk @pillow nice one!
2
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@danzin also that’s a helluva write up, bravo!
1
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@kojoidrissa @hugovk Did you check the alt text on the image? 😉
1
2
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 7mo ago
Replying to
@jake excite
1
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 8mo ago
Replying to
@veldakiara great picture of the gherkin, and a varied set of links!
1
2
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 9mo ago
Replying to
@henryiii@fosstodon.org Impressive. Most impressive.
1
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago
Replying to
@bmispelon looks cosy What kind of car are you driving?
0
2
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 5mo ago
Replying to
@jake Have fun! The FOMO on my end is real…
0
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 3mo ago
Replying to
@mahryekuh@hachyderm.io https://eu.woolandprince.com/
eu.woolandprince.com
0
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 8mo ago
Replying to
@davidsmith@fosstodon.org link? :)
0
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@CodenameTim @markush did you use it?
0
3
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@pamelafox@fosstodon.org I think it comes from models being tuned to minimize the amount of edits or context read 🤷
0
1
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 6mo ago
Replying to
@danzin Sweet, looking now!
0
0
0
0
Open post
Adam Johnson :django: :python: @adamchainz@fosstodon.org
· 7mo ago
Replying to
@andrewrk flex
0
0
0
0
Back
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

I2P eepsite

j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

Platform

  • Email
  • Chat
  • Timeline
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ
  • Lite (no JS)

Legal

  • Terms of Service
  • Privacy Policy
  • Transparency Report
  • Report Abuse
  • Warrant Canary
  • VPN Policy

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 02:03:29 UTC