Should we stop recommending pylibmc?

The caching docs recommend using pylibmc or pymemcache for caching using memcached.

However, there’s an exception swallowed on startup under Python 3.13 that has been fixed since July 2024, but there hasn’t been a pylibmc release since 2022.

Granted, the situtation with pymemcache isn’t significantly better (no releases in 3 years either, but at least their CI does target py313, albeit with a version of gevent that is too old to compile in the test requirements).

So I have to wonder out loud: should we stop recommending pylibmc without better maintenance?

3 Likes

+1 for me, definitely not recommending anything that is not touched for a few years.

I’ve never used memcached though. I’m wondering if there are any other alternatives for python clients?

1 Like

python-memcached has a release supporting 3.12 from Jan 2024, and their CI also tests against 3.13.

1 Like

Reading up on the history, the Django backend for python-memcached was deprecated in Django 3.2 and removed in 4.1. It’s unfortunate that now it might be in one of the better maintenance postures. Maybe that counsels against deprecating anything else.

We should do something about referencing that library in our docs. An alternative is to reference pylibmc2 which is a new fork. The person who created it is the one who is offering to help maintain pylibmc. They just haven’t heard back/gotten access.

2 Likes

Another alternative would be to “deprioritize” or “de-emphasize” the use of memcached as the cacheing engine, preferring instead to recommend one of the other options.

2 Likes