Hello all. As you may have seen in Haiku Depot, Version 2.0 of the Paladin IDE has just been released during the BeGeistert conference in Hamburg, Germany.
Thanks to all the help from everyone at BeGeistert, on IRC, and in these forums that supported me in taking a handle on the development for Paladin, and getting the release out there!
Version 2.0 of Paladin works on both 32 and 64 bit Haiku systems, and is tested on the Beta 1 image. It is mostly a major bug fixing release, working on everything from stability bugs, through UI/UX issues, and basically fixing any bugs introduced by Haiku updates over the last couple of years.
There are some improved features too. Paladin now invokes g++ rather than gcc, meaning you no longer need to explicitly configure the c++ std library on your projects. Library links are now portable from/to 32 and 64 bit, removing the annoying messages you used to get due to changing library paths. This works by way of a placeholder text in the project (pld) file. This means project files in this version of Paladin are not compatible with older versions, hence the 2.0 version bump. 2.0 can open older project files, and will upgrade them on saving.
ccache and fastdep are also fully tested. This makes executing builds in Paladin even faster. A full build of Paladin itself using Paladin takes just 6 seconds now on my machine. Incremental rebuilds are even faster, especially with fastdep enabled.
I also worked with @KapiX to ensure Paladin works well with Koder. If you set Koder as your preferred system editor for Source Code files, then Paladin will launch Koder to edit them. Even better, if a build g++ error occurs, double clicking on it will open the relevant source file and line in either Pe or Koder, and for Koder will jump to the specific column too. This has maked developing Paladin very quick!
Upcoming 2.2 release
The next release will be 2.2 (I’m going to reserve the odd minor version numbers for urgent bug fixes to releases). This release is aimed at enabling Paladin to be coded, built, tested, and debugged, including version control, from entirely within Paladin. This will make Paladin a nice place to live within for developers, with a focus on removing obstacles to developers getting their work done, and making everything efficient.
A particular focus will be on preparing a set of plugin API to allow future extensions to be added by myself or others, including language support (Paladin will soon not be just for C++ development!), new build systems, source control systems, and output / log file parsers. That plugin system was tested over the weekend and is 90% feature complete. It is a generic approach, and useful for other apps that need to include easy plugin support too with minimal extra coding.
I’ll also include the initial test feature of in-app tutorials for the new features of the 2.2 release. This will form the backbone of the 2.4 release’s samples, tutorials, and template projects - greatly aiding new developers on Haiku. Initial feedback from the 2.2 release will inform how tutorials are implemented within Paladin in future.
There is no firm target date for the 2.2 and 2.4 releases, as I know I’ll be very busy over the next 2 months until the new year, and refactoring for the plugin API will take a long time due to how Paladin’s code base has evolved over the years. Doing the work now though will greatly ease future versions’ development time.
Hopefully Paladin will become your IDE of choice, or even convince you to leave the command line and embrace the open and customisable environment of Paladin! It’s not quite there yet, but over the next 3-6 months will hopefully improve dramatically.
Thanks for all your support!