TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Atomicwrites' old versions have been purged from PyPI

46 pointsby afturneralmost 3 years ago

8 comments

AngusHalmost 3 years ago
The whole package has now been deprecated by the maintainer:<p>&#x27;PyPI wants me to enable 2FA just because I maintain this package, and both that and the mess resulting from a stunt of mine, I thought it&#x27;d be a good time to deprecate this package. Python 3 has os.replace and os.rename which probably do well enough of a job for most usecases.&#x27;<p><a href="https:&#x2F;&#x2F;github.com&#x2F;untitaker&#x2F;python-atomicwrites" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;untitaker&#x2F;python-atomicwrites</a><p>Edit:<p>From the bug report<p>&#x27;I decided to deprecate this package. While I do regret to have deleted the package and did end up enabling 2FA, I think PyPI&#x27;s sudden change in rules and bizarre behavior wrt package deletion doesn&#x27;t make it worth my time to maintain Python software of this popularity for free. I&#x27;d rather just write code for fun and only worry about supply chain security when I&#x27;m actually paid to do so.&#x27;<p>I can see the maintainers point, even if it may be inconvenient.
评论 #32028610 未加载
aryalmost 3 years ago
This is a bizarrely emotional response to me. PyPI offered to provide a security key to make the maintainer&#x27;s life easier so it&#x27;s hard to see this as an &quot;entitled&quot; act. When I see the core infrastructure for open source software ecosystems improve I cheer that effort on.<p>While I am in full support of not asking too much of open source maintainers a cooperative stance makes the overall situation better for everyone involved. This could have been handled in a better way.
评论 #32027657 未加载
评论 #32028745 未加载
评论 #32027801 未加载
djhaskin987almost 3 years ago
From the GitHub README:<p>&gt; PyPI wants me to enable 2FA just because I maintain this package, which I don&#x27;t care for. So this package is now unmaintained.<p>Just set up a KeepassXC file and put your 2FA info in there? You don&#x27;t need to give PyPI your phone info, PyPI takes TOTP[1]. 2FA is pretty normal; I don&#x27;t see why the author has a problem with it. It doesn&#x27;t violate privacy (since it&#x27;s not actually tied to any PII like a phone number), it takes like 10 seconds to set up, and it protects your packages from hackers. Perhaps the author simply doesn&#x27;t see the point of 2FA, since he implies the PyPI authors only did it for compliance reasons (and not for normal bolt-your-doors security reasons, which is more likely)?<p>He calls setting up 2FA &quot;an expense of my free time&quot; when surely it took more time for him to delete and re-add his package than it would have to just set up 2FA.<p>EDIT:<p>To be fair, the maintainer owes us nothing[2], sure. But it&#x27;s not unreasonable to protect the larger community with basic security practices, either.<p>1: <a href="https:&#x2F;&#x2F;pypi.org&#x2F;help&#x2F;#twofa" rel="nofollow">https:&#x2F;&#x2F;pypi.org&#x2F;help&#x2F;#twofa</a><p>2: <a href="https:&#x2F;&#x2F;gist.github.com&#x2F;richhickey&#x2F;1563cddea1002958f96e7ba95" rel="nofollow">https:&#x2F;&#x2F;gist.github.com&#x2F;richhickey&#x2F;1563cddea1002958f96e7ba95</a>...
评论 #32026909 未加载
评论 #32027043 未加载
评论 #32026874 未加载
评论 #32027102 未加载
jamesboehmeralmost 3 years ago
You know which modules I&#x27;m not using for my critical projects? Ones whose maintainers refuse to enable 2fa. We already know how supply chain security problems have plagued npm and pypi. Dependabot should alert you when your dependency comes from a package maintainer that doesn&#x27;t use 2fa.
评论 #32027430 未加载
lostmsualmost 3 years ago
Also got this letter of happiness. I don&#x27;t mind 2FA, already had it set up. But PyPi is weird. I wanted to add a secondary 2FA device for backup, but they would not just let me do it. I had to download recovery codes first. But what am I going to do with them? Unlike 2FA tools there&#x27;s no convenient way to store them. But because they insisted (and they really did by immediately asking me to burn one of them) I just saved them into a random file on my local disk. I suppose I could delete them, but I would rather not have gotten them in the first place.
afturneralmost 3 years ago
PyPI identifies a package as critical and asks the maintainer to enable 2FA.. but allows them to simply delete the package to get around this requirement?
评论 #32026866 未加载
评论 #32069573 未加载
staticassertionalmost 3 years ago
I assume&#x2F; hope that this is PyPI&#x27;s <i>first step</i> in rolling out mandatory 2FA? Otherwise the whole &quot;you&#x27;re critical so you have to enable it&quot; seems a bit silly in that you&#x27;re going to have developers who <i>get critical</i> decide they don&#x27;t want to do this, and at that point pull packages&#x2F; stop maintaining.<p>Just having a 2FA requirement from the start (or some grace period like 7 days) seems like the way to do it.
legobmw99almost 3 years ago
Someone on Reddit [1] ran their own version [2] of the query PyPi used to make this determination. Over the last 6 months, atomicwrites was downloaded 38,497,903 times, good for just under #400 by rank.<p>[1] <a href="https:&#x2F;&#x2F;old.reddit.com&#x2F;r&#x2F;Python&#x2F;comments&#x2F;vuh41q&#x2F;pypi_moves_to_require_2fa_for_critical_projects" rel="nofollow">https:&#x2F;&#x2F;old.reddit.com&#x2F;r&#x2F;Python&#x2F;comments&#x2F;vuh41q&#x2F;pypi_moves_t...</a> [2] <a href="https:&#x2F;&#x2F;gist.github.com&#x2F;jack1142&#x2F;efe5c89b861a41616aaf858783835eed" rel="nofollow">https:&#x2F;&#x2F;gist.github.com&#x2F;jack1142&#x2F;efe5c89b861a41616aaf8587838...</a>