From 4dcf759b8bd3b4a6a228cfc9ffbe8e25ff0951e3 Mon Sep 17 00:00:00 2001 From: Chewing_Bever Date: Thu, 20 Jul 2023 16:50:48 +0200 Subject: [PATCH] Added vieter-0.6.0 post --- content/posts/vieter-0.6.0/index.md | 62 +++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 content/posts/vieter-0.6.0/index.md diff --git a/content/posts/vieter-0.6.0/index.md b/content/posts/vieter-0.6.0/index.md new file mode 100644 index 0000000..d639d3b --- /dev/null +++ b/content/posts/vieter-0.6.0/index.md @@ -0,0 +1,62 @@ +--- +title: "Announcing Vieter 0.6.0" +date: 2023-07-20 +--- + +It's been a while since I've released a new version of Vieter. A busy semester +combined with a lack of interest in the project has definitely slowed down +development. Nonetheless, I've got a new release ready for you! + +## What's Vieter? + +Vieter consists of two central components: an Arch Linux (well, Pacman +actually) repository server that supports uploading package archives, combined +with a build system to populate this server by periodically building select +packages. The goal of this is to completely remove the need for an AUR helper, +and moving all build times to the cloud, allowing for smooth updates across as +many machines as required. + +## What's changed? + +This is a rather small update, and it mostly contains a few quality-of-life +improvements. + +For one, there's now a Prometheus metrics endpoint so you can integrate Vieter +into your existing stack. Currently the metrics are limited to API request +timings, but this could be expanded upon in the future. + +The API can now filter the list of targets, allowing you to more easily search +for specific targets. This functionality has also been added to the CLI. + +Builds can now be configured with a timeout, with build containers being +automatically killed if this timeout is reached. + +Behind the scenes, the codebase has been updated to a compiler commit after the +0.3.3 release, and the cron logic has been rewritten in C using the +[libvieter](https://git.rustybever.be/vieter-v/libvieter) library. Agents now +use worker threads, meaning they will not spawn a new thread anymore for each +new build. Package uploads now properly fail if the TCP connection was closed +before all bytes of a file were received. Lastly, the deprecated cron daemon +has been removed. + +### What's next? + +Throughout the last couple of months, I've grown more and more tired of the V +programming language, and the codebase in general. There's a lot of technical +debt present, and due to the limitations of the language and existing +frameworks, I've had to resort to questionable practices for a lot of the +features (e.g. POST request data as query parameters). Due to this, I've +decided to restart this project in Rust, under the name +[rieter](https://git.rustybever.be/Chewing_Bever/rieter). With this, I hope to +move away from this technical debt, and build a new solid foundation on which I +can further expand this project. I'm not going to be making any promises on +when this will be ready to replace Vieter, but I hope to get there soon. + +## Conclusion + +Just picture a very creative ending of this post here ;) + +If you're interested in Vieter, consider joining +[#vieter:rustybever.be](https://matrix.to/#/#vieter:rustybever.be) on Matrix! +The source code can be found on my personal +[Gitea](https://git.rustybever.be/vieter-v/vieter).