Tideland

Tideland Go Actor v0.3.0

I’m happy to share with you some news about the new release v0.3.0 of the Tideland Go Actor. This new version comes with a handful of exciting updates and improvements that make it easier and more efficient to work with Actors in Go. One important change in this release is the addition of the Repeat() method. This new feature allows developers to run background Actions in intervals, making it easier to handle long-running tasks in the background.

Tideland Go Slices v0.1.1

So far I had not missed generics in Go. Much could be solved via interfaces or closures. And with the disgusting syntactic aberrations of other languages when dealing with generics, I was rather afraid that the elegant simplicity of Go could be lost. As of Go 1.18, Google’s language now handles generics after much discussion. I have always appreciated the implicit simplicity with which, for example, types in a statement like

Tideland Go Wait v0.2.0

The package Tideland Go Wait reached v0.2.0 due to a new added feature. It now contains the type Throttle to provide a limited processing of events per second, e.g. for web handlers. The events are simple closures or functions with a given signature. The limit and a burst size for the maximum number of events during one call are defined at throttle creation. Example A throttled wrapper of a http.Handler.

Tideland Go Audit v0.6.5

There are times when you find a bug in your software. Today it had been in my testing library TIdeland Go Audit. Here the assertion ErrorContains() reacted with a panic in case of a nil error. So I fixed it like I already had done it earlier in ErrorMatch(). Interestingly I found in testing that I didn’t verified it there. So this test is now changed too. Additionally during tests for a different library with high concurrency I, or better go test during the tests, discovered a race condition.

Migrated Go Actor and Go Wait

As described a few days ago, I am migrating individual packages of the Tideland libraries to own repositories. I’ve described my motivation for this before. In the meantime, two more packages have been migrated to the main level: Tideland Go Actor and Tideland Go Wait. The package Tideland Go Actor pursues the idea to realize concurrency in Go not only via CSP, but with the Actor Model. It picks up the concept of the Erlang/OTP module gen_server.

Make it easier to find

A look at the Tideland Go repositories shows that these today are libraries for individual topics with various packages included. One problem with this form of organization is that these packages are difficult to find. At the same time, their individual histories and their versions are tied to those of the entire library. This must be improved. Therefore, the reconstruction of these projects has now begun. The packages from the repositories move to the main level and become independent projects.

Tideland Go Audit v0.5.0

I’ve mentioned before that I’m currently reorganize my Tideland Go Libraries - once again. I’m sorry for it and it will be interesting just for those who want to participate in development. The import into your own projects will stay the same. This time it’s about the Tideland Go Audit library, I’ve just released the new v0.5.0. It’s a well approved and robust library containing helpful packages for testing. So the update only contains a few changes.

Change of top level domain to dev

On Feb 28th the top level domain .dev has been available for all. So for me as a developer it’s the best possible TLD to get. One day later I reserved two different ones: themue.dev as a replacement for my former personal domain themue.name and tideland.dev as a replacement of all my different Tideland domains into one. The personal domain is now changed, the Tideland domains will follow these days. Then I also have to change the new Go mono repository I’m migrating my packages to.