Major Release: Thursday, 30-July-2015
gmBasic: Upgrade Engine
Section titled “gmBasic: Upgrade Engine”gmBasic is a unique computer language processor that reads, interprets, and rewrites VB6/ASP/COM as .NET code (C# or VB.NET). We are constantly fine tuning gmBasic so that it produces cleaner, more correct .NET code. This distribution — Version V20.05.b5 of the upgrade engine and metalanguage files — contains several enhancements:
- Adds the Refactor/Generic command to allow specifying multi-type arguments to be upgraded to a Generic argument
- Adds the Refactor/Overload command to allow specifying multi-type arguments to be upgraded to function overloads
- Adds support for authoring extension methods in stub classes generated to satisfy platform dependencies
- Improves support for upgrading VB6 Collection and Scripting.Dictionary to strongly-typed List and Dictionary. Learn more in this Special Migrations article
- Improves the “For Each” statement upgrade
- Improves detecting, authoring and using interface-only classes
- Improves how optional and named arguments are handled when <Select OptionalArguments=“on” />
- Improves how Event Handlers and EventArgs classes are implemented
- Improves the custom CodeStyle feature. Learn more in this CodeStyle article.
gmStudio: Upgrade IDE
Section titled “gmStudio: Upgrade IDE”gmStudio is a development environment for creating, verifying, and improving custom VB6/ASP/COM upgrade solutions. We are always improving gmStudio to make it easier to use. gmStudio now includes these improvements:
- Adds an Upgrade Wizard to help new users setup, run, and request assistance with new upgrade projects
- Improves the Settings Form for better user experience
- Improves Reports and On-Screen Lists by using descriptive names rather than cryptic identifiers
- Improves manual Folder selection dialogues by using the full-featured File/Folder Open dialogue rather than the FolderBrowser
- Adds support for tabulating UPGRADE_TODO records in the Translation Log Report
Runtime Support Library
Section titled “Runtime Support Library”gmStudio ships with a sample runtime library that can be used to produce code that more correctly reproduces VB6/ASP functionality. The runtime library also includes ADODB emulation classes that simplify upgrading data access logic. Note, gmStudio is highly configurable, so using the runtime library is not a requirement. The Great Migrations Runtime Library now includes the following:
- Adds OrderedDictionary<K,T> — a generic collection class that helps emulate order-preserving, indexable VB6 collection while adding the goodness of strongly-typed generics and following .NET conventions.
This class can also be stubbed by the gmBasic engine. It is used when VB6 Collection and Scripting.Dictionary cannot be upgraded to System.Collection.Generic classes automatically. - Standardizes namespaces for enumerations
Sample Upgrade Rules
Section titled “Sample Upgrade Rules”gmStudio ships with a collection of sample configuration files that you may use to add custom features, such as custom COM replacement and diagnostic instrumentation, to your upgrade solution. There are over 50 files in the Sample Rules set. The Sample Upgrade Rules now include this enhancement:
- Simplifies translation scripts to take advantage of changes in support for subsystems
Sample Upgrade Solutions
Section titled “Sample Upgrade Solutions”Great Migrations publishes a number of VB6/ASP upgrade solution samples to illustrate the capabilities of gmStudio. All of the samples were updated to reflect the latest product improvements.