Similar to my post about Elements last week, I also wanted to give you a brief update on where we are with Data Abstract and RemObjects SDK version 9.

First though, you’d might like to know that on popular request we shipped a small interim update to 8.3 on Monday, with official support for the new “Delphi 10 Seattle” (who names these things?). The update covers the Delphi versions of RemObjects SDK and Data Abstract, as well as Hydra, and is a very minor update that only focuses on the new Delphi version.

The beta for version 9.0 is progressing very nicely. We shipped our first major beta drop on Monday, build .1185, and it contains several significant new features.

To start with, you probably already heard or read about the new Code-First server support we introduced for .NET in the first beta, a few weeks back (if not, you should read up on it here). Essentially, Code-First allows you to design and update your services purely in code, without the need for a RODL file own your server, and without using Service Builder. With this week’s beta, I’m thrilled to announce that Code-First server support has also come to Delphi. My colleague Eugene has provided a detailed overview here, and it’s really cool.

This means that regardless of your choice of server platform, you now get the full benefit of Code-First.

We’ve also started making a lot of improvements to help you avoid a bunch of boilerplate code in your projects. It used to be, when you started a new RO/.NET server project, you would get a bunch of source files created that were largely uninteresting – a Windows service class, a service installer, a main form, an “Engine” class, and so on. No more! As of the last beta already, a full RO server can be up and running with literally a single line of code: new AppServer().Run().

Combine this with Code-First services, and creating a fresh server app has never been easier! Of course you can still configure the AppServer instance in more detail, if needed – via properties, or via the existing configuration file mechanism of the NetworkServer class.

New in this week’s beta, we have added brand new project templates for all five supported .NET languages (Visual C#, Visual Basic, Oxygene, RemObjects C# and Swift), both for Code-First and for traditional RODL-based servers, that take advantage of this new start code.

If you’re using Fire, then the current beta also includes the new Code-First project templates for you. With that, it’s now incredibly easy for Mac and iOS developers to create remote services in Swift, without even needing a Windows VM to run Service Builder in.

As with Code-First services, the new “boilerplate code” changes debut in the current beta for .NET, but they’ll expand over to Delphi in future betas, before RO9 will ship.

Moving over to the client side, we’ve also made lots of improvements to RO and DA for Cocoa. For one, we now ship frameworks (for Mac and iOS) that are ready to be more easily consumed by Apple’s Swift compiler in Xcode. We’ve started annotating all the header files for Swift compatibility – adding nullability and generic infos to many classes. This makes the RO and DA APIs more convenient not just from Swift, but also from Oxygene and C#.

We’re also now including a version of RO/DA for watchOS and, for the next beta, will have pre-built frameworks for tvOS as well.

All of this is of course rounded off by the usual number of smaller fixes, tweaks and enhancements that go into every new version. And we’re not done yet for v9, with more features we haven’t talked about yet coming in future beta drops.

How to get it

How do you get your hands on the goods?

As always, if you’re an existing customer with a active subscription, you have full access to beta drops at Go ahead and grab the latest beta now, and let us know what you think. It should be fairly stable, even for production work.

If your subscription has lapsed, now is a great time to renew, for immediate beta access and a fresh new year of updates.

When will it ship?

We don’t have a firm timeline for RTM, because we know the new features are already available (and production-ready-ish) to you via the beta. So we focus on getting everything good and solid in its own time, and will ship when it’s ready™. That said, we do anticipate to ship RO9 well before the end of the year, probably around November.

That’s all from me for now. I hope you enjoy the beta, and are looking forward to RO9 as much as we do.

Let us know what you think, on the forums or via reply to this post.

marc hoffman
Chief Architect,
RemObjects Software