Wednesday, 26 August 2015

Gource history visualisation.

Few days ago, one of my colleagues showed me one amazing tool to display the history from your repository. I thought this tool was only available for TFS as the tool was called (TFS Source control History Visualization) and it can be added to your Visual Studio easily through NuGet packages.
It's quite cool as it lets you see the files you are working on in a really nice graph using some force-directed based diagram. This reminds me of a similar diagram I was working on few years ago. You can read more about it here.
The tool that I've been using here is called Gource. It's really easy to use and it supports multiple types of repositories like SVN, GIT, TFS, etc. I've tried with all three and the results are excellent.

Here is a little demonstration of the tool running against one of my personal repositories: 

The command to get this running is as follows:

gource -1080x808 --elasticity 0.4 --stop-at-end --transparent --hide filenames --time-scale 4 --seconds-per-day 1 --auto-skip-seconds 1 --bloom-intensity 1 --bloom-multiplier 1 "C:\Source code\FlickrPhotoStats"

There are several ways for generating the video and some examples can be found here:
Latest version of the application can be downloaded here:

Saturday, 14 March 2015

Projects moved to Github

As you might be aware, Google Code Project Hosting is about to shut down so I have decided to move all my projects to GitHub as it was one of the options Google was offering. So here you have all my Delphi Open source projects for your entertainment. Most of them are already finished and not much is going on, but they are good for reference. Some of my active projects are already on GitHub and I do really like the platform:

Open Source Projects:
Projects that were already in Github:

I need to add the documentation, but I will be doing it over these weeks.

Thursday, 25 September 2014

"Cannot load SSL Library" using Delphi XE7

Delphi XE7 is using Indy version and if you want to use SSL components you now need to install OpenSSL. I'm using IdSSLIOHandlerSocketOpenSSL1 component for my FlickrPhotoStats application (you can read more about it here : Delphi REST client to retrieve flickr statistics ) that uses REST technology to retrieve flickr stats using the available API.

My tool used to work under Delphi XE6 without problems and after my upgrade to Delphi XE7 I can see that when it tries to use the IdHTTP component the following exception is thrown: "Cannot load SSL library". Basically the error is raised because now you need to install (*see comments below) you need to update OpenSSL as Delphi XE7 has a dependency with the latest library. Update it locally in your machine in order to use IndySSL components. At runtime, Indy loads two libraries: libeay32.dll and ssleay32.dll (these libraries are not distributed with Indy due to some restrictions exporting SSL technology). 

The easiest solution to fix this issue, is to download the following library:

This library among others can be found here: Win32OpenSSL.

NOTE: this solution is only applicable on Windows. I have only tested it under Windows 7 64 bits and it works fine.

Once the setup has been launched, select the following option:

After the libraries have been installed, the application will work without problems. DLLs can be found in the OpenSSL-Win32 directory also. With the selected option (Windows system directory) the libraries will be installed at C:\windows\SysWOW64 folder.

Update: KM mentioned that it's better to distribute the libraries with the app instead of installing the libraries under windows directory.

Update: Nicholas Ring has provided a very useful link for OpenDec (Home of OpenSSL DLLs & the Delphi Encryption Compendium), DLLs can be found here also:

If you are interested in my application, this can be found here:

Source code and binaries can be found here: