I'm happy to release a beta version of B4i v10.0
B4i compilation process has been rewritten from scratch based on Apple's latest methodology. All native libraries were rebuilt and most external dependencies were updated with latest versions.
B4i libraries are now compiled as xcframeworks and are compatible with iOS arm64, x86 simulator and arm64 simulator. The new build-chain works properly with Swift frameworks, assuming that the needed Objective C headers are available.
This is an important update as most SDKs are now built with Swift and it was no longer possible to wrap them with the old build-chain.
Other improvements:
- Support for Xcode 26 and iOS 26.
- Support for ARM based Macs.
- #Macro attribute. Defined in B4XMainPage or Main modules. Format: <type>, <name>, <link>. Type can be Title or After Save. More to come in the future. Link is based on the comment link feature: https://www.b4x.com/android/forum/threads/119897/#content
Examples:
B4X:#Macro: Title, B4XOrderedMap Doc, https://www.b4x.com/android/forum/threads/b4x-b4xorderedmap-get-first-item-nth-item-and-last-item.118642/ #Macro: Title, B4XPages Export, ide://run?File=%B4X%\Zipper.jar&Args=Project.zip 'open Objects folder after saving project: #Macro: After Save, open objects folder, ide://run?File=%WINDIR%\explorer.exe&Args=%PROJECT%\Objects - Other improvements to the builder, including a fix to codesign requiring password.
- New command line options for the IDE:
-INI=<ini file path> - allows running the IDE with an alternative INI file. Note that that standard INI file is stored under: C:\Users\<user name>\AppData\Roaming\Anywhere Software\b4i\b4xV5.ini
-INI_<property key here>=<property value>
Example:
B4X:"c:\Program files\Anywhere Software\b4i\b4i.exe" -INI_CodeTheme=Dark "-INI_TitleNotEmpty=This is the second IDE: $FILE_NAME$" - Bug fixes and other minor improvements
This is a large update which might require a few changes to existing projects, mainly related to referencing of external SDKs.
There are currently two hosted builders, Builder1 is compatible with v10 and Builder2 is compatible with older versions. A week or two after the stable release of v10.0, both builders will be updated. Developers using older versions of B4i will need to switch to a local builder or update. It is not possible to keep the old toolchain together with the new one.
Developers eligible for a free upgrade will receive an email with upgrade instructions. Thank you for your help with the beta version!