2025-09-14

Our Server Just Died Last Friday

As you may have noticed, our forum was not available since Friday evening until this Saturday afternoon (Paris time).

In fact, our Dedibox hardware, which was running fine for years, just break down, and was not able to reboot.
The Dedibox/ScaleWay/Online service answered to my ticket that... the server just died... and they were not able to reboot either. What I did not know is that they can't access the hardware, because there are other servers in the same chassis, so they can't fix it. Or even investigate further. Period. Nice service.

So pretty much killed dead.
:(

Eventually, I managed to setup a new server. In fact, it is now self hosted in my home (we have a symmetrical 8Gb/s fiber link) on a cheap mini-PC I had for testing. We will see in the future.
I had troubles about putting and configuring ProxMox on it, but now it seems running just fine. What a weird - but powerful - thing is this ProxMox. And nested firewalls are a real PITA. At least I have physical access to the server, so I could stuck in a keyboard and screen when I stuck myself out of the ssh. ;)

I spent the full weekend on it, since I did not made proper backup, and had to play with low level MySQL restoration. Now all sites are back to normal - as far as I can tell. :)
And we can say that now our project is hosted really from the mountains, from the marmots land - not in some huge tech farm of a big city suburb. Better than any cloud!

This blog will miss its last entries - from june. Only a few to be fair. I promise I will do better about backups next time. At least the forum is fully restored. :D
TL&WR:
Do not forget about EKON 29!

Any advice is welcome in our forum, as usual.
In the next days, I will be in Germany, for the Pascal Conference 2025. I may meet some of you!

2025-02-15

Join Us in Nederlands for a Coffee and More

The INTERNATIONAL PASCAL CAFE 2025 will take place at UTRECHT (IJSSELSTEIN), in Nederlands.

We are delighted to be part of the event, and speak about our little mORMot.

Continue reading

2025-02-01

Making a PRNG with AES

mORMot is a general purpose Open Source library, which features some advanced cryptographic primitives. It is written in modern object pascal, with some assembly for its core process. It is used since years in several security-sensitive projects, and has been audited internally by at least one billion dollar company.

We already spoke about this a few years ago. In the meanwhile, the implementation details of our CSPRNG (Cryptographically Secure Pseudorandom Number Generator), as it is currently in the mORMot 2 repository, have been tuned and proven. Time to share some more information.

Continue reading

2024-12-25

The Marmots Wish You a Merry Christmas

Just a small post to wish you all..

Continue reading

2024-10-16

Release of mORMot 2.3 Stable

It is time for a new mORMot release!

Continue reading

2024-10-12

Some Rodents in the State of Denmark

Since decades, Delphi has user groups everywhere, from Australia to Austria, from Russia to California.
I will join the DAPUG (Database Application Programmers Users Group), which is the Danish Delphi user Group, in the next weeks, for two exciting days of Workshop.

Continue reading

2024-09-06

Swagger/OpenAPI Client Generator for Delphi and FPC

OpenAPI, which was formerly called Swagger, is a set of specifications to encode the server API endpoints definitions into text, mostly JSON.
From this reference text, you can generate client code to access the service, in a vast number of languages.

Delphi seems to be far behind other languages, in terms of this code generation. I found nothing even working for FPC.
Since we needed it for our internal tools at Tranquil IT, we just published the new mormot.net.openapi.pas Open Source unit, which is quite a game changer. Thanks Andreas for starting this project, and testing it in its early age!

Continue reading

2024-02-01

IDocList/IDocDict JSON for Delphi and FPC

Since years, our Open Source mORMot framework offers several ways to work with any combination of arrays/objects documents defined at runtime, e.g. via JSON, with a lot of features, and very high performance.

Our TDocVariant custom variant type is a powerful way of working with such schema-less data, but it was found confusing by some users.
So we developed a new set of interface definitions around it, to ease its usage, without sacrificing its power. We modelized them around Python Lists and Dictionaries, which is proven ground - with some extensions of course.

Continue reading

- page 1 of 51