shakedown.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A community for live music fans with roots in the jam scene. Shakedown Social is run by a team of volunteers (led by @clifff and @sethadam1) and funded by donations.

Administered by:

Server stats:

289
active users

#ci

1 post1 participant0 posts today
Hugo van Kemenade<p>GitHub Actions now supports free-threaded Python!</p><p>I wrote up how to add it your workflows so you can start testing free-threaded Python 3.13 and 3.14 with either actions/setup-python or actions/setup-uv.</p><p><a href="https://hugovk.dev/blog/2025/free-threaded-python-on-github-actions/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">hugovk.dev/blog/2025/free-thre</span><span class="invisible">aded-python-on-github-actions/</span></a></p><p><a href="https://mastodon.social/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a> <a href="https://mastodon.social/tags/FreeThreaded" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FreeThreaded</span></a> <a href="https://mastodon.social/tags/GitHub" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GitHub</span></a> <a href="https://mastodon.social/tags/GitHubActions" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GitHubActions</span></a> <a href="https://mastodon.social/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> <a href="https://mastodon.social/tags/testing" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>testing</span></a></p>
Paul Campbell<p>🔥 Keep your commits consistent!<br>🔥 <code>forgejo-commit-path-rules</code> v0.2.3 ensures your commit messages align with your file changes.</p><p>🧩 Enforce commit message and file path rules in your repo!</p><p>🦀 Written in Rust<br>⭐ Repo: <a href="https://codeberg.org/kemitix/forgejo-commit-path-rules" rel="nofollow noopener noreferrer" target="_blank">https://codeberg.org/kemitix/forgejo-commit-path-rules</a><br>🎬 A ForgeJo Action/CLI Tool</p><p>✨ What's New:</p><p>- Coloured highlights in logging (supports <code>--no-colour</code>)<br>- <code>all</code> matching strategy for paths (default is <code>any</code>)<br>- Built in templates: <code>docs</code>, <code>feature</code>, <code>tests</code> and <code>fixes</code></p><p>🛠 Usage:</p><p>- Define rules in <code>.forgejo/commit-path-rules.toml</code><br>- Run via CLI or ForgeJo Action</p><p>Install:<br><code>cargo install forgejo-commit-path-rules</code></p><p>CLI Usage:<br><code>forgejo-commit-path-rules --workspace . --no-colour</code></p><p>Forgejo Action:</p><pre><code> jobs: validate: steps: - uses: actions/checkout@v3 with: fetch-depth: 0 - name: Run forgejo-commit-path-rules uses: kemitix/commit-path-rules@v0.2.3 with: args: --verbose </code></pre><p><a class="hashtag" href="https://mitra.kemitix.net/collections/tags/rustlang" rel="nofollow noopener noreferrer" target="_blank">#RustLang</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/forgejo" rel="nofollow noopener noreferrer" target="_blank">#ForgeJo</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/ci" rel="nofollow noopener noreferrer" target="_blank">#CI</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/cli" rel="nofollow noopener noreferrer" target="_blank">#CLI</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/git" rel="nofollow noopener noreferrer" target="_blank">#Git</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/codeberg" rel="nofollow noopener noreferrer" target="_blank">#Codeberg</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/opensource" rel="nofollow noopener noreferrer" target="_blank">#OpenSource</a></p>
IT News<p>FLOSS Weekly Episode 825: Open Source CI With Semaphore - This week, Jonathan Bennett and Ben Meadors talk to Darko Fabijan about Semaphore,... - <a href="https://hackaday.com/2025/03/19/floss-weekly-episode-825-open-source-ci-with-semaphore/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">hackaday.com/2025/03/19/floss-</span><span class="invisible">weekly-episode-825-open-source-ci-with-semaphore/</span></a> <a href="https://schleuss.online/tags/hackadaycolumns" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hackadaycolumns</span></a> <a href="https://schleuss.online/tags/flossweekly" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>flossweekly</span></a> <a href="https://schleuss.online/tags/semaphore" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>semaphore</span></a> <a href="https://schleuss.online/tags/podcasts" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>podcasts</span></a> <a href="https://schleuss.online/tags/ci" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ci</span></a>/cd</p>
stateful being<p>the other <a href="https://mastodon.social/tags/rustlang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rustlang</span></a> thingy that's been cooking (and just passed a <a href="https://mastodon.social/tags/ci" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ci</span></a> run) is called <a href="https://mastodon.social/tags/taggart" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>taggart</span></a>.</p><p>it uses <a href="https://mastodon.social/tags/tengri" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tengri</span></a> to pop up an interactive table to edit things, namely: the <a href="https://mastodon.social/tags/id3" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>id3</span></a> tags of music releases</p><p>its purpose? why, to make it easier to prepare a certain pile of content (that we've accumulated with a friend over the past, what, 6-7 years), for publication in a sovereign <a href="https://mastodon.social/tags/faircamp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>faircamp</span></a> instance! but none of it's well-tagged and existing interactive mediatag editors are ugh</p><p><a href="https://codeberg.org/unspeaker/taggart" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">codeberg.org/unspeaker/taggart</span><span class="invisible"></span></a></p>
Kevin Karhan :verified:<p><span class="h-card" translate="no"><a href="https://oxytodon.com/@fuchsiii" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>fuchsiii</span></a></span> <span class="h-card" translate="no"><a href="https://mastodon.gamedev.place/@grumpygamer" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>grumpygamer</span></a></span> oftentimes said cores ain't even <em>"dedicaded"</em> but <em>shared</em>...</p><ul><li>In the case of <a href="https://infosec.space/tags/CyberBunker" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CyberBunker</span></a> they literally sold <a href="https://infosec.space/tags/Nehalem" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Nehalem</span></a>(-EX) hardware to customers (cross referenced by datasheets/specsheets and the fact they never updated the listings in 15+ years!)</li></ul><p>"shared core VPS" are a <em>very big mistake</em>, espechally on Hosters like <a href="https://infosec.space/tags/Hetzner" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Hetzner</span></a>...</p><ul><li><em>Ask me how I know!</em></li></ul><p>So OFC said systems are overworked, espechally the convenience-based options where one just shoves on files and tells it to <em>"bake it"</em>...</p><ul><li>OFC it shouldn't be the responsibility of a <a href="https://infosec.space/tags/GameDev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GameDev</span></a> to <a href="https://infosec.space/tags/DIY" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>DIY</span></a> one's <a href="https://mastodon.gamedev.place/@grumpygamer/114158849810039330" rel="nofollow noopener noreferrer" target="_blank">own</a> <a href="https://infosec.space/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> / <a href="https://infosec.space/tags/CD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CD</span></a> infrastructure, and I think given the size and complexity of said games it would be overkill to do so.</li></ul><p>If feasible, just grab' yourself a decently performing PC/Server/Laptop you can chug in a closet, SSH/RDP onto and use it as <em>"build servant"</em> ("<em>Rechenknecht"</em>) to run your builds and then <a href="https://ntfy.sh" rel="nofollow noopener noreferrer" target="_blank">sent a notification</a> once done.</p><ul><li>Since speed is of no real concern, but <a href="https://infosec.space/tags/EnergyConsumption" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>EnergyConsumption</span></a> is (@€0,33/kWh), I got some <a href="https://infosec.space/tags/fanless" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>fanless</span></a> <a href="https://infosec.space/tags/ThinClient" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ThinClient</span></a> as a <a href="https://infosec.space/tags/MiniServer" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>MiniServer</span></a> with some external SSD plugged into USB 3.0</li></ul>
Xanatos :godot:<p>I just tried to update my Godot project to Godot 4.4 but it seems like my build pipeline does not support 4.4 builds just yet ...</p><p>Somehow the docker container was not updated because a service broke down, now I need to wait.</p><p><a href="https://github.com/felix-schindler/build-godot-action" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/felix-schindler/bui</span><span class="invisible">ld-godot-action</span></a></p><p>I already used a fork of the action because the other one was achieved.</p><p>Are there other more reliable build solutions out there?</p><p><a href="https://mastodon.gamedev.place/tags/Godot" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Godot</span></a> <a href="https://mastodon.gamedev.place/tags/Godot4" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Godot4</span></a> Godot4_4 <a href="https://mastodon.gamedev.place/tags/GameDev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GameDev</span></a> <a href="https://mastodon.gamedev.place/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> <a href="https://mastodon.gamedev.place/tags/Development" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Development</span></a> <a href="https://mastodon.gamedev.place/tags/GodotQuestion" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GodotQuestion</span></a></p>
Paul Campbell<p>🧩 <code>forgejo-todo-checker</code> v1.3.2: Checks your source files for TODO and FIXME comments, where they don't have an open issue number</p><p>🦀 Written in Rust<br>⭐ Repo: <a href="https://codeberg.org/kemitix/forgejo-todo-checker" rel="nofollow noopener noreferrer" target="_blank">https://codeberg.org/kemitix/forgejo-todo-checker</a><br>🎬 A ForgeJo Action.</p><p><strong>What's new</strong></p><p>- bug fix - hadn't updated the version of rust used in the docker image</p><p><strong>Install</strong></p><pre><code>cargo install forgejo-todo-checker </code></pre><p><strong>CLI Usage</strong></p><pre><code>forgejo-todo-checker --workspace $PWD \ --site https://git.kemitix.net \ --repo kemitix/forgejo-todo-checker </code></pre><p>This should allow you to check locally that your <code>TODO</code> and <code>FIXME</code> comments are valid <em>before</em> you push the change to your CI.</p><p><strong>CI</strong></p><p><code>forgejo-todo-checker</code> is primarily a Forgejo Action:</p><pre><code>jobs: tests: steps: - name: Checkout uses: actions/checkout@v4 - name: Check TODOs uses: kemitix/todo-checker@v1.3.2 </code></pre><p>If you have any <code>TODO</code> or <code>FIXME</code> comments in your code that doesn't have an associated and <strong>open</strong> issue, then this will fail the build.</p><p><a class="hashtag" href="https://mitra.kemitix.net/collections/tags/rustlang" rel="nofollow noopener noreferrer" target="_blank">#RustLang</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/forgejo" rel="nofollow noopener noreferrer" target="_blank">#ForgeJo</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/ci" rel="nofollow noopener noreferrer" target="_blank">#CI</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/cli" rel="nofollow noopener noreferrer" target="_blank">#CLI</a></p>
⁂Krafty⁂<p>Update on <a href="https://fosstodon.org/tags/Nautilism" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Nautilism</span></a>, my Godot sailing game! I have refactored the wave code and made some more under-the-hood tweaks. I also set up a <a href="https://fosstodon.org/tags/GitLab" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GitLab</span></a> <a href="https://fosstodon.org/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> pipeline to automatically build the game and host the builds on <a href="https://fosstodon.org/tags/gitlabpages" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gitlabpages</span></a>. The repository is <a href="https://gitlab.com/TKK13909/nautilism" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">gitlab.com/TKK13909/nautilism</span><span class="invisible"></span></a> and the website is <a href="https://nautilism-c15fcc.gitlab.io/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">nautilism-c15fcc.gitlab.io/</span><span class="invisible"></span></a></p><p>Please try it out and tell me what you think! I'm still trying to figure out the direction I want to take the game but I am happy to hear suggestions.</p><p><a href="https://fosstodon.org/tags/GameDev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GameDev</span></a> <a href="https://fosstodon.org/tags/Godot" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Godot</span></a> <a href="https://fosstodon.org/tags/Sailing" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Sailing</span></a></p>
Raphaël 🇺🇦 🇪🇺<p>How many projects or CI stacks, critical or not, in production or not, rely on some Dockerfile starting with "FROM alpine:xxx" ?</p><p><a href="https://alpinelinux.org/posts/Seeking-Support-After-Equinix-Metal-Sunsets.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">alpinelinux.org/posts/Seeking-</span><span class="invisible">Support-After-Equinix-Metal-Sunsets.html</span></a></p><p><a href="https://bzh.social/tags/alpinelinux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>alpinelinux</span></a> <a href="https://bzh.social/tags/docker" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>docker</span></a> <a href="https://bzh.social/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> <a href="https://bzh.social/tags/dev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>dev</span></a> <a href="https://bzh.social/tags/webdev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>webdev</span></a> <a href="https://bzh.social/tags/saas" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>saas</span></a> <a href="https://bzh.social/tags/programming" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>programming</span></a> <a href="https://bzh.social/tags/devops" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>devops</span></a></p>
small circle 🕊 in calmness<p>The typical <a href="https://social.coop/tags/FOSS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FOSS</span></a> <a href="https://social.coop/tags/dev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>dev</span></a> lifecycle:</p><p>1. <a href="https://social.coop/tags/showerthought" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>showerthought</span></a> idea<br>2. git init, start <a href="https://social.coop/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> pipeline<br>3. code, don't forget <a href="https://social.coop/tags/TDD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>TDD</span></a></p><p>It is great for doing what you love to do as a coder: <a href="https://social.coop/tags/coding" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>coding</span></a>. It is less great if over time your coded work becomes popular, and all kinds of boring other considerations must be dealt with.</p><p>One easily ends up in a <a href="https://social.coop/tags/OneManArmy" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OneManArmy</span></a> situation, and if not delegating timely, on a burnout vector.</p><p>This kind of ad-hoc <a href="https://social.coop/tags/ShowDontTell" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ShowDontTell</span></a> also leads to <a href="https://social.coop/tags/TechnosphereMyopia" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>TechnosphereMyopia</span></a>: tech-only perspective.</p>
Mark Gardner<p>Yesterday I had the privilege of attending a very informative presentation on <a href="https://social.sdf.org/tags/GitLab" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GitLab</span></a> pipelines and <a href="https://social.sdf.org/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> (continuous integration) for <a href="https://social.sdf.org/tags/Perl" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Perl</span></a> <a href="https://social.sdf.org/tags/developers" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>developers</span></a> by Gábor Szabó.</p><p><a href="https://youtube.com/watch?v=RnXwP4I-vUs" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">youtube.com/watch?v=RnXwP4I-vU</span><span class="invisible">s</span></a></p><p>If you’re at all interested in improving the reliability of your Perl code and *leveling up* from “software <a href="https://social.sdf.org/tags/developer" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>developer</span></a>” to “software engineer," you owe it to yourself to watch Gábor’s talk!</p><p><a href="https://social.sdf.org/tags/programming" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>programming</span></a> <a href="https://social.sdf.org/tags/coding" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>coding</span></a> <a href="https://social.sdf.org/tags/SoftwareDevelopment" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SoftwareDevelopment</span></a> <a href="https://social.sdf.org/tags/SoftwareEngineering" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SoftwareEngineering</span></a> <a href="https://social.sdf.org/tags/git" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>git</span></a></p>
gary<p><span class="h-card" translate="no"><a href="https://mastodon.social/@geerlingguy" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>geerlingguy</span></a></span> sometimes forks are just too good opnsense vs pfsense is a good example, rsj should start wearing a shirt that says lucky. pls do followup on making minirack for specific use cases and matched up with the odd hw/sw req - add in a couple usb - one for dx and another for iso/backups <a href="https://infosec.exchange/tags/minirack" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>minirack</span></a> blends <a href="https://infosec.exchange/tags/ci" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ci</span></a>/cd <a href="https://infosec.exchange/tags/open" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>open</span></a> source hw <a href="https://infosec.exchange/tags/object" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>object</span></a> orientated <a href="https://infosec.exchange/tags/partimage" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>partimage</span></a> <a href="https://infosec.exchange/tags/dd" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>dd</span></a> piped through gz</p>
Kevin Bowen :xfce:<p>Also, for <a href="https://fosstodon.org/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> tasks, you've got to add a line to install `poetry-plugin-export` since that is no longer included in Poetry core(e.g. if you are exporting into a requirements.txt to create a venv for testing).</p><p>A shell has also been move out of core, you'll need `poetry-plugin-shell`.</p><p><a href="https://fosstodon.org/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a></p>
Paul Campbell<p>🧩 <code>forgejo-todo-checker</code> v1.3.0: Checks your source files for TODO and FIXME comments, where they don't have an open issue number<br>🦀 Written in Rust<br>⭐ Repo: <a href="https://git.kemitix.net/kemitix/forgejo-todo-checker" rel="nofollow noopener noreferrer" target="_blank">https://git.kemitix.net/kemitix/forgejo-todo-checker</a><br>🎬 A ForgeJo Action.</p><p><em>What's new</em>:</p><p>- add cli args to help run locally</p><p><em>Install</em>:</p><pre><code>cargo install forgejo-todo-checker </code></pre><p><em>CLI Usage</em>:</p><pre><code>forgejo-todo-checker --workspace $PWD \ --site https://git.kemitix.net \ --repo kemitix/forgejo-todo-checker </code></pre><p>This should allow you to check locally that your TODO and FIXME's comments are valid <em>before</em> you push the change to you CI.</p><p><em>CI</em>:</p><p><code>forgejo-todo-checker</code> remains primarily a Forgejo Action:</p><pre><code>jobs: tests: steps: - name: Checkout uses: actions/checkout@v4 - name: Check TODOs uses: kemitix/todo-checker@v1.3.0 </code></pre><p>If you have any TODO or FIXME comments in your code that doesn't have an associated and OPEN issue, then this will fail the build.</p><p><a class="hashtag" href="https://mitra.kemitix.net/collections/tags/rustlang" rel="nofollow noopener noreferrer" target="_blank">#RustLang</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/forgejo" rel="nofollow noopener noreferrer" target="_blank">#ForgeJo</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/ci" rel="nofollow noopener noreferrer" target="_blank">#CI</a> <a class="hashtag" href="https://mitra.kemitix.net/collections/tags/cli" rel="nofollow noopener noreferrer" target="_blank">#CLI</a></p>
Kevin Karhan :verified:<p>To answer <span class="h-card" translate="no"><a href="https://fedi.rrr.sh/@pearl" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>pearl</span></a></span>'s original <a href="https://fedi.rrr.sh/@pearl/113709160592615810" rel="nofollow noopener noreferrer" target="_blank">question</a>:</p><ul><li><a href="https://infosec.space/tags/pfSense" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>pfSense</span></a> &amp; <a href="https://infosec.space/tags/OPNsense" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OPNsense</span></a> allow importing and exporting the entire systems configuration as a single <a href="https://infosec.space/tags/XML" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>XML</span></a> file and <a href="https://infosec.space/tags/tnsr" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tnsr</span></a> should have support for <a href="https://infosec.space/tags/Ansible" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Ansible</span></a>... </li></ul><p>Maybe <span class="h-card" translate="no"><a href="https://mastodon.social/@geerlingguy" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>geerlingguy</span></a></span> is having a closer look at <a href="https://infosec.space/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> / <a href="https://infosec.space/tags/CD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CD</span></a>-ing <a href="https://infosec.space/tags/SDN" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SDN</span></a> distros.</p><ul><li>Personally, I'd stick to non-automated but well documented networking <a href="https://www.youtube.com/@LAWRENCESYSTEMS" rel="nofollow noopener noreferrer" target="_blank">like</a> <a href="https://infosec.space/tags/LawrenceSystems" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LawrenceSystems</span></a>.</li></ul>
Stefan Eissing<p>I love how fast the curl CI jobs have become. In less than 5 minutes, we see success or failures in more than 100 build combinations. Huge.</p><p>Many thanks to <span class="h-card" translate="no"><a href="https://mastodon.social/@vsz" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>vsz</span></a></span> for the heavy lifting!<br><a href="https://chaos.social/tags/curl" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>curl</span></a> <a href="https://chaos.social/tags/ci" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ci</span></a></p>
Jan Wildeboer 😷:krulorange:<p>Time for a hot cocoa and deep sleep after this old man has yelled at clouds to get <a href="https://social.wildeboer.net/tags/woodpecker" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>woodpecker</span></a> <a href="https://social.wildeboer.net/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> to work without throwing a warning. Ultimately it was a mixture of typos and not optimal documentation for a IMHO breaking change in handling secrets. But it's sorted thanks to the patience of virtual friends who squirmed along with me. The whole little drama at <a href="https://social.wildeboer.net/@jwildeboer/113641515179786589" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">social.wildeboer.net/@jwildebo</span><span class="invisible">er/113641515179786589</span></a> :)</p>
Hugo van Kemenade<p><span class="h-card" translate="no"><a href="https://mastodon.social/@bagder" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>bagder</span></a></span> </p><p>During November 2024, the <a href="https://mastodon.social/tags/CPython" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CPython</span></a> project ran exactly 96,697 CI jobs on GitHub.</p><p>That's an average of 134 CI jobs/hour.</p><p>The average run-time per job was 5m 37s.</p><p>That means we spent 13.97 days of CPU time per day.</p><p><a href="https://mastodon.social/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a> <a href="https://mastodon.social/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> <a href="https://mastodon.social/tags/GitHubActions" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GitHubActions</span></a> <a href="https://mastodon.social/tags/GitHub" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GitHub</span></a></p>
Ariel (🐿 arc)<p>What are folk's approaches to integration testing against cloud stuff?</p><p>For example we have an Enterprise Application as an IdP in Azure</p><p>Do you usually mock it out? Have a long-lived nonprod instance? Terraform spin up and tear down?</p><p><a href="https://eigenmagic.net/tags/AWS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>AWS</span></a> <a href="https://eigenmagic.net/tags/Cloud" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Cloud</span></a> <a href="https://eigenmagic.net/tags/Testing" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Testing</span></a> <a href="https://eigenmagic.net/tags/DevOps" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>DevOps</span></a> <a href="https://eigenmagic.net/tags/IntegrationTesting" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>IntegrationTesting</span></a> <a href="https://eigenmagic.net/tags/PlatformEngineering" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>PlatformEngineering</span></a> <a href="https://eigenmagic.net/tags/CICD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CICD</span></a> <a href="https://eigenmagic.net/tags/CI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CI</span></a> <a href="https://eigenmagic.net/tags/ContinuousIntegration" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ContinuousIntegration</span></a></p>
183231bcb<p><span>AI email clients are officially outdated and being replaced by CI email clients. CI stands for "Cat Insertion."<br><br>Are you trying to read an email? A picture of a cat is overlaid on top, blocking half the message. Are you trying to write an email? Our CI autocomplete helpfully inserts cat pictures that have nothing to do with what you were trying to write. <br><br>You can opt out of CI features in settings if you're a Luddite who hates progress, but our app will forget your settings every time you relaunch it.<br><br>Also, all release notes are now written by cats.<br><br>Currently, our advanced CI features are only available on our email client. However, if you give us $1,000,000,000 in venture capital money, we hope to expand to put CI into a web browser, a word processor, a video chat meeting client, an operating system, and even hardware!<br><br>The future is meow.<br><br></span><a href="https://transfem.social/tags/Caturday" rel="nofollow noopener noreferrer" target="_blank">#Caturday</a> <a href="https://transfem.social/tags/CI" rel="nofollow noopener noreferrer" target="_blank">#CI</a> <a href="https://transfem.social/tags/AI" rel="nofollow noopener noreferrer" target="_blank">#AI</a></p>