Today was the scheduled day for PT 9.4 release. Beyond the usual enhancements and fixes, this was supposed to be the first version to ship with a Linux version and, as a bonus, also have a 64 bit client for Windows.
Things are working flawlessly with the C++ backend if you have a fairly modern compiler, be it VS2015/VS2017 on Windows or GCC on Windows and Linux. But while updating the object models that are used in this version, we arrived at some solutions that are not supported on older versions of C++.
The easy solution would be to disable those versions for this release only, but this is a minor release. Such changes should probably be done only in major releases, so the alternative is to delay 9.4.
We expect PT 9.4 to be out in two weeks.
The plan was to release today, explain the new features and also the long delay: 9.3 was released around 4 months ago. But since there is no release today, I’ll explain the delay today and keep the actual release on subject.
Since we have a well documented history on not delivering the Linux version on time and this release being late, I’d like to mention the fact that this time the two events are unrelated. Since 9.3 we were busy with another project, so for two months there was no work done on Z2.
And then came December. Around this part of the world, people will take long holidays if they can and I’ve been on holiday 3 weeks. So progress on the compiler was minimal in December.
But January was full throttle Z2 work. The previous efforts on Linux porting have payed of, and this time we managed to get the Linux version to work fully in around a week of extra work. It actually worked fairly well after a day in “hello world” scenarios, but there are hundreds of tests to be passed. This includes some custom porting and features to guarantee feature parity across operating systems.
The rest of the work was on cleaning up and enhancing the compiler, its object model, trait system and introducing the bind feature. These features will be explained in the release announcement.
Some other pieces of progress were updates to the docs and the doc generating system: both MD and HTML docs looks and behave now a lot better.
Some new parts of the compiler were open-sourced and so has ZIDE in its entirety (but with the non-functional debugging stripped out; no use submitting dead code to GitHub).
Hopefully this issue with the older compilers can be fixed on time and I’ll update again when the version is up!