March 17, 2020
Embarcadero officially announced the plans for the 10.4 beta, which will be available to Delphi customers on update subscription.
In a blog post by Sarina DuPont, Embarcadero has announced the plans for 10.4:
https://community.idera.com/developer-tools/b/blog/posts/get-ready-for-the-10-4-beta-with-update-subscription
The article includes the plans for the beta, which will be made available to all active Update Subscription customers of Delphi. RAD Studio, and C++Builder. It also highlights the key features we are expecting (no promise, of course) to deliver. Specific to Delphi are:
- Language Server Protocol for Delphi
- Language Enhancements: Managed Records
- Unified memory management across all platforms
- VCL High DPI Styles Support
- VCL Per Control Styling
- New VCL Components
- GetIt Package Manager Enhancements
- Unified Installer for Online & Offline installations
- Metal 2 GPU driver support (macOS/iOS)
- Apple API Updates
- Windows API Updates
- LiveBindings Performance Enhancements
There will also be a large number of bugs and issues addressed, along with many smaller by relevant features. The Update Subscription customers beta hasn't started yet, but remember that it will be available only if your update subscription is active.
posted by
marcocantu @ 9:18AM | 10 Comments
[0 Pending]
10 Comments
Get Ready for 10.4 Beta
Please don't forget to include box2d lib for android 64, as was in last
release
Comment by Sergionn on March 17, 09:56
Get Ready for 10.4 Beta
Hi,
please could you explain more details about 'LiveBindings
Performance Enhancements'?
Regards
Comment by Koru on March 17, 10:25
Managed Records
Is new Managed Records behavior same as described here: https://blog.marcocantu.com/blog/2018-november-custom-managed-records-delphi.html or something changed since 2018?
Comment by walker
[]
on March 17, 13:06
Get Ready for 10.4 Beta
"Language Enhancements: Managed Records" - are they unusable as the "var enhancement" because of the non-functioning code/error/whateverinsight? Or has this been fixed - which would be great!?
Comment by Dennis on March 17, 13:31
Get Ready for 10.4 Beta
Walker,
the implementation is different but the core concept very similar.
Dennis,
the fact the IDE shows a non-existent error is clearly an
annoyance (and one we are addressing) but the language feature
has been working great
BTW -- need to figure out why the comment formatting is weird
and with scrollbars...
Comment by Marco Cantu
[http://www.marcocantu.com]
on March 17, 16:15
The new language features block standard source tools
Sorry, no, it's not just "annoying" - the whole refactoring / find declaration and all other standard source tools like completion and helpers won't work anymore from the point a new lanugage is used in a source code - which renders those features totally useless, since you can't navigate in your source anymore, using refactoring doesn't make any sense because most of the source isn't refactured, you can't jump from one inherited function to the parent one, etc. all this has to be done now manually (by finding the unit, using search, etc) which is too time consuming. We completely disallowed the new language features because of that. And no, nobody cares about the IDE errors top right since years, as long as the source "tools" work. It's not just a visual problem.
Comment by Dennis on March 17, 19:38
Get Ready for 10.4 Beta
Hi Marco,
Will the Language Server Protocol for Delphi enable in future
having some kind of Intellisense for Delphi language in IDE such
as Visual Studio Code? It would be great because, remote
debugging is not optimal when developing for Linux and MacOS,
and an IDE like Visual Stdio Code would be enough for non-visual
stuff if there was a Delphi plugin.
For the unified memory management, I have a mix filling about it.
I am quite sure that it will be very welcome for sure by Delphi
programmer. On another hand, it will be difficult even more
difficult to convince new people that Delphi is a really modern
language without garbage collection. Here you will have to make
evangelist work, to tell the people that there are drawback by using
GC. For example experienced programmer knows that even with
Garbages Collection you can have memory leak, very nasty
memory difficult to get rid. In one project in c# I get a nasty one
related to binding! Also with GC there is performance penalty, and
it make integration of native code c++ in c# more difficult than in
Delphi.
For Box2D I totally agree, keep this in the product with support for
all platforms. I know that there were problem with iOS64 and
MacOS (at least with Berlin version). I mean, if I had to teach
something related to Delphi with schoolboy, I would start with
Box2D. I had a lot fun with it.
Improvement for GetIt is very welcome. Currently, it is far from
being the equivalent of the nuget in .net world. It should be more
open to manage own project dependencies, there should be a
command line tool. I think it is really a must to be able to manage
large distributed projects.
Livebindings performance improvement is for me maybe less
important than Livebinding that it is ease (enable) implementation
of the MVVM patterns. ExtJS does have live bindings and MVVM
(and MVC) pattern. You can even mix both pattern, and that is
really great. But how can you have a lot of users from Delphi
learning ExtJS, if Delphi is not really good language for
implementing MVVM pattern? Also If you teach programming,
you may begin with data structure and continue with design
pattern. So good language support to implement design pattern is
very important.
Also one point that I miss in Delphi Enterprise is a Memory Leak
Profiler. For the Delphi Enterprise price tag, there should have one
out of the box. It is probably the tool I am using the most in Visual
Studio Enterprise edition ... well in c#, you know you have GC...
Comment by Alexandre Jacquot on March 17, 20:54
Get Ready for 10.4 Beta
Great to see these enhancements, looking forward
to see it.
Comment by Herbert Sauro on March 18, 14:39
Code Insight 10.2.3 & future development
Hi,
Code Insight and refactoring or find declaration still not work in
the IDE (tried a lot with re-install and so on). I also read the same
in some posts in the internet and I can't understand why this is still
not fixed. Every vendor fixes bugs that are reported and does not
want you to buy a new version or subscription (warranty?). I
started with Delphi in the early 90s so this not my first experience
regarding this. Somehow I regret this but over the years now I
decided to leave and our development team will migrate next year.
When I read again and again here, that customers complain about
some stuff or bugs since many versions and then this is turned
around as "but this is working great, only this little thing" I can't
here it anymore and I suggest you to listen to your customers, to
improve bug handling (also without subscriptions) and bring out a
stable and comfortable IDE. This is not the case, it crashes and
hangs and I laughed about when I read about double memory for
the IDE. I would not wonder if you would not accept my post as it
is not PRO this product but it is the truth and simply check your
your market shares. I saw features in VS that are very useful and I
also miss something like AQTime or similar. Bugs with layout
manager are still not fixed? Support for web frontends planned
somehow? Most applications the users want it to have for the web
today. Update/Bugfix still needs complete uninstall and reinstall? I
think it is time to leave after more than 20 years, but you already
lost a lot of Delphi developers and community. This does not
happen because the product is focussing so great to the market and
the users... Think about it.
Comment by GerDev
[]
on March 24, 21:28
Get Ready for 10.4 Beta
Hi Marco,
I'm looking forward for this beta, but I agree with Dennis when he
says "no, it's not just "annoying" - the whole refactoring / find
declaration and all other standard source tools like completion and
helpers won't work anymore"
Please introduce the concept of "Fault tolerance" to your ingeneers.
Even if completion lags behing language features it should
NEVER EVER stop and cancel at the first error encountered.
Doing so may look as it works on a small demo with 3 units, but
on a big projet with 3000 units it will fail all the time and leave us
with a dumb "notepad" style editor capable of nothing.
"Fault tolerence" is the key until you fix everything, keep what was
allready gathered, ignore the error, and find a way to skip and
continue. "Fault tolerance" is a concept that should "speak" to
ingeneers, please make them focus on it to provide an urgent globa
solution instead of bug by bug individual fixing (but still do it
later).
Even if I also believe the new language features are the cause of
the bad completion and helpers behaviour, you can not leave it in
such a state for 10.4 and should avoid it happens again when more
features are added in next versions because it is very irritating for
users (see post above). Not just an annoyance, a real frustration
that generates great irritation.
Comment by Chris on April 1, 08:30
Post Your Comment
Click
here for posting
your feedback to this blog.
There are currently 0 pending (unapproved) messages.