<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: arcatek</title><link>https://news.ycombinator.com/user?id=arcatek</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 25 Apr 2026 11:45:01 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=arcatek" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by arcatek in "Package Managers à la Carte: a formal model of dependency resolution"]]></title><description><![CDATA[
<p>It's not about the package manager, it's about the runtime. Python isn't able to support this pattern with its resolution pipeline, so package managers have to resort to do the work to dedupe versions.<p>By contrast Node.js has built-in capabilities that make this possible, so package managers are able to install multiple versions of the same package without that issue.</p>
]]></description><pubDate>Sat, 28 Feb 2026 09:23:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=47192766</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=47192766</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47192766</guid></item><item><title><![CDATA[New comment by arcatek in "Next-generation AI models"]]></title><description><![CDATA[
<p>> Huh? It queries whenever you stop typing.<p>That's relatively infrequently - TabNine offered me accurate completion while still writing my code, whereas with Copilot I not only have to wait for it to return the answer, I also have to <i>hope</i> it knows an answer. If it doesn't, too bad, lost time for nothing.</p>
]]></description><pubDate>Wed, 22 Jun 2022 10:12:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=31833981</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=31833981</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31833981</guid></item><item><title><![CDATA[New comment by arcatek in "Monorepos in JavaScript and TypeScript"]]></title><description><![CDATA[
<p>The article doesn't go into how to integrate TypeScript in the monorepo for development - what we do on the Yarn repository is that we point all the package.json `main` fields to the TypeScript sources, then use `publishConfig.main` to update it to the JS artifacts right before being published.<p>This way, we can use babel-node or ts-node to transparently run our TS files, no transpilation needed.</p>
]]></description><pubDate>Thu, 02 Jun 2022 17:00:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=31597491</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=31597491</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31597491</guid></item><item><title><![CDATA[New comment by arcatek in "pnpm: Fast, disk space efficient package manager for JavaScript"]]></title><description><![CDATA[
<p>> If there are clearly better algorithms, why not refactor npm and add them in experimental flags to npm<p>While node_modules has many flaws, in the current ecosystem all modes have their own pros and cons, and there isn't a "clearly better" algorithm: node_modules has less friction, PnP is sounder, and pnpm's symlinks attempt to be kind of an in-between, offering half the benefits at half the "cost".<p>Like in many computer science things, it's tradeoffs all the way. Part of why Yarn implements all three.</p>
]]></description><pubDate>Tue, 05 Apr 2022 19:12:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=30923536</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=30923536</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30923536</guid></item><item><title><![CDATA[New comment by arcatek in "Fetch API has landed into Node.js"]]></title><description><![CDATA[
<p>Usually you setup a transpiler to target both. For example, my packages are bundled with rollup towards both cjs & esm:<p><a href="https://github.com/arcanis/clipanion/blob/master/rollup.config.js#L6-L17" rel="nofollow">https://github.com/arcanis/clipanion/blob/master/rollup.conf...</a></p>
]]></description><pubDate>Tue, 01 Feb 2022 15:47:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=30164059</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=30164059</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30164059</guid></item><item><title><![CDATA[New comment by arcatek in "Fetch API has landed into Node.js"]]></title><description><![CDATA[
<p>However note that ESM in Node comes with drawbacks that prevent end-users from relying them in various situations. Those will be mostly solved once loaders become stable, but until then it's still advised to ship packages as both CJS and ESM.</p>
]]></description><pubDate>Tue, 01 Feb 2022 13:37:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=30162166</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=30162166</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=30162166</guid></item><item><title><![CDATA[New comment by arcatek in "Gitlab Epic Issue Relationships Deleted"]]></title><description><![CDATA[
<p>Out of curiosity, how do transaction logs handle things like created_at fields, or randomly generated UUID, which rely on contextual data? Is the server time/rng seed faked for each replayed transaction?</p>
]]></description><pubDate>Wed, 15 Dec 2021 13:22:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=29565531</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=29565531</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29565531</guid></item><item><title><![CDATA[New comment by arcatek in "Security issue related to the NPM registry"]]></title><description><![CDATA[
<p>To reiterate on what sibling comments said, I'm the one who spawned the discussion and implementation of Corepack, and npm remained largely out of it; the push mostly came from pnpm and Yarn.<p>Additionally, unlike other approaches, Corepack ensures that package manager versions are pinned per project and you don't need to blindly install newest ones via `npm i -g npm` (which could potentially be hijacked via the type of vulnerability discussed here). It intends to make your projects more secure, not less.</p>
]]></description><pubDate>Wed, 17 Nov 2021 08:44:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=29250472</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=29250472</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29250472</guid></item><item><title><![CDATA[New comment by arcatek in "Bitcoin is largely controlled by a small group of investors and miners"]]></title><description><![CDATA[
<p>If they start to play with different rules, one of the hard fork remaining branches (or both) will be refused by everyone on the network and be worthless.<p>There's no telling whether it'd be the "hijacked" branch or the original one - assuming they control 50%+ of the mining power, there's a decent argument that the remaining miners would follow their lead if only to stay on the largest branch.</p>
]]></description><pubDate>Wed, 27 Oct 2021 10:12:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=29011303</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=29011303</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29011303</guid></item><item><title><![CDATA[New comment by arcatek in "GitHub Actions checkspelling community workflow GitHub_TOKEN leakage via symlink"]]></title><description><![CDATA[
<p>I was under the impression that the default temporary GITHUB_TOKEN for forked repos (which is what happens with PRs) were read-only. Isn't that the case?<p><a href="https://docs.github.com/en/actions/reference/authentication-in-a-workflow#permissions-for-the-github_token" rel="nofollow">https://docs.github.com/en/actions/reference/authentication-...</a></p>
]]></description><pubDate>Thu, 09 Sep 2021 08:32:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=28467547</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28467547</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28467547</guid></item><item><title><![CDATA[New comment by arcatek in "C++ Exceptions: Under the Hood (2013)"]]></title><description><![CDATA[
<p>It's public, but I doubt it still compiles against recent LLVM versions! I started it 8 years ago to get a better understanding how features like classes & operator overload would work in a JS-like language. It was really fun!<p><a href="https://github.com/castel/libcastel/blob/master/runtime/sources/runtime/interfaces/exceptions.cc#L36" rel="nofollow">https://github.com/castel/libcastel/blob/master/runtime/sour...</a><p><a href="https://github.com/castel/libcastel/blob/master/runtime/sources/runtime/helper/LSDA.cc" rel="nofollow">https://github.com/castel/libcastel/blob/master/runtime/sour...</a><p>I remember that at the time there were very few resources on personality functions, even in the LLVM doc - I had to make a lot of research before finding your articles, which were extremely helpful!<p>I got reminded of them yesterday after someone pinged me on a Stack Overflow answer I made at the time, asking for an updated link; after I found your long-form article I figured it would be a good topic for HN as well :)<p><a href="https://stackoverflow.com/questions/16597350/what-is-an-exception-handling-personality-function" rel="nofollow">https://stackoverflow.com/questions/16597350/what-is-an-exce...</a></p>
]]></description><pubDate>Fri, 13 Aug 2021 11:22:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=28167644</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28167644</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28167644</guid></item><item><title><![CDATA[New comment by arcatek in "C++ Exceptions: Under the Hood (2013)"]]></title><description><![CDATA[
<p>That's the article I used when I implemented exceptions in an LLVM-based compiler, so it's applicable to more than just GCC.</p>
]]></description><pubDate>Thu, 12 Aug 2021 22:45:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=28162574</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28162574</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28162574</guid></item><item><title><![CDATA[C++ Exceptions: Under the Hood (2013)]]></title><description><![CDATA[
<p>Article URL: <a href="https://monkeywritescode.blogspot.com/p/c-exceptions-under-hood.html">https://monkeywritescode.blogspot.com/p/c-exceptions-under-hood.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=28161596">https://news.ycombinator.com/item?id=28161596</a></p>
<p>Points: 115</p>
<p># Comments: 111</p>
]]></description><pubDate>Thu, 12 Aug 2021 21:17:15 +0000</pubDate><link>https://monkeywritescode.blogspot.com/p/c-exceptions-under-hood.html</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28161596</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28161596</guid></item><item><title><![CDATA[New comment by arcatek in "ZeroVer: 0-Based Versioning"]]></title><description><![CDATA[
<p>I know you're joking, but I worked in a startup where a massive effort was made to completely rebuild the 1.x website - both backend and frontend. It required a lot of work from everyone, and I remember we even stayed late more than a few times to bring it to finish line.<p>So it was a bit disheartening that the founders never bumped the version to 2.x once the rollout was achieved. It's perhaps a bit nitpicky, but it felt like the work wasn't properly appreciated.</p>
]]></description><pubDate>Thu, 12 Aug 2021 12:11:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=28155219</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28155219</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28155219</guid></item><item><title><![CDATA[New comment by arcatek in "Yarn 3.0"]]></title><description><![CDATA[
<p>We don't do support on HN, but if you really don't find information in our repository issues I'm sure our Discord can help. We publish all the Yarn packages to both the npm and GitHub package registries, so I'm certain it works fine.</p>
]]></description><pubDate>Sat, 31 Jul 2021 08:45:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=28016493</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28016493</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28016493</guid></item><item><title><![CDATA[New comment by arcatek in "Yarn 3.0"]]></title><description><![CDATA[
<p>That's not quite true, PnP has always been the default and we have no plans to change that. The only thing that changed is that when you migrate from v1, we automatically enable the node-modules linker.<p>The reason for that is that PnP tends to require recent versions of some of your dependencies, so migrating to it can be somewhat involved, and it's better experience to let you keep using the install strategy you're used to until you decide to change it yourself.<p>New projects, on the other hand, already use the latest versions from their dependencies, so it's a much better starting point for PnP.</p>
]]></description><pubDate>Sat, 31 Jul 2021 08:43:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=28016487</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28016487</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28016487</guid></item><item><title><![CDATA[New comment by arcatek in "Yarn 3.0"]]></title><description><![CDATA[
<p>We support it once you enable the `node-modules` linker (cf our documentation). It's a little slower and doesn't leverage some of the stability improvements brought by PnP (in short, you get a good old node_modules folder without much fanciness), but you still get to benefit from all the other features and bugfixes we made since the 1.x.</p>
]]></description><pubDate>Fri, 30 Jul 2021 21:28:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=28012589</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28012589</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28012589</guid></item><item><title><![CDATA[New comment by arcatek in "Yarn 3.0"]]></title><description><![CDATA[
<p>We use Yarn / VSCode / TypeScript (both to maintain Yarn and at work), so we are very invested in this use case. If something didn't work, we'd notice it quickly and the fix wouldn't take long!</p>
]]></description><pubDate>Fri, 30 Jul 2021 21:27:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=28012574</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28012574</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28012574</guid></item><item><title><![CDATA[New comment by arcatek in "Yarn 3.0"]]></title><description><![CDATA[
<p>I was the main developer back when the 2.0 was started (so, like, rc.1), but since then we grew and are now a team, with at least four very active contributors of similar expertise.<p>I believe this is the greatest accomplishment of the v2.</p>
]]></description><pubDate>Fri, 30 Jul 2021 21:25:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=28012558</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28012558</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28012558</guid></item><item><title><![CDATA[New comment by arcatek in "Yarn 3.0"]]></title><description><![CDATA[
<p>Note that we don't recommend using both Yarn and npm: both have different feature sets, heuristics, and implementation details, and as a result your colleagues and you may have slightly different behaviors in development (on top of desync'd dependency trees).<p>Just like no one would think of letting their developers choose whether they want to bundle their code using either Webpack or Rollup, the package manager should really be enforced at the project level, whether you choose Yarn or npm.</p>
]]></description><pubDate>Fri, 30 Jul 2021 21:23:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=28012535</link><dc:creator>arcatek</dc:creator><comments>https://news.ycombinator.com/item?id=28012535</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28012535</guid></item></channel></rss>