<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: frostming</title><link>https://news.ycombinator.com/user?id=frostming</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 10 Jun 2026 05:42:36 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=frostming" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by frostming in "Uv is fantastic, but its package management UX is a mess"]]></title><description><![CDATA[
<p>UX issues are the least important; it's just a matter of minutes for AI to improve, but you need to report it on GitHub.<p>The "unsafe version" is an unreasonable accusation. Do people really believe in semantic versioning—that not bumping the major version means it's safe? It also creates hard-to-resolve compatibility problems, causing more issues than it solves. Not capping dependency versions has basically become the consensus.</p>
]]></description><pubDate>Fri, 22 May 2026 08:50:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=48233498</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=48233498</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48233498</guid></item><item><title><![CDATA[New comment by frostming in "Ask HN: Share your favorite software blog posts of 2023"]]></title><description><![CDATA[
<p>A Casual Discussion on L4 Load Balancing - by @laixintao(in Chinese)<p><a href="https://www.kawabangga.com/posts/5301" rel="nofollow">https://www.kawabangga.com/posts/5301</a></p>
]]></description><pubDate>Thu, 04 Jan 2024 04:39:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=38863068</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=38863068</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38863068</guid></item><item><title><![CDATA[New comment by frostming in "PDM: A Modern Python Package Manager"]]></title><description><![CDATA[
<p>PDM also supports centralized package cache like [pnpm] while still keeping project's dependencies isolated.<p>> Also this will just pollute your source directories with generated directories and files that shouldn't be there.<p>I don't see why it is a problem, node.js also has node_modules in the project. And __pypackages__ is created with a .gitignore file so you won't commit it accidentally.</p>
]]></description><pubDate>Fri, 10 Dec 2021 04:05:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=29506274</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=29506274</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29506274</guid></item><item><title><![CDATA[New comment by frostming in "PDM: A Modern Python Package Manager"]]></title><description><![CDATA[
<p>Yes, PDM does some hacks to make it work with the familiar `python` executable. See the example at <a href="https://github.com/pdm-project/pdm/#quickstart" rel="nofollow">https://github.com/pdm-project/pdm/#quickstart</a>. All you need is a fews lines to set up your shell.</p>
]]></description><pubDate>Fri, 10 Dec 2021 04:02:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=29506256</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=29506256</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29506256</guid></item><item><title><![CDATA[New comment by frostming in "PDM: A Modern Python Package Manager"]]></title><description><![CDATA[
<p>Thanks for the kind words on PDM. At time of creating PDM I don't want it to be similar with any other package mangers, so I chose PEP 582, and I thought I can play more new stuff on it.<p>But as PDM becomes mature, it is acknowleged by the Python packaging people, I also work hard to make PDM fit more people's workflow, fortunately, it has a strong plugin system. You can add virtualenv support(pdm-venv), publish command(pdm-publish) and more. In the future, I would like to see it can eventually push the iteration of PEP 582 and make it finalized.</p>
]]></description><pubDate>Fri, 10 Dec 2021 03:58:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=29506233</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=29506233</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29506233</guid></item><item><title><![CDATA[New comment by frostming in "PDM: A Modern Python Package Manager"]]></title><description><![CDATA[
<p>In PDM, add command supports a `--unconstrained` option to relax the version constraints to find a solution. You don't need to edit the file manually.</p>
]]></description><pubDate>Fri, 10 Dec 2021 03:48:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=29506183</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=29506183</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29506183</guid></item><item><title><![CDATA[New comment by frostming in "PDM: A Modern Python Package Manager"]]></title><description><![CDATA[
<p>PDM author here, if anyone want to know the advantage of __pypackages__ over virtualenv-based tools(venv, virtualenv, poetry, pipenv), here it is:
The fact that virtualenvs come with a cloned(or symlinked) interpreter makes it vulnerable when users want to upgrade the host interpreter in-place unless you keep all the old installations in your system, which is what pyenv is doing. You can imagine how many interpreters, including virtualenv-embedded ones are on your machine.<p>You can regard __pypackages__ as a virtualenv WITHOUT the interpreter, it can easily work with any python interpreter you choose as long as it has the same major.minor version as the packages folder.</p>
]]></description><pubDate>Fri, 10 Dec 2021 03:42:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=29506152</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=29506152</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29506152</guid></item><item><title><![CDATA[New comment by frostming in "You don't really need a virtualenv"]]></title><description><![CDATA[
<p>> So careful, far from stable.<p>True, bugs can't be exposed by a few users. People have vastly different environment setup for their Python development. System python, in-venv, pyenv, asdf, homebrew, etc. So I post it here to seek for help testing.<p>The sematic versioning may be a bit misleading, it is just because there was a big breaking change to support PEP 621, and I marked it as "Alpha" stage.</p>
]]></description><pubDate>Fri, 05 Feb 2021 01:37:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=26032047</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=26032047</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26032047</guid></item><item><title><![CDATA[New comment by frostming in "You don't really need a virtualenv"]]></title><description><![CDATA[
<p>As I wrote in the post, you cannot make two tools isolated in their own environment work together(work together meaning one needs to import from the other). The only way to make it is to install one tool in the global site-packages and create the other virtualenvs with --system-sitepackages and this flag is off by default.</p>
]]></description><pubDate>Thu, 04 Feb 2021 13:32:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=26025149</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=26025149</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26025149</guid></item><item><title><![CDATA[New comment by frostming in "You don't really need a virtualenv"]]></title><description><![CDATA[
<p>__pypackages__ also has a bin/ directory and you can run the console_scripts with pdm run my_bin or by absolute path: /path/to/__pypackages__/3.8/bin/my_bin</p>
]]></description><pubDate>Thu, 04 Feb 2021 13:28:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=26025114</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=26025114</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26025114</guid></item><item><title><![CDATA[New comment by frostming in "You don't really need a virtualenv"]]></title><description><![CDATA[
<p>Thanks for giving a look and leaving so many reactions. This project was originally built to experiment on some new PEPs on Python packaging and it turned out working well.<p>1. What does PEP 582 differ from virtualenv, it is just another "virutualenv"
The biggest difference, as you can see, is __pypackages__ doesn't carry an interpreter with it. This way the packages remain available even the base interpreter gets removed.
2. I prefer Poetry/virtualenvwrapper/Pipenv
It is fine. If you feel comfortable with the current solution you are using, stick with it. I am not persuading that PDM is a better tool than those. Any of the said tools does a great job solving its own problems. PDM, IMO, does good in following aspects:<p>- Plugin system, people can enhance the functionalities easily with plugins
- Windows support, PDM has completion support for PowerShell out of the box. Other CLI features also work as good as *nix on Windows.</p>
]]></description><pubDate>Thu, 04 Feb 2021 13:25:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=26025101</link><dc:creator>frostming</dc:creator><comments>https://news.ycombinator.com/item?id=26025101</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26025101</guid></item></channel></rss>