XSharp Cahors 2.7
- Details
- Created: 30 November 2020
Today we have released a new installer for XSharp Cahors 2.7 which contains several FoxPro related new features and fixes to bugs that were reported.
The what's new document describing all the changes (this build alone over 3 pages) can be found here:
{rsfiles path="general/Readme/whatsnew27.rtf"}
{rsfiles path="fox/Compiler/XSharpSetup27Fox.zip"}
Comments (2 Comments)Progress report Nov 23, 2020
- Details
- Created: 23 November 2020
It's time for another progress report.
We are working very hard to finish X# build 2.7. Some of the changes that you can expect in this build:
Compiler
- There are some changes to make X# more FoxPro compatible:
- You can now use parentheses to access array elements (aMyArray(1,2))
- Support for the TO keyword in the CATCH clause of TRY CATCH (CATCH TO myVar)
- Support for the ASSERT command and SET ASSERT. An Assert dialog has also been added to the runtime.
- Support for SET CONSOLE and SET ALTERNATE
- Assignment expressions with a "=" assignment operator and a macro are now working ( &myVar = 42)
- The compiler now recognizes the AS <type> OF <classlib> syntax.
- You can now also use the mdot syntax in declatation statements (LOCAL m.myVar)
- And more
- We have made several fixes for issues reported by customers
RDD System
- Exclusive read/write operations are now MUCH faster because we switched to using cached IO.
- Internally the RDD system now directly works with the stream objects. This solves a problem with incorrect index page numbers that were causing index file bloats
- Fixed a problem updating DBFCDX index files for files with a large number of duplicate key values.
- For VFP compatible DBF files that are part of a database container you can now access fields by their short (10 character) field names as well as their longer field names that are read from the database container.
- We have added support for database containers. This includes the various DATABASE related commands such as SET DATABASE TO and OPEN DATABASE as well as the DbGetProp() function. DbSetProp() is not supported yet and will come in the next release.
- The runtime now works with Data Sessions. Each thread gets its own datasession. The DBC files are also opened in a separate data session.
- We have added the structures and functions needed to work with the Advantage Management API.
Runtime
- We have added support for FoxPro compatible arrays
- Many other smaller fixes.
VS Integration
- We have fixed a problem in the Windows Forms editor that prevented it from correctly saving forms with complicated code that was produced by some of the DevExpress controls
- When creating a new VO compatible UI form in the VS IDE you can now clone an existing form.
- Solutions with "flavoured" projects (such as MsTest projects) were not always opened correctly. An exception could occur. This has been fixed. It can still occur that the project appears as 'unloaded' but a right click and reload in the Solution Explorer will fix that.
Of course this is just a selection of the issues found and fixed.
We expect to release this build around Dec 1.
Comments (11 Comments)Online Event: Navigating the XSharp Source code
- Details
- Created: 29 October 2020
This week, during Virtual Fox Fest, we received a question from someone that wants to help to add functions to the XSharp runtime (in this case functions for the FoxPro part of the Runtime).
The customer asked if we could give an overview of the XSharp Runtime source and if we could describe how contributions work.
We assume that this customer is not the only one that wants this, so we decided to spend some time on this in an online session.
We will discuss this in an online session on Thursday November 5, at 16:00 CET (UTC+1).
The meeting will start at 16:00 but we will open the session room at 15:30 so you have time to chat if you want before the session starts.
We have recorded the session and will upload it to our youtube channel shortly, so when you missed it you can still see it in our Youtube Channel "XSharp Academy"
Comments (6 Comments)New: Corporate Sponsorship
- Details
- Created: 19 October 2020
We have received several requests for "Corporate sponsorships", and we have listened. We are now introducing the XSharp Corporate Sponsorship program.
You can find more information about this program on this page.
Please remember that this does in no way mean that non corporate sponsors will be treated as second rate customers. We only want to "formalize" the relation with larger customers.
We will keep on giving every customer the service that he/she expects, just like before.
Comments (3 Comments)XSharp Cahors 2.6a Public Installer
- Details
- Created: 18 October 2020
We have just released the public installer for XSharp Cahors 2.6a
The complete readme with the description of the changes can be found here.
This is the same build as the subscribers build, with the exception that subscribers get a slightly faster compiler, a .Net core version of the compiler and debug versions of the runtime assemblies to aid in tracking errors (not that we have any <g>).
You can download the installer from here (you have to login first):
{rsfiles path="installers/XSharpSetup26a1Public.zip"}
Comments (0 Comments)Indexes, Sorting and how a bug was not a bug
- Details
- Created: 18 October 2020
This week I was approached by a (valued) customer that was convinced that he had found a problem in the DBFCDX driver in X# and the customer had a reproducible example of a seek in a DBF that failed in X# but worked in Visual Objects(VO). And to be honest, I also had the feeling that this could indeed be a bug
In this (long) article I would like to explain the problem and also give a little bit of background info about CDX indexes and sorting.
So I loaded the code from the customer and indeed the seek failed in X# and succeeded in VO.
Then I ran an internal command that dumps the contents of a tag inside a CDX to a text file, so I could inspect the various index pages.
After that I recreated the index in X# and dumped that index too and I found that there was difference in the sort order.
I thought: Bingo there is indeed a problem in our sorting routine and I confirmed the bug to the customer. But I was wrong....
Read more: Indexes, Sorting and how a bug was not a bug
Comments (4 Comments)Virtual Fox Fest day 1
- Details
- Created: 16 October 2020
Yesterday was Virtual Fox Fest (VFF) day 1. Over 140 people attended this online event.
The X# team had a virtual "booth" at this event and spoke with some of the attendees.
Robert and Fabrice have recorded 2 short videos for the event that can be seen in our youtube channel "XSharp Academy"
Robert also did a (prerecorded) session about Databinding in .Net for XBase developers.
If anybody is interested we can also do this one more time as "live session" so you have the chance to interact and ask questions etc.
All you have to do is ask !
VFF will continue next week (on Wednesday 21) and in 2 weeks (On Tuesday 27).
There is a session next Wednesday from Eric Selje about "X# from Scratch"
You can see the schedule over here. Many of the other sessions are of interest to non FoxPro developers too !
You can still register for the final 2 days for USD 49
Comments (2 Comments)
XSharp Cahors 2.6a
- Details
- Created: 02 October 2020
Today we have released a new installer for XSharp Cahors 2.6a (aka 2.6.1), which contains several fixes for issues that our FOX subscribers have reported.
The what's new document describing all the changes can be found here:
{rsfiles path="general/Readme/whatsnew26a.rtf"}
{rsfiles path="fox/Compiler/XSharpSetup26aFox.zip"}
Unless some important problem is found in the next couple days, also the public version of the 2.6a build will follow shortly.
Thank you to all of you for your continued support and invaluable help in further developing the XSharp product!
Update on Saturday October 3rd:
Today we have updated the installer, and added 2 fixes to the compiler (PCall in a file name with an embedded dot was not working, parameter by reference with the @ modifier inside a codeblock was not working) and a fix in the runtime (callstack for errors in late bound code was sometimes not showing the method where the error originated).
We advise everybody to redownload the installer and install again. The files in the new installer are all dated October 2, 2020.
XSharp 2.6 Special Autumn 2020 Promotion
- Details
- Created: 21 September 2020
To celebrate the release of XSharp 2.6 we have started a special "Autumn Promotion" for our Friends Of XSharp subscription.
For more information about this subscription click here.
You will now get a discount of 25% on the normal subscription price if you join the subscription.
This discount is valid until Dec 21, 2020.
Click here to order your X# subscription with this discount.
Comments (0 Comments)