Agis 0.4 release

2022-11-23

I release version 0.4 of Agis this evening. This release adds a number of new features as well as greater stability. Agis has been serving this capsule over the Spartan protocol for the past six months.

Release notes

=> https://codeberg.org/jeang3nie/agis/releases/tag/v0.4.0

Binaries are available for the following platforms:

This has been a great learning project for me since it's inception. Rust provides some great networking and threading primitives in it's standard library and it's been nice to step away from the gui programming I do a lot of and work on something much more low level. It does, however, strain the brain sometimes when the compiler gets picky about eg. whether or not a certain type can be shared between threads. Indeed, I struggled with that initially when I attempted to add a requested feature - the ability to listen on both ipv4 and ipv6 addresses simultaneously. My original implementation required a separate thread pool for each address. This release wraps the thread pool in an Arc<Mutex<_>> wrapper, which can be cloned and sent into a new thread. Each listener runs in it's own thread, sharing the worker thread pool. I'm sure there are other ways of accomplishing the task.

Tags for this page

=> spartan
=> rust
=> software

=> Home | All posts

All content for this site is licensed as CC BY-SA.

© 2022 by JeanG3nie

=> Finger | Contact

Proxy Information
Original URL
gemini://gemini.hitchhiker-linux.org/gemlog/agis_0.4_release.gmi
Status Code
Success (20)
Meta
text/gemini;lang=en-US
Capsule Response Time
2313.952392 milliseconds
Gemini-to-HTML Time
0.7478 milliseconds

This content has been proxied by September (3851b).