In our continuing struggle to make the world safe from nasty old legacy code, we are happy today to announce the availability of VBUC version 7.2, designed to help you stamp out all those On Error Gotos and ActiveX dependencies and get on with your life.
Before I get into the specifics of the release, let me talk a bit about how the development team approaches their work.
We have two areas of focus in the product roadmap.
First of all, we have a set of hard problems (the relatively easy ones having long ago been dispensed with) that get chiseled away release after release. VB6 allowed for some "unorthodox" programming techniques that aren't available in .NET. From the beginning (with the Visual Basic Upgrade Wizard) we created a list of EWIs (Errors, Warnings, and Issues) with documentation on each one, for those items that we felt you needed to look at in the migrated code. In some cases we made assumptions and generated some code; in others we had flag something for you to make the call.
What we always tried to do was make sure the resulting code was good code. Even if it meant we had to ask you to do something.
Over time, our tools improve where we can eliminate those decision points and just make some code. This is one area of focus. In this release the work on arrays and expression evaluation fall into this category.
The second area of focus is driven by customer code. This code--and we have gathered millions of lines over the years--is probably the world's best benchmark for how VB6 was and is used in actual practice. Looking at the meta data from those projects lets us prioritize new migration mappings for our tools that will--with each subsequent release of VBUC--further increase the amount of code we can automatically migrate to .NET, making each migration project a little more efficient and faster than the last.
There are literally hundreds of incremental improvements in this release from this second area of focus.
- Full support for Visual Studio 2017 both in source code compliance and also generating VS2017 solutions (VS version 15)
- We can now handle arrays that have been re-dimensioned (something not allowed in .NET) by making more informed decisions about the resulting declaration
- Improvements in "Let" and "Set" for COM properties
- Improved analysis of the left and right sides of expressions, and how they are evaluated
- Improved parallel migration support (for multi-project solutions) using multiple CPU cores
- More mappings for popular controls, bug fixes, and more.
See the release notes in the setup zip file for specifics.