twinBASIC Update: November 5, 2024
Highlights include a twinBASIC-built utility to strip the Mark of the Web (MOTW) from files and an upcoming feature to check packages for updates.
On April 23, 2021, I helped Wayne Phillips introduce the world to twinBASIC at the Access DevCon Vienna conference. I boldly predicted that twinBASIC (along with the Monaco editor) would replace VBA and its outdated development environment by 2025. With that goal in mind, this weekly update is my attempt to keep the project fresh in the minds of the VBA development community.
Every Sunday Monday week, I will be providing updates on the status of the project, linking to new articles discussing twinBASIC, and generally trying to increase engagement with the project. If you come across items that should be included here, please leave a comment below.
Here are some links to get involved with the project:
- Custom twinBASIC IDE Installation Guide
- twinBASIC Discord Server (chat about the project)
- twinBASIC Wiki (list of new features not in VBx)
- GitHub Issue Tracker (report bugs)
- twinBASIC/VBx LinkedIn Group
Highlights
Next BETA Due on 15 November 2024
It's been nearly a month since the last twinBASIC release. Here's the latest update from Wayne (posted to Discord on 1 Nov 24) on the state of the project and when we can expect the next BETA release:
The next update will offer significant improvements in forms and ActiveX back compat. ... Still lots to do... two weeks.
Next update will indeed be a big one 😁 Friday 15th is the day.
Upcoming Feature: Check Packages for Updates in IDE
In the Ideas channel of the twinBASIC Discord Server, Krool suggested an improvement to the IDE to make it easier to see when an update to a twinPACK package is available:
When referencing a twin package it can become "outdated" over the time without noticing. Some kind of info somewhere that a "new version" is available. But it should not be intrusive of course.
Wayne immediately agreed, replying with:
Yes, we definitely want/need this. Just a little warning somewhere when we open a project, and then some improvements in the references list to allow us to easily update them
Shortly thereafter, he released a preview screenshot of the first part of that process:
Step 1, the notification when you open a project...
You can turn this feature off in the IDE settings:
To be clear, the above feature is not in current twinBASIC versions yet, but I assume it will be included in the next release.
Discord Chat Summary
* Auto-generated via Claude-3.5-Sonnet-200k on poe.com
Here's a summary of the key discussions in the twinBASIC Discord general channel from October 30 - November 5, 2024:
The past week saw extensive discussions about twinBASIC's development progress and compatibility goals as it approaches version 1.0. Here are the key points:
-
Developer Wayne Phillips announced a major update coming on Friday, November 15th, which will include significant improvements to forms and ActiveX backwards compatibility.
-
There was thoughtful debate about what constitutes "100% VB6 compatibility" for v1.0. The consensus emerged that while complete compatibility isn't practical for edge cases, the focus should be on supporting the vast majority of real-world VB6 applications, excluding known limitations like Designer controls (DSRs).
-
A proposal emerged to create metrics for twinBASIC compatibility by testing against public VB6 code repositories like Planet Source Code to establish measurable compatibility rates.
-
The community discussed cross-platform priorities, with developers expressing interest in different targets - some prioritizing macOS for market share, others interested in Android mobile development.
-
Technical discussions covered TypeLib implementation details, with developers exploring ways to handle 32-bit vs 64-bit compatibility and COM interface definitions.
-
Several developers worked through importing legacy VB6 projects, with the community providing guidance on handling reference migrations and registration of ActiveX controls.
The week's discussions highlighted twinBASIC's continued progress toward production readiness, with a strong focus on maintaining compatibility with existing VB6 code while enabling modern development capabilities. The upcoming November 15th update appears to be a significant milestone in addressing key compatibility challenges.
Around the Web
ZoneStripper Shell Extension
fafalone has released a new Windows Explorer Shell Extension utility that makes it easy to strip the so-called "Mark of the Web" from files downloaded from the internet.
Here's fafalone's announcement in Discord:
.This adds a right click menu option to Explorer to remove the 'mark of the web' - the Zone.Identifier alternate data stream that tells Windows and Office a file is 'from the internet'. It's a companion to the full program I made a while back (ZoneStripper v1.2).
(PS- I know I said I was making a namespace extension next and I've started work on that, this was just a quick detour for a practical tool that reuses most of the code from the Quick Rename extension and took under an hour to make).
Changelog
Here are the updates from the past week. You can also find this information by visiting the GitHub twinBASIC Releases page.
No new releases this week.