You should have noticed that Delphi 10.1 Berlin has been released. Our Open Source projects, including mORMot and SynPDF and their associated documentation have been updated to support this new revision. Any additional feedback is welcome, as usual!
Support of Delphi 10.1 Berlin
2016-04-22. Open Source
GitHub temporary unavailable from comand line?
2015-03-30. Open Source
Perhaps it is due to a lot of projects moving from closing Google Code to GitHub, but I experimented some GitHub random communication errors since last week.
Benchmarking JsonDataObjects JSON parser
2015-02-16. Open Source
There is a
new player in town.
Since it has been written by Andreas Hausladen, the maintainer of the great Delphi IDE fix packs, this new JSON library is very promising.
And in fact, it is fast, and sounds pretty great!
Here are some numbers, compared with SuperObject, standard DBXJson, dwsJSON, QDAC and mORMot.
Please refer to previous benchmark articles about those libraries. We will now focus on JsonDataObjects.
AES-NI enabled for SynCrypto
2015-01-15. Open Source
Today, we committed a new patch to enable AES-NI hardware acceleration to our SynCrypto.pas unit. Intel® AES-NI is a new encryption instruction set that improves on the Advanced Encryption Standard (AES) algorithm and accelerates the encryption of data on newer processors. Of course, all this is […]
Website of the day
2014-07-04. Open Source
Just wanted to share some awesome SOA revolutionary idea, on 4th of July... You should take a look at http://devnull-as-a-service.com ! DAAS rocks! We will write certainly a native mORMot provider for this great data provider. This is another great Open Source project (full code is included).
Tip about Fossil ticket reports
2014-06-27. Open Source
It appears that version 1.25 of Fossil did change the ticket storage behavior:
Enhancements to ticket processing. There are now two tables: TICKET and TICKETCHNG. There is one row in TICKETCHNG for each ticket artifact. Fields from ticket artifacts go into either or both of TICKET and TICKETCHNG, whichever contain matching column names. Default ticket edit and viewing scripts are updated to use TICKETCHNG.
As stated by the official Fossil Change Log.
It appears that it just broke existing reports, so we had troubles with display of the ticket on our site.
Since we managed to find a workable solution, we would like to share it on our blog, to save other users time!
Think free as in free speech, not free beer
2014-02-28. Open Source
After more than 5 years of opening some huge part of Delphi code base, just my two cents.
Free software means free as a bird.
In practice, most Open Source "consumers" focus on free as a free
This is a reality, especially for "niche" projects like developing libraries for Delphi.
Here are some thoughts from my little experiment with mORMot.
If you ask what Open Source for libraries mean, it may help you!
New Open Source Multi-Thread ready Memory Manager: SAPMM
2013-12-05. Open Source
Do you remember this former article about scalability of the Delphi memory manager, in multi-thread execution context?
Our SynScaleMM is still experimental.
But did pretty well, for an experiment!
At first, you can take a look at ScaleMM2, which is more stable, and based on the same ground.
But a new multi-thread friendly memory manager for Delphi just came
It is in fact the anonymous (and already famous) "NN memory manager" Primož talked about in his article about string building and memory managers.
(Note that in this article, our SynScaleMM was found to be scaling very well, but on the other hand, Primož did compile its benchmark program in Debug mode, so our
TTextWriter was not in good shape:
when you compile in Release mode, optimizations and inlining are ON,
and our good
TTextWriter just flies... See the note at the
beginning of the article - this is why I never find those benchmarks very
informative. I always prefer profiling from the real world with real useful
process… and was never convinced by any such naive benchmark.)
OK, back to our business!
SapMM is an interesting beast.
Sounds like if Alexei (the initial coder) has a C coding background. But
that's fine when you have to deal with low-level structures and algorithms, as
required by a memory manager.
It features everything we may ask for such a piece of code: clear design, optimized code (mostly by inlining process), memory leak reporting, some parameters for tuning.
It is only for Delphi XE (and up) under Win32 by now, but contributors are
It is used in production since more than half a year, and it passed all FastcodeMM benchmark tests.
If you want a direct link of the today's source code, without SVN, you may
try this direct link from
(but it probably will never be updated - you are warned)
How to unzip or zip files content
2010-07-11. Open Source
Didn't you ever wanted to unzip some archive content, or embed a zip file into your exe?
Didn't you ever wanted to create a zip archive file, from some data in memory, in pure Delphi code, without using any external dll?
One of the open source unit we use allow you to do these tasks in a easy way.
New Source Code Repository
2010-06-23. Open Source
A source code repository is now available, and will centralize all future source code update.