We have just released XSharp "Anjou" Build 1.02 to our FOX subscribers
This release fixes the bug that some of our users have experienced with Visual Studio 2017 build 15.2 and later.
We have also added many new features in Visual Studio and have made some smaller improvements to the compiler.
Unfortunately we found some issues in the Visual Studio integration with the Smartindent and Format Document features, so we have decided to disable those in this build.
FOX subscribers can download the installer for the new version in the downloads area on this website

Below is a list of the most important changes in this build:

Compiler

  • Added support for XML doc generation. We support the same tags that the C# compiler and other .Net compilers support.
  • When declaring a type with the same name as the assembly now a compiler error is generated with a suggested work around.
  • Indexed access to bytes in a PSZ is now 1 based like in VO when the VO dialect is used. The Vulcan dialect needs 0 based index access like Vulcan.
  • For ambiguous code where the compiler has to choose between a Function call and a static method call in any other class, the compiler now chooses the function call over the method call (Vo and Vulcan dialect). The warning will still be generated.
  • When passing a variable by reference with the @ sign the compiler will now check to see if the declared type of the function/method parameter matches the type of the local variable.

Scripting

  • The scripting was not working in release 1.01

Visual Studio Integration

  • Fixed a 'hang' that could occur with Visual Studio 2017 version 15.3 and later
  • 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 VO Menu editor to edit vnmnu/xsmnu files and generate the code and resources
  • Added VO DbServer editor and VO Fieldspec editor to edit vndbs/xsdbs and vnfs/xsfs files and generate the code and resources
  • Added keyword and identifier case synchronization.
  • Prebuild and Postbuild entries in the project file are now configuration specific
  • Added support for XML Doc generation in the project system

VO Xporter

  • Fixed a problem when importing certain VO 2.7 AEF files
  • Fixed a problem with acceptable characters in the solution folder name
  • VO Form and menu entities are also included in the xsproj file
  • Added an option to the INI files to specify the Vulcan Runtime files location (RUNTIMELOCATION)

 


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.