Setuptools version 78.0.1 breaks install of many packages

by computronuson 3/24/25, 4:00 PMwith 12 comments
by lopuhinon 3/24/25, 5:49 PM

Crazy amount of breakage...

Here is a PR which reverts this: https://github.com/pypa/setuptools/pull/4911

Interesting that maintainers of setuptools still only postpone the depreciation date for a year, so we can probably expect more issues like this in the future.

by andenacitellion 3/24/25, 6:41 PM

From what I gather this has basically derailed CI for the morning for the majority of places out there. Only workaround is pinning build-time dependencies, which only pip and uv seem to let you do well. Poetry is SOL / heavily cache-dependent as to whether it works.

by andenacitellion 3/24/25, 8:20 PM

They yanked the relevant change and pushed a new one with a revert, this is now resolved

Took them seemingly forever to do. The reversion, sure, that might take a bit to proof, but the yank should have been done way sooner

by brtkwron 3/24/25, 5:26 PM

Probably 78.0.0 as well which was released yesterday. The diff between 78.0.0 and 78.0.1 appears to be no-op from user perspective https://github.com/pypa/setuptools/compare/v78.0.0...v78.0.1

by computronuson 3/24/25, 4:02 PM

The original report is just for ansible-vault, but comments indicate widespread effects, hence the altered title here.

by jarbooton 3/24/25, 7:43 PM

The current approach of the maintainers terrifies me -- de facto standards should be respected. Even if something is invalid like `description-file`, if it is present in 12k repos it should raise a warning and not break anything.

In the rationale for this that I can find [1], a maintainer says the following:

> I'm inclined to say we should do it, even though it will cause some disruption.

They also say an alternative is to "accept the status quo", which is exactily what they should be doing. I can't find maintainers giving a compelling reason not to support this status quo of `long-description` as an alias to `long_description` besides "simplifying code." Code simplification should never take precedence over massive breakage of compatibility.

[1] https://github.com/pypa/setuptools/pull/4870#pullrequestrevi...