News of the Week

We shipped a virtual smorgasbord of stuff last Friday. Let's have a look.

Units of Measure

This is one of the coolest language features we ever added to Oxygene, and it will eliminate a whole class of bugs and allow for more intuitive code and APIs, especially, but not only, in the scientific community. We have a whole blog post covering it. Adopting it across Elements RTL and RemObjects Infrastructure already let us catch at least two separate bugs regarding seconds vs. milliseconds.

CodeBot for Delphi

But the star of the show this week is CodeBot, more specifically CodeBot for Delphi. We have a detailed blog post, and a brand new introduction video you can watch on YouTube or RemObjects TV.

CodeBot Server Credits in GitBrowser and CodeBot for Elements

Both GitBrower and CodeBot in Fire/Water can now optionally connect to CodeBot Server, so you can use your CodeBot Credits insead of having your own OpenAI Key. This is especially useful if you're mainly a Delphi developer, but want to use GitBrowser's intelligence or have a first play with Oxygene.

GitBrowser for Windows

GitBrowser, our powerful and free Git GUI Client, which used to be Mac-exclusive, is now available in a fully native Windows version, made possible thanks to the cross-platform power of Elements and the coding skills of CodeBot, which did pretty much all the work in a weekend.

Fire on .NET Core (Preview)

As you may know, Fire, our Mac development environment for Elements, is a truly native Cocoa app written in Elements itself. But it uses Mono under the hood to host the compiler and IDE smarts that drive features such as Code Completion, Refactoring, Go-To-Definition and more. That's because the compiler itself is pure .NET.

Mono, alas, has been deprecated and unmaintained for a while, and the .NET platform has evolved and moved on from classic .NET as well, with .NET Core.

This week, we're shipping two new builds of Fire.

  • Build .3101 is the normal Fire you know, same as always, except of course with all the new goodness that's in this week's version of Elements.
  • Build .3103 on the Experimental channel has all the same features, but instead of Mono uses .NET Core 10 to host the IDE smarts. It ships with the same .3101 compiler.

Getting Fire to .NET Core was no easy feat; it involved a full port of Marzipan, our open source Mono/Cocoa bridging layer, to support .NET Core. It also involved a significant rewrite of our .NET Core debug host, which used Windows-only APIs, to now run on Mac (and Linux).

I've been using Fire/.NET Core for a while now as my main system, and all seems to be working fine. But your testing and feedback would be appreciated before we merge this into the main line, probably in a few weeks.

Fire, of course, will still support building and debugging apps for Mono and Classic .NET 4.x. In fact, it will keep shipping its current bundled dual-architecture Mono runtime for a while, to make it easy to still run Mono/arm64 projects. Probably for as long as Mono keeps working on macOS...

Earth for Linux (Early Preview)

Lastly, speaking of platforms, we have another small little thing that shipped as a very early first preview this week; it's called Earth, and it runs on Linux.

We'll talk more about Earth next week, but if you have an active Elements subscription and you work on or are interested in working on Linux, you might want to have a peek at the Experimental channel downloads for it.