[Django] #36153: Remove or replace unmantained pylibmc package from Django dependencies

8 views
Skip to first unread message

Django

unread,
Jan 28, 2025, 10:32:13 AM1/28/25
to django-...@googlegroups.com
#36153: Remove or replace unmantained pylibmc package from Django dependencies
-------------------------------------+-------------------------------------
Reporter: Paolo Melchiorre | Type: Bug
Status: new | Component: Core
| (Cache system)
Version: dev | Severity: Normal
Keywords: memcached, pylibmc, | Triage Stage:
package | Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
As we discussed in the recent PR
[https://github.com/django/django/pull/19077 Refs #36005 -- Bumped minimum
supported versions of 3rd-party packages.] `pylibmc` has not a recent
release with wheel for Python 3.12.

It also created issue for `psycopg` testing pipeline
[https://github.com/psycopg/psycopg/issues/999 Hard to satisfy
dependencies in Django tests]

Apart from that it seem pretty unmaintained. Would it be possible to
replace it with something better maintained or remove it?
--
Ticket URL: <https://code.djangoproject.com/ticket/36153>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Jan 28, 2025, 12:02:35 PM1/28/25
to django-...@googlegroups.com
#36153: Remove or replace unmantained pylibmc package from Django dependencies
-------------------------------------+-------------------------------------
Reporter: Paolo Melchiorre | Owner: (none)
Type: Bug | Status: new
Component: Core (Cache system) | Version: dev
Severity: Normal | Resolution:
Keywords: memcached, pylibmc, | Triage Stage:
package | Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce):

* stage: Unreviewed => Someday/Maybe

Comment:

These are my initial thoughts:
* I can see in 19c4052f98e5dc4fe9d7edd7125df6a66efbd79f as part of adding
Python 3.12 support, we install `libmemcached-dev`. This doesn't appear to
be documented and we possibly need to document this.
* I think the decision to remove `pylibmc` is a decision to deprecate
`PyLibMCCache`, this is still used
[https://github.com/search?q=%22django.core.cache.backends.memcached.PyLibMCCache%22+language%3APython&type=code
quite a bit] from what I can tell. I can't imagine that would be a popular
decision

Generally, I think this needs quite a lot of input before a decision can
be made (and probably a Django forum discussion).
Django 6.0 is due to be released until December so there's quite some time
for a release to `pylibmc` to be issued. Will mark as `Someday/Maybe` to
revisit closer to that date.
--
Ticket URL: <https://code.djangoproject.com/ticket/36153#comment:1>

Django

unread,
Jan 29, 2025, 5:30:53 AM1/29/25
to django-...@googlegroups.com
#36153: Remove or replace unmantained pylibmc package from Django dependencies
-------------------------------------+-------------------------------------
Reporter: Paolo Melchiorre | Owner: (none)
Type: Bug | Status: new
Component: Core (Cache system) | Version: dev
Severity: Normal | Resolution:
Keywords: memcached, pylibmc, | Triage Stage:
package | Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Paolo Melchiorre):

Replying to [comment:1 Sarah Boyce]:
> * I can see in 19c4052f98e5dc4fe9d7edd7125df6a66efbd79f as part of
adding Python 3.12 support, we install `libmemcached-dev`. This doesn't
appear to be documented and we possibly need to document this.

Yes, that's the same advice I gave to Daniele Varrazzo in the psycopg
issue: https://github.com/psycopg/psycopg/issues/999

> * I think the decision to remove `pylibmc` is a decision to deprecate
`PyLibMCCache`, this is still used
[https://github.com/search?q=%22django.core.cache.backends.memcached.PyLibMCCache%22+language%3APython&type=code
quite a bit] from what I can tell. I can't imagine that would be a popular
decision

I can image it, but the project seem abandoned and we remove dependencies
in the past after a period of deprecation.

> Generally, I think this needs quite a lot of input before a decision can
be made (and probably a Django forum discussion).

Ok, I can open a thread in the forum if you think it will help having more
feedback on it.

> Django 6.0 is due to be released until December so there's quite some
time for a release to `pylibmc` to be issued. Will mark as `Someday/Maybe`
to revisit closer to that date.

I'm a bit pessimistic on that point because Daniele itself opened an issue
to request a new pylibmc release compatible with Python 3.12 long time
ago without any answer:
https://github.com/lericson/pylibmc/issues/288
--
Ticket URL: <https://code.djangoproject.com/ticket/36153#comment:2>

Django

unread,
Jan 10, 2026, 11:28:05 AM (5 days ago) Jan 10
to django-...@googlegroups.com
#36153: Remove or replace unmantained pylibmc package from Django dependencies
-------------------------------------+-------------------------------------
Reporter: Paolo Melchiorre | Owner: Moksha
| Choksi
Type: Bug | Status: assigned
Component: Core (Cache system) | Version: dev
Severity: Normal | Resolution:
Keywords: memcached, pylibmc, | Triage Stage:
package | Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Moksha Choksi):

* owner: (none) => Moksha Choksi
* status: new => assigned

--
Ticket URL: <https://code.djangoproject.com/ticket/36153#comment:3>

Django

unread,
Jan 12, 2026, 8:52:37 AM (3 days ago) Jan 12
to django-...@googlegroups.com
#36153: Remove or replace unmantained pylibmc package from Django dependencies
-------------------------------------+-------------------------------------
Reporter: Paolo Melchiorre | Owner: Moksha
| Choksi
Type: Bug | Status: assigned
Component: Core (Cache system) | Version: dev
Severity: Normal | Resolution:
Keywords: memcached, pylibmc, | Triage Stage:
package | Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Jacob Walls):

* stage: Someday/Maybe => Unreviewed

--
Ticket URL: <https://code.djangoproject.com/ticket/36153#comment:4>

Django

unread,
Jan 14, 2026, 10:00:10 AM (20 hours ago) Jan 14
to django-...@googlegroups.com
#36153: Remove or replace unmantained pylibmc package from Django dependencies
-------------------------------------+-------------------------------------
Reporter: Paolo Melchiorre | Owner: (none)
Type: Bug | Status: new
Component: Core (Cache system) | Version: dev
Severity: Normal | Resolution:
Keywords: memcached, pylibmc, | Triage Stage:
package | Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Natalia Bidart):

* owner: Moksha Choksi => (none)
* status: assigned => new

Comment:

Replying to [comment:3 Moksha Choksi]:

Hey Moksha,

This ticket is not yet accepted so I would recommend focusing on accepted
tickets only. There are plenty to work on. Thank you!
--
Ticket URL: <https://code.djangoproject.com/ticket/36153#comment:5>
Reply all
Reply to author
Forward
0 new messages