Xojo 2025r1

A few days ago Xojo Inc. released their first 2025 version of Xojo.
Download, Release Notes and Announcement.

We switched to using MacBooks with Apple Silicon years ago and actually run VMs there with Linux. But these VMs use the ARM version of Ubuntu, not the Intel one. While there are ways to use Rosetta for translation inside the VM, it never worked well. With Xojo 2025r1 you can install the Linux version of Xojo into a VM running Linux in the ARM version. That is great to use the debugger there and test things on Linux.

With Xojo you can now directly build and upload to the App Store for iOS and Mac applications. As they do code signing for you, the new log file helps to find the reason for any issues with code signatures. Since you need to add property list values for the application, Xojo got an editor for that. Here you can declare a lot of things like the permissions your application needs.

I dislike the changed shortcut for building. You need to go to preferences and assign Command-B to be build again. Or change your muscle memory to also press the shift key.

For macOS there is the option to get the AppKit Window menu. If you do cross platform development, you ned to make your own. But there is a feature request to get it for Windows and Linux, too. Issue 78776

Windows 10 was released in 2015. Already 10 years and time to let Windows 7 and 8 go. The new Xojo version requires you to have Windows 10 at least. The advantage is that they started to use the unicode DLLs coming with Windows 10 instead of bringing their own. This saves a lot of disk space for your applications. But this change actually makes Windows 10 1703 the minimum, not the original Windows 10 from 2015!

Check out the new JSONOptions class to specify how JSON gets formatted.

For MBS Xojo Plugins, just make sure you have a recent version and everything should work fine. Enjoy the update!

Meet us at Claris Engage

You can find Stefanie and Christian at the Claris Engage conference in Austin.
Just walk around and talk to us in the breaks. If you need a longer meeting, we could sit together for a chat while a session runs.

If you need a license, please use coupon code FileMakerConference in our web shop to place an order. Let us know if you need something special so we can assist the order. The code is valid until at least 5th April, so you have time next week to place an order.

Ideas? Questions? Please don’t hesitate to write us an email, send a feedback or to find us on the conference.

News from the MBS Xojo Plugins in Version 25.1

In this article I want to introduce you the new functionalities from the MBS Xojo Plugins in version 25.1.

ECKey

When it comes to encryption, you can now use the CurveNameToID method in the ECKeyMBS class to find out the ID of a curve. If you want to sign data, we have also added new methods for this. You can sign data with Sign. It can look like this, for example:

const NID_secp192k1 = 711
Var key as ECKeyMBS = ECKeyMBS.KeyByCurveName(NID_secp192k1)
Var text as string = "Hello World"
Var data as string = SHA512MBS.Hash(text)
Var sig as string = key.Sign(data)

if key.Verify(data, sig) then
  MsgBox "Signature ok"
end if

We highly recommend to use a hash like SHA-512 to preprocess the data. The whole thing can then be verified with Verify. If you want to sign with SHA256, you can sign directly with the ES256Sign method and verify with ES256Verify. You can pass the data as a string or memory block. Both are possible.

(more)

Upcoming Mailserver Migration

Our mail provider notified us, that they plan to switch to different mail servers within the next month.

Sadly this may cause an interruption in the mail services whenever this happens.
And to prepare for a migration, we cleaned up and deleted a couple of email accounts.

If you send an email to use and it bounces, please try again later. If we don't react to an email, maybe contact us next day on a different way like by messaging service, website form or a different email.

Sorry for any inconvenience.

Xojo March Sale

Xojo Inc. announced a sale for the next few days:

Buy New, Renew or Upgrade
renew new and upgrade licenses for sale 20% ‍
Choose the license that is right for your project, upgrade or renew anytime! Take 20% off Xojo Desktop, Mobile and Web licenses, 25% off Xojo Pro and Pro Plus. Xojo Lite starts at $99. All licenses covered by Xojo's 90 day refund guarantee.

20% off Xojo Extras
Xojo's community is filled with a wide variety of third party developers. Using third party software is a great way to expand Xojo's functionality and save yourself some time. All Extras are 20% off and subject to Xojo's 90 day refund guarantee.

The Fine Print
Xojo Cloud is not included in the sale.
Xojo Lite is not included in the sale.
No coupon required for store discount.
If your license auto-renews during the sale, the discount will be automatically applied.
Sale ends March 21, 2025 12 AM CT US.
Not valid in conjunction with other promotions, discounts.


If you waited to get a Xojo license or to renew your license or to upgrade to Xojo Pro, this is your chance.

As usual, if your Xojo license is up for renewal later this year, you can update now and enjoy a discount. If your Xojo license expired already, just get a new one. With the discount it is cheaper than a regular update.

The add-ons are included in the sale. If you like to get one of the MBS articles there, you can use the sale price at Xojo Store or we match the price if you buy directly from us. Please contact us if you need a MBS Plugin license.

MonkeyBread Software Releases the MBS Xojo Plugins in version 25.1

Nickenich, Germany - (March 11th, 2025) -- Monkeybread Software today is pleased to announce MBS Xojo Plugins 25.1 for macOS, Linux and Windows, the latest update to their product that is easily the most powerful plugin collection currently available for Xojo. MBS Xojo Plugins have been updated and now includes over 3000 classes and 82,000 documented features, and the versatile plugins have gained more new functions:

We have our Bonjour classes for macOS, iOS and Windows to find computers on the local network by publishing and browsing for services. For Linux we use Avahi library and there we added new AvahiAddressResolverMBS, AvahiEntryGroupMBS, AvahiHostNameResolverMBS and AvahiRecordBrowserMBS classes to publish and find services. You may have a linux service running on a Raspberry Pi, which can then by a desktop application on macOS, Windows or Linux or an iOS application.

For Windows we have a set of classes to query diagnostic information about application and system memory, disk and CPU usage. The WindowsPowerManagerMBS class allows you to query battery status and get events for updates. Use the WindowsSharePanelMBS class to share files to contacts using the Windows share sheet. The WindowsAVIWriteMBS class helps to write AVI files from pictures.

The AVPlayerViewControllerMBS class for iOS is great to play fullscreen video. With the AVPlayerViewControllerControlMBS control we have a way to use it for videos playing on a screen.

You can use PHPickerMBS to show a window for the user to pick photos from his library without your application requiring permissions to do so. With the PHPickerControlMBS control, you can embed this picker in your own window. For PHPhotoLibraryMBS we added methods to ask for permissions with level, so you can ask for add-only access instead of asking for full access.

If you have multiple Python installations, you can use AddSysPath method to point to the directory where to find libraries.

On macOS and iOS you can use Genmojis with the NSAdaptiveImageGlyphMBS class. We can render images using NSAdaptiveImageGlyphImageMBS class. You can use supportsAdaptiveImageGlyph property on NSTextViewMBS or WKWebViewConfigurationMBS classes to enable Genmojis support.

When you send emails using CURLEmailMBS class, you can decide to use 8bit encoding instead of quoted printable. The ECKeyMBS class got ES256 sign and verify functions. For arrays we have a ReverseMBS function in addition to more variants for CopyMBS and AddMBS array methods. The CURL feature for MQTT can keep the connection alive.

Updated avahi library, CURL to 8.12.1, DynaPDF to 4.0.98.278, jsoncons to 1.3.0, lcms to 2.17, OpenSSL to 3.3.3, png to 1.6.47 and SQLite to version 3.49.1.

See release notes for a complete list of changes. New functions in documentation.


Xojo Meeting in Austin

We am coming to Austin in late March and we organize a casual get-together with Xojo developers.

Something like a meet-up for lunch in a restaurant to talk about Xojo.



If you are interested, please let us know in the Xojo forum.

MBS Xojo Plugins, version 25.1pr7

New in this prerelease of the 25.1 plugins: Download: monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.

You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.


xDev Magazine 23.2

The March/April (23.2) issue of xDev Magazine is now available. Here's a quick preview of what's inside:

Making Mancala by Marc Zeedar
Marc grew up in Africa playing Mancala, an ancient board game where you "sow" seeds into holes. He found some 50-year-old BASIC code and thought it would be easy to convert to Xojo. It turned out to be rather challenging!

Controlling a Raspberry Pi Pico WH by Eugene Dakin
Xojo cannot run on the Raspberry Pi Pico WH directly, so Eugene shows how to use MicroPython on the Pico WH to run tasks from a connected Raspberry Pi via UART.

Making PDFs Faster by Marc Zeedar
Back in xDev 11.1 Marc wrote an app for converting Markdown/HTML files to PDF using wkhtmltopdf. In those days Xojo could only do one thing at a time, so converting a batch of files was slow. Now that preemptive threads are here, we can speed up the process!

Finding Clients by Tim Dietrich
In this issue's "The Business of Xojo" series, Tim shows how to find consulting clients and gives tips on how to market your business.

Plus: An interview with Geoff Perlman, using GameInput classes, custom sorting routines, building Xojo Tennis game, and more!

MBS Xojo Plugins, version 25.1pr6

New in this prerelease of the 25.1 plugins:
  • Updated OpenSSL to version 3.3.3.
  • Updated DynaPDF to version 4.0.98.278.
  • Added kRoundHighlightAP constant to DynaPDFMBS class.
  • Updated jsoncons library to version 1.2.0.
  • Updated png library to version 1.6.47.
Download: monkeybreadsoftware.de/xojo/download/plugin/Prerelease/.
Or ask us to be added to our shared DropBox folder.

You can subscribe to our Xojo mailing list to get notified for new pre-release and release versions.


The biggest plugin in space...

Archives

Jun 2025
May 2025
Apr 2025
Mar 2025
Feb 2025
Jan 2025
Dec 2024
Nov 2024
Oct 2024
Sep 2024
Aug 2024
Jul 2024
Jun 2024
May 2024
Apr 2024
Mar 2024
Feb 2024
Jan 2024
Dec 2023
Nov 2023
Oct 2023
Sep 2023
Aug 2023
Jul 2023
Jun 2023
May 2023
Apr 2023
Mar 2023
Feb 2023
Jan 2023
Dec 2022
Nov 2022
Oct 2022
Sep 2022
Aug 2022
Jul 2022
Jun 2022
May 2022
Apr 2022
Mar 2022
Feb 2022
Jan 2022
Dec 2021
Nov 2021
Oct 2021
Sep 2021
Aug 2021
Jul 2021
Jun 2021
May 2021
Apr 2021
Mar 2021
Feb 2021
Jan 2021
Dec 2020
Nov 2020
Oct 2020
Sep 2020
Aug 2020
Jul 2020
Jun 2020
May 2020
Apr 2020
Mar 2020
Feb 2020
Jan 2020
Dec 2019
Nov 2019
Oct 2019
Sep 2019
Aug 2019
Jul 2019
Jun 2019
May 2019
Apr 2019
Mar 2019
Feb 2019
Jan 2019
Dec 2018
Nov 2018
Oct 2018
Sep 2018
Aug 2018
Jul 2018
Jun 2018
May 2018
Apr 2018
Mar 2018
Feb 2018
Jan 2018
Dec 2017
Nov 2017
Oct 2017
Sep 2017
Aug 2017
Jul 2017
Jun 2017
May 2017
Apr 2017
Mar 2017
Feb 2017
Jan 2017
Dec 2016
Nov 2016
Oct 2016
Sep 2016
Aug 2016
Jul 2016
Jun 2016
May 2016
Apr 2016
Mar 2016
Feb 2016
Jan 2016
Dec 2015
Nov 2015
Oct 2015
Sep 2015
Aug 2015
Jul 2015
Jun 2015
May 2015
Apr 2015
Mar 2015
Feb 2015
Jan 2015
Dec 2014
Nov 2014
Oct 2014
Sep 2014
Aug 2014
Jul 2014
Jun 2014
May 2014
Apr 2014
Mar 2014
Feb 2014
Jan 2014
Dec 2013
Nov 2013
Oct 2013
Sep 2013
Aug 2013
Jul 2013
Jun 2013
May 2013
Apr 2013
Mar 2013
Feb 2013
Jan 2013
Dec 2012
Nov 2012
Oct 2012
Sep 2012
Aug 2012
Jul 2012
Jun 2012
May 2012
Apr 2012
Mar 2012
Feb 2012
Jan 2012
Dec 2011
Nov 2011
Oct 2011
Sep 2011
Aug 2011
Jul 2011
Jun 2011
May 2011
Apr 2011
Mar 2011
Feb 2011
Jan 2011
Dec 2010
Nov 2010
Oct 2010
Sep 2010
Aug 2010
Jul 2010
Jun 2010
May 2010
Apr 2010
Mar 2010
Feb 2010
Jan 2010
Dec 2009
Nov 2009
Oct 2009
Sep 2009
Aug 2009
Jul 2009
Apr 2009
Mar 2009
Feb 2009
Dec 2008
Nov 2008
Oct 2008
Aug 2008
May 2008
Apr 2008
Mar 2008
Feb 2008