Two and a half week ago we announced a new build, and we have not released it yet, so we think it is time to fill you in on the details about what is going on.
The new build was almost ready a week ago, and then Microsoft released new builds of Visual Studio 2017 (15.3 and 15.3.1).

Unfortunately there are some breaking changes in this build that may result in Visual Studio locking up when you build a XSharp project. That is not good. We have heard about other project systems with similar effects. The problems seem to be related to changes in MsBuild.

Some of you will say that this is "typically Microsoft", but we strongly disagree with that:
We have had a very pleasant and smooth experience with the integration of our project system in VS 2017, from the early builds since April 2016 until last week.

At this moment we are investigating how to resolve the issue, so we can release an update that does work inside Visual Studio 2017. It is difficult to say how long that will take.

For now we strongly recommend NOT to update Visual Studio 2017 when you don't have to.

If you are running Visual Studio 2015 you should not experience any problems.

The good news is that we have had the time to add some more features to the VS integration in the last week. You can also expect support for editing VO Menu binaries as well as a first implementation (but not completely finished) of smart indent.

 

After the Anjou releases beginning of last month we have been a little quiet. After all it is summer time and we needed to spend some time with the family.
But we have not been sitting on our hands. On the contrary. You have seen that we have been quite busy supporting people starting to convert their VO and Vulcan code.
And we have also developed some new things. These things are listed below.

We expect to release a new build to our FOX subscribers end of this week, beginning of next week. Stay tuned for more info.

Compiler

  • Added support for XML doc generation. We support the same tags that the C# compiler and other .Net compilers support (in fact we are using Roslyns XML generation feature for most of the work).
  • Improved some parser errors.
  • Created separate projects for portable and non portable (.Net framework 4.6) for the compiler and scripting. We will now install 2 sets of DLLs on your machine.
  • Fixed the code generation for conversion from USUAL to a known type. Now the same runtime error is generated that Vulcan produces when the object type in the usual does not match the type of the target variable
  • When declaring a type with the same name as the assembly in which it is defined a compiler error is generated with a suggested work around.
  • Fixed a strange compiler message when using a PTR() operation on a method call

Scripting

  • The scripting was not working in release 1.01

Visual Studio Integration

  • QuickInfo could generate a 'hang' in the VS editor. This has been fixed
  • Added quickinfo for globals and defines
  • Added completionlists for globals and defines
  • Added VO Form editor to edit vnfrm/xsfrm files and generate the code and resources
  • Added keyword and identifier case synchronization.
  • Fixed a problem where typing "SUPER(" in the editor could throw an exception

VO Xporter

  • Fixed a problem when importing certain VO 2.7 AEF files
  • Fixed a problem with unacceptible characters in the solution folder name

We have just released XSharp "Anjou" Update 1.

This update fixes some issues that were found in the last week:

Compiler

  • Fixed a problem with VERY old versions of the Vulcan Runtime (early Vulcan 2 versions)
  • Variables declared as DIM Byte[] and similar are now Pinned by the compiler
  • [Return] attribute was not properly handled by the compiler. This has been fixed
  • Compound Assignment (u+= f or -=) from USUAL and FLOAT were causing a stackoverflow at runtime caused by a problem in the Vulcan Runtime. These expressions now generate a compiler error with the suggestion to change to a simple assignment ( u := u + f)

Visual Studio Integration

  • Project References between XSharp Projects were also loaded as assemblyreference when resolving types. This could lead to speed problems and unnecessary memory usage
  • Improved the speed of the construction of Completion Lists (such as methods and fields for a type).
  • We have also added Completion List Tabs, where you can see fields, properties, methods etc. on separate tabs. You can enable/disable this in the Tools/Options/Text Editor/XSharp/Intellisense options page.

VO Xporter

  • We have added a check to make sure that the default namespace for a X# project cannot contain a whitespace character

On behalf of the Devteam I want to thank you all for the nice feedback that we got in the last week.This is really appreciated !

We are VERY pleased to announce that we have released XSharp "Anjou" (build 1.0.1) to the general public.

This new build differs only from RC 5, that was released last week, in a few issues with Visual Studio integration.

FOX subscribers can download their version from the FOX download area on this website. Other users can download their version from the General section on this website.

The difference between the two versions is that the Compiler in the FOX version is a little more optimized, so a little faster.

And FOX subscribers will get personal support from our development team in return for their support for the development of the product.

If you are not a FOX subscriber, now is the perfect time to join. We offer a 30% discount to all new members until August 31, 2017

We also offer a Compatitive Update for active VOPS/VPS subscribers. Click here for more information

We are very happy that we can announce that, a little bit later then planned, we have uploaded XSharp "Anjou" Release Candidate 5 to the download folder for FOX subscribers.
As you can see from the version number we have been ready for a while, but internal QA has found a couple of (very small) things that we wanted to fix before releasing the product to our customers.

RC 5 will be the same as the General Release, unless one of our customers finds a show stopper in the next couple of days.

The General Release will most likely be released beginning of next week (July 3 or 4).

Some of the highlights of this release:

We are proud that we can announce that the final beta of X# (Beta 12) has just been released to our FOX subscribers.
Some of the changes in this build:

  • We have migrated to the Roslyn codebase for C# 7. That will allow us to add many new language features in the not too far future and also solves some small problems from the earlier codebase.
  • The build contains some changes that make the compiler more VO compatible.
  • We have added support for X# Scripting.
  • We have made many improvements to the Visual Studio integration.

For a complete list of changes look at the what's new document in the General/Downloads section on this website.

If you want to support the X# project, it is not too late. We have a special 30% discount to celebrate the 20th anniversary of Visual Studio. This special offer is valid until June 7. Click here for more information.

Finally: we have also received another great customer example from Wolfgang Riedman, his "Door Configurator".
Look in the examples section on this website for more details about this example.

 

Already 3 weeks have passed since the conference in Germany and it is time for an update.

The conference was a big success. At first it looked like the number of attendees were going to be disappointing, but you have all waited until the last moment for signing up. The number of attendees was larger than last year, so we are making progress ! Next years conference has already be planned for April 16-18. Block the date in your calendar.

Three of our team members were present at the conference. I (Robert) would like to mention two sessions in particular because I thought they were very impressive:

Fabrice showed how he created a standard Winforms app on his windows computer and was able to (xcopy) deploy it to a Linux machine and to a Raspberry Pi running Debian with ZERO code changes. Both machines were running Mono and his apps run smoothly (albeit a little slow on the Raspberry Pi).
He also accessed a MySql database on his desktop from both the Linux machine and the Raspberry PI and was able to control a external USB device from both the Windows machine as well as from the Rapberry PI with zero code changes. Very impressive.

At the xBase.Future conference this week we have announced several things that we like to share with you as well:

The first GA release of X# is expected in the coming months

This first release will come with:

  • The compiler
  • The VS Integration for VS 2015 and 2017
  • Tools to migrate VO applications to X#
  • Tools to migrate Vulcan.NET applications to X#
  • Full support for the .NET Framework 2.0 - 4.7, as wel as many other frameworks, such mono, Xamarin etc.
  • Full support for Vulcan.NET 3.0 and 4.0 runtimes and RDDs
  • X# applications will run on all platforms that support .Net framework (windows, mono) when compiled for AnyCpu of when compiled for a compatible processor (x86, X64, Arm)

Later in 2017 you can expect

  • The X# Runtime with support for most xBase RDD formats, runtime functions, thread safe etc.
  • A Macro compiler that is based on the X# scripting support that we have demonstrated during XBase.Future. The macro compiler will support weakly typed an strongly typed codeblocks, and will not only be restricted to compiling expressions but will also support statement (such as for next, foreach etc).
  • The X# visual studio integration will be extended with support for .Net Core projects, .Net Standard projects, Universal Windows projects an so called "shared" projects

A revised 'roadmap' document will be published at this website in the coming weeks.

Finally

A new public beta (Beta 11) of X# is available for download for free from the downloads section on this website,