<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: mfenniak</title><link>https://news.ycombinator.com/user?id=mfenniak</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 18 Aug 2026 15:21:01 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=mfenniak" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by mfenniak in "Ask HN: Alternatives to GitHub"]]></title><description><![CDATA[
<p>A basic API to access Actions logs was added in Forgejo v16.  `/api/v1/repos/{owner}/{repo}/actions/jobs/{job_id}/logs`</p>
]]></description><pubDate>Mon, 17 Aug 2026 15:02:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=49332181</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=49332181</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49332181</guid></item><item><title><![CDATA[New comment by mfenniak in "Codeberg Is Down"]]></title><description><![CDATA[
<p>You may be violating Codeberg's rules. They are not a service for developmental of closed-source software.<p><a href="https://docs.codeberg.org/getting-started/faq/#how-about-private-repositories%3F" rel="nofollow">https://docs.codeberg.org/getting-started/faq/#how-about-pri...</a></p>
]]></description><pubDate>Sun, 28 Jun 2026 12:05:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=48706619</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=48706619</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48706619</guid></item><item><title><![CDATA[New comment by mfenniak in "Ask HN: Due to spam on GitHub, what platforms can I move my projects?"]]></title><description><![CDATA[
<p>Forgejo is lightweight relative to some other options, but it is not resilient to scraping.  Scrapers can access, commit-by-commit, each individual file, each file's "git blame", and each commit's repository archive... and they do.  Most public Forgejo instances need to rely on a reverse proxy like Anubis or Iocaine in order to prevent server resources from being exhausted by bad actors.  Or require sign-in for all access.<p><a href="https://codeberg.org/forgejo/discussions/issues/320" rel="nofollow">https://codeberg.org/forgejo/discussions/issues/320</a></p>
]]></description><pubDate>Sat, 20 Jun 2026 18:53:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=48611853</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=48611853</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48611853</guid></item><item><title><![CDATA[New comment by mfenniak in "My Homelab AI Dev Platform"]]></title><description><![CDATA[
<p>That's not an API tool.  It performs direct database access for administrative functions on the Forgejo server.<p>But there is a different tool that is an API accessing CLI: <a href="https://codeberg.org/forgejo-contrib/forgejo-cli" rel="nofollow">https://codeberg.org/forgejo-contrib/forgejo-cli</a></p>
]]></description><pubDate>Mon, 15 Jun 2026 17:35:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=48544536</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=48544536</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48544536</guid></item><item><title><![CDATA[New comment by mfenniak in "Leaving GitHub for Forgejo"]]></title><description><![CDATA[
<p>The other way around; Forgejo is a fork of Gitea.</p>
]]></description><pubDate>Wed, 13 May 2026 15:02:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=48122860</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=48122860</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48122860</guid></item><item><title><![CDATA[New comment by mfenniak in "Incident with multple GitHub services"]]></title><description><![CDATA[
<p>Forgejo 15 was just released last week with repo-specific access tokens. More to come in the future.</p>
]]></description><pubDate>Thu, 23 Apr 2026 17:39:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=47878784</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=47878784</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47878784</guid></item><item><title><![CDATA[New comment by mfenniak in "Moving from GitHub to Codeberg, for lazy people"]]></title><description><![CDATA[
<p>It is kinda incorrect and kinda correct.  Codeberg allows you to create private repositories.  However, their rules are clear that the intent of private repositories must be in support of Free software projects: <a href="https://docs.codeberg.org/getting-started/faq/#how-about-private-repositories%3F" rel="nofollow">https://docs.codeberg.org/getting-started/faq/#how-about-pri...</a>, which for many people is effectively not allowing private repositories.</p>
]]></description><pubDate>Thu, 26 Mar 2026 15:15:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47531545</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=47531545</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47531545</guid></item><item><title><![CDATA[New comment by mfenniak in "Moving from GitHub to Codeberg, for lazy people"]]></title><description><![CDATA[
<p>Forgejo is committed to using exclusively Free Software for it's own project development.  Windows and Mac versions of the Forgejo Runner are built in the project's CI system as a minimal check to ensure platform compatibility, but due to the project's commitment, the project doesn't do integration testing on these platform.  And therefore doesn't distribute untested software.<p>A contributor maintains a tested re-release of Forgejo Runner for Windows: <a href="https://github.com/Crown0815/Forgejo-runner-windows-builder" rel="nofollow">https://github.com/Crown0815/Forgejo-runner-windows-builder</a><p>But, pull it down and build it, and it will work.</p>
]]></description><pubDate>Thu, 26 Mar 2026 15:12:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=47531504</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=47531504</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47531504</guid></item><item><title><![CDATA[New comment by mfenniak in "GitHub is once again down"]]></title><description><![CDATA[
<p>As a developer working on Forgejo -- glad you like it!</p>
]]></description><pubDate>Tue, 24 Mar 2026 21:27:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=47509621</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=47509621</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47509621</guid></item><item><title><![CDATA[New comment by mfenniak in "GitHub is down again"]]></title><description><![CDATA[
<p>It probably depends on your scale, but I'd suggest self-hosting a Forgejo instance, if it's within your domain expertise to run a service like that.  It's not hard to operate, it will be blazing fast, it provides most of the same capabilities, and you'll be in complete control over the costs and reliability.<p>A people have replied to you mentioning Codeberg, but that service is intended for Open Source projects, not private commercial work.</p>
]]></description><pubDate>Mon, 09 Feb 2026 17:20:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=46947953</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=46947953</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46947953</guid></item><item><title><![CDATA[New comment by mfenniak in "GitHub Actions has a package manager, and it might be the worst"]]></title><description><![CDATA[
<p>On the plus side, Forgejo Action's implementation is still actively improving, where it seems that for GitHub if it's not AI, it's not being touched.<p>However, as noted in the article, Forgejo's implementation currently has all the same "package manager" problems.</p>
]]></description><pubDate>Mon, 08 Dec 2025 14:10:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=46192385</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=46192385</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46192385</guid></item><item><title><![CDATA[New comment by mfenniak in "Migrating Dillo from GitHub"]]></title><description><![CDATA[
<p>> * Strange error: "Error: Open(/home/runner/.cache/actcache/bolt.db): timeout"<p>This will occur if you have a `forgejo-runner daemon` running while you try to use `exec` -- both are trying to open the cache database, and only the first to open it can operate.  You could avoid this by changing the cache directory of the daemon by changing `cache.dir` in the config file, or run the two processes as different users.<p>> It's a bit strange there are two files IMHO.<p>The `.runner` file isn't a config file, it's a state file -- not intended for user editing.  But yes, it's a bit odd.</p>
]]></description><pubDate>Sun, 30 Nov 2025 16:35:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=46098066</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=46098066</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46098066</guid></item><item><title><![CDATA[New comment by mfenniak in "Migrating the main Zig repository from GitHub to Codeberg"]]></title><description><![CDATA[
<p>Although it's not a writeup, most of the problems can be traced through this "moving-to-forgejo" meta-issue: <a href="https://codeberg.org/forgejo-contrib/moving-to-forgejo/issues/15" rel="nofollow">https://codeberg.org/forgejo-contrib/moving-to-forgejo/issue...</a></p>
]]></description><pubDate>Thu, 27 Nov 2025 04:21:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=46065610</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=46065610</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46065610</guid></item><item><title><![CDATA[New comment by mfenniak in "We need a clearer framework for AI-assisted contributions to open source"]]></title><description><![CDATA[
<p>The Forgejo project has been gently trying to redirect new contributors into fixing bugs before trying to jump into the project to implement big features (<a href="https://codeberg.org/forgejo/discussions/issues/337" rel="nofollow">https://codeberg.org/forgejo/discussions/issues/337</a>).  This allows a new contributor to get into the community, get used to working with the codebase, do something of clear value... but for the project a lot of it is about establishing reputation.<p>Will the contributor respond to code-review feedback?  Will they follow-up on work?  Will they work within the code-of-conduct and learn the contributor guidelines?  All great things to figure out on small bugs, rather than after the contributor has done significant feature work.</p>
]]></description><pubDate>Tue, 28 Oct 2025 13:51:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=45732908</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=45732908</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45732908</guid></item><item><title><![CDATA[New comment by mfenniak in "Forgejo v13.0 Is Available"]]></title><description><![CDATA[
<p>If you're running a public Forgejo instance and upgrading to v13, please take note of the post-release recommendation to run the `avatar-strip-exif` command to enhance user privacy.<p><a href="https://forgejo.org/2025-10-release-v13-0/#avatar-image-privacy" rel="nofollow">https://forgejo.org/2025-10-release-v13-0/#avatar-image-priv...</a></p>
]]></description><pubDate>Fri, 17 Oct 2025 20:03:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=45621358</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=45621358</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45621358</guid></item><item><title><![CDATA[New comment by mfenniak in "Forgejo v13.0 Is Available"]]></title><description><![CDATA[
<p>If you're running a Forgejo instance and upgrading to v13 today (or soon), note the post-release recommendation to run the `avatar-strip-exif` command to enhance user privacy.<p><a href="https://forgejo.org/2025-10-release-v13-0/#avatar-image-privacy" rel="nofollow">https://forgejo.org/2025-10-release-v13-0/#avatar-image-priv...</a></p>
]]></description><pubDate>Thu, 16 Oct 2025 18:58:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=45609310</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=45609310</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45609310</guid></item><item><title><![CDATA[New comment by mfenniak in "I ditched Docker for Podman"]]></title><description><![CDATA[
<p>People having trouble getting this configured is a common issue for self-hosting Forgejo Runner.  As a Forgejo contributor, I'm currently polishing up new documentation to try to support people with configuring this; here's the draft page: <a href="https://forgejo.codeberg.page/@docs_pull_1421/docs/next/admin/actions/docker-access/" rel="nofollow">https://forgejo.codeberg.page/@docs_pull_1421/docs/next/admi...</a><p>(Should live at <a href="https://forgejo.org/docs/v12.0/admin/actions/docker-access/" rel="nofollow">https://forgejo.org/docs/v12.0/admin/actions/docker-access/</a> once it is finished up, if anyone runs into the comment after the draft is gone.)</p>
]]></description><pubDate>Fri, 05 Sep 2025 17:46:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=45141390</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=45141390</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45141390</guid></item><item><title><![CDATA[New comment by mfenniak in "Claude Code Checkpoints"]]></title><description><![CDATA[
<p>I don't think jujutsu woild help with this use case -- jujutsu will not save everything because it is not running constantly on your repo. It snapshots the working tree only when you run a `jj` command. Ineffective if an agent is doing work.</p>
]]></description><pubDate>Thu, 28 Aug 2025 12:24:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=45051308</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=45051308</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45051308</guid></item><item><title><![CDATA[New comment by mfenniak in "What is going on right now?"]]></title><description><![CDATA[
<p>Not really.<p>If a program is built with strong software architecture, then a lot of it will fit that definition.  As an analogy, electricity in your home is delivered by electrical outlets that are standardized -- you can have high confidence that when you buy a new electrical appliance, it can plug into those outlets and work.  But someone had to design that standard and apply it universally to the outlets and the appliances.  Software architecture within a program is about creating those standards on how things work and applying them universally.  If you do this well, then yes, you can have a lot of code that is testable and verifiable.<p>But you'll always have side-effects.  Programs do things -- they create files, they open network connections, they communicate with other programs, they display things on the screen.  Some of those side-effects create "state" -- once a file is created, it's still present.  These things are much harder to test because they're not just a function with an input and an output -- their behavior changes between the first run and the second run.</p>
]]></description><pubDate>Fri, 22 Aug 2025 13:34:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=44984510</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=44984510</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44984510</guid></item><item><title><![CDATA[Testtrim: A testing tool that couldn't test itself (until now)]]></title><description><![CDATA[
<p>Article URL: <a href="https://mathieu.fenniak.net/testtrim-2025-01-nested-syscall-tracing/">https://mathieu.fenniak.net/testtrim-2025-01-nested-syscall-tracing/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42824526">https://news.ycombinator.com/item?id=42824526</a></p>
<p>Points: 10</p>
<p># Comments: 0</p>
]]></description><pubDate>Sat, 25 Jan 2025 20:24:55 +0000</pubDate><link>https://mathieu.fenniak.net/testtrim-2025-01-nested-syscall-tracing/</link><dc:creator>mfenniak</dc:creator><comments>https://news.ycombinator.com/item?id=42824526</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42824526</guid></item></channel></rss>