Xojo Roadmap updated

Have you noticed changes in the Xojo Roadmap?

There is a new item showing up since today:

Build macOS apps from Windows and Linux
The ability to build and remote debug macOS apps from Windows and Linux

As you may know running the macOS linker running on Windows was not supported by LLVM for the last years. Since Xojo uses LLVM to power their compiler, they had to wait till this project comes to a point, where it is working.
This change may also help to get remote debugging working from Windows to macOS.

Also on the horizon is the dark mode support for Windows, which is also listed there.

Let's look what shows up in the 2021r3 pre-release version soon.
If you like to be pre-release tester, you can contact Xojo as shown in this blog post.

MBS Xojo Plugins, version 21.4pr4

New in this prerelease of the 21.4 plugins:
  • Add thread pooling for Windows to be used for multi threaded methods.
  • Added SharingPanelMBS class for sharing on iOS.
  • Fixed a crash in JSONMBS class returning big JSON arrays.
  • Fixed problem on Windows with GraphicsMagick initialization.
  • Updated DynaPDF to version 4.0.58.153.
  • Moved WindowsQOSMBS class into its own plugin part, split from WindowsProxy plugin part.
  • Implemented thread pool for Windows to be used for our MT methods, so threads get reused.
Download: monkeybreadsoftware.com/xojo/download/plugin/Prerelease/ or from Dropbox.
Or ask us to be added to our shared Dropbox folder.

Thread Pool for Windows

For our MBS Xojo Plugins we add a thread pooling for Windows. Instead of having the plugin create threads if needed for doing work and reuse them if needed.

That may help for all the MT methods we have. For example if you use MBS Xojo CURL Plugin and the PerformMT method there. If you run multiple transfers in background using this, we will now recycle threads. Also for some of our functions doing multi threaded processing like TransformMT for LCMS, it may use multiple threads to do work in parallel.

We use one thread pool for all our plugins. As Windows manages that thread pool, it can add and remove threads as needed and adjust it depending to the system load. Another benefit seems to be that Windows leaks memory per thread, so creating and destroying a lot of threads can be a problem, which should now be fixed.

For macOS and iOS, we had thread pooling before via Grand Central Dispatch.

Please try next pre-release version of the plugin to see how it works for you.

MBS Xojo Plugins, version 21.4pr3

New in this prerelease of the 21.4 plugins:
  • Added areBrowserAcceleratorKeysEnabled, IsGeneralAutofillEnabled, IsPasswordAutosaveEnabled, IsPinchZoomEnabled and UserAgent properties to WebView2ControlMBS control.
  • Changed CURLEmailMBS class to cache email source and not render it again each time you query it. And clear it when you change a property of the email.
  • Improved NSViewMBS to work on iOS, internally with UIView.
  • Added userInteractionEnabled property to NSViewMBS class for iOS.
  • Changed WMI examples to initialize in App.Constructor instead of App.Open, so InitSecurity method works.
  • Fixed memory leak in CapturePreview method in WebView2ControlMBS control.
  • Fixed Open property getter/setter for DynaPDFAnnotationExMBS class.
  • Fixed properties for WindowsBlueToothDeviceSearchParameterMBS and WindowsFontFamilyMBS classes.
  • Fixed OptionFileTime and OptionUnrestrictedAuth properties for CURLSMBS class.
  • Fixed problem with RenderPageMT in DynaPDFRasterizerMBS class, where background of picture was not initialized with white.
  • Added more properties for WKPreferencesMBS class.
Download: monkeybreadsoftware.com/xojo/download/plugin/Prerelease/ or from Dropbox.
Or ask us to be added to our shared Dropbox folder.

Bug Bounty Program

We are happy about any bug report we get, so we can fix it. But since we got asked if we pay bug bounty, let me explain:

In the past we paid bug bounties for valuable information about vulnerabilities on our products or website.
We haven't put up a website like CURL project here, but we may formalize it more in the future.

To give a few examples for the websites:
  • You can read a file you shouldn't see.
  • You circumvented the CMS login. Create a new article with your name as proof and contact us.
  • You can write a file to our web server, e.g. write a text file with your name and contact us.
  • You can execute code own our web server, e.g. run ls -al and show us the output.
  • You can run SQL on our database servers.
For our products:
  • Have you be able to crash an app with bad input data? Especially if that could lead to stack corruption and thus execute input data as code.
  • Have you found a way, where you can do a SQL injection?
  • Have you found a way to circumvent a login or security privilege checking?
  • Have you found a way to circumvent our license checks?
We may extend this list with new examples.

Please note that not all crashes are a vulnerabilities, some things got reported before, may be caused by code not from us (open source libraries) and not all vulnerabilities can be exploited.
If you have something, please contact us.

Xojo Meeting in Canada

As I am traveling to Calgary in Canada next month, I like to arrange a Xojo developer meeting.

Let's talk about Xojo, conferences, plugins and other programming topics.

Please help to decide on the exact day: Calgary Meeting - Edmonton Meeting

As we have Xojo users in both cities and around them, we may do both events. Please mark your availability in the surveys above. If you could drive to both cities for a meeting, you can put yourself into both surveys. Feel free to contact us if you have questions.

We can reserve a table in a nice restaurant in Calgary and Edmonton and talk an evening about Xojo. Time probably around 18 to 22 o'clock, so you can come later or leave early.

Once I set a date and pick a place, we'll contact everyone own the list with the details. I hope to see you all there!

Update: The date is Sunday, 12th September 2021 for Calgary.
If you like to join, please contact us to get on the guest list.

Xojo News

Summer is always slow and not much happens as most clients are on vacation, except a few little newsworthy things.

Xojo 2021r2.1

Xojo Inc. pushed out the Xojo 2021r2.1 update. A couple of bug fixes for the r2 release, which either didn't make it into the main branch before shipping or were discovered after release. We recommend everyone who uses r2 to move to r2.1 quickly.
Release notes and download here.

Pre-Release Testing

The pre-release testing in Xojo had the policy to only allow people with a current license to join. Since sometimes licenses expire and people don't purchase a renewal right away, they dropped out of pre-release testing. After a lengthly discussion in the MVP group started by Anthony, the policy was changed (Hurray!) to basically allow anyone to join pre-release testing. Please use this opportunity. It's your chance to test new features and verify bug fixes weeks before the release, so there is a chance for a fix before it ships.
see Xojo blog

OmegaBundle

The OmegaBundle for Xojo was extended for August. If you like to get this package, please place your order soon. End date is set to 31st August 2021.
See website omegabundle.net and our blog: Omegabundle for Xojo 2021 Developer Tools

CommonCrypto

Check out CCCryptorMBS class vs. CipherMBS class. While the second is cross platform, you may sometimes code an alternative path with CCCryptorMBS class to benefit from encryption routines in newer CPUs. Apple's frameworks use hardware acceleration there for encryption for some of the algorithms (and when current hardware supports the chosen combination of flags). For version 21.4 of MBS Xojo Plugins we add a few new constants, but you could use those values for older versions, too.

WMI Change

If you use WindowsWMIMBS class, please move the call to WindowsWMIMBS.InitSecurity from Open event in App class to the Constructor of the App class. This is required to be earlier in the app launch to initialize the security for COM classes before Xojo runtime does it.

MBS Xojo Plugins, version 21.4pr2

New in this prerelease of the 21.4 plugins:
  • Added more constants for CCCryptorMBS class.
  • Added RandomGenerateBytes method to CCCryptorMBS class.
  • Fixed problem with borderColor assignment in CALayerMBS class not working.
  • Fixed App.BundleResourceFolderMBS and other functions to handle relative CFURL objects better.
  • Added HEAD as verb for SetupAWS and SetupOAuth functions in CURLSMBS class.
  • Added Contains and Substitute methods to WordFileMBS class.
  • Updated to DynaPDF version 4.0.56.151.
  • Added DeleteOCGFromDisplayTree function to DynaPDFMBS class.
  • Added SetPasteboardItems method taking array of variants to NSPasteboardMBS class.
  • Added NSComboBoxControlMBS control with KeyDown/KeyUp controls.
Download: monkeybreadsoftware.com/xojo/download/plugin/Prerelease/ or from Dropbox.
Or ask us to be added to our shared Dropbox folder.

Omegabundle for Xojo 2021 Developer Tools

Since some of you are on vacation, the offer got extended till 31st August 2021:

Get the top developer tools and third party components for the Xojo cross-platform development platform at a huge savings.

Omegabundle for Xojo 2021 is a collection of the most useful tool sets, add-ons, digital books and components for use with Xojo Inc's Xojo development environment. If purchased separately and not including any additional offers, the total cost would be over $3871. Omegabundle for Xojo 2021 costs $399.99.

Xojo is an award-winning, cross-platform development tool for the Desktop (macOS, Windows, Linux), Web, iOS (iPad/iPhone) and Raspberry Pi. With Xojo, you can create native applications by using drag-and-drop to build your user interface and then one straight-forward programming language to enable the functionality. Xojo is powerful and modern, yet easy to use and learn.

Included Products

  • Ohanaware App Wrapper (UPDATED). Prepare your application for the Mac App Store or Web Distribution (macOS only app)
  • Ohanaware App Kit (UPDATED). A huge collection of declares and objects that Ohanaware has created over the years to help us with crafting better macOS applications. Your next macOS app starts here!
  • ExeWrapper (NEW). Microsoft Authenticode Signing - right from Mac! ExeWrapper enables you to code sign Windows executables on a macOS machine. (macOS only app)
  • DMG Canvas (NEW). Drag, drop and design your disk image's appearance and to easily and quickly create a fully assembled disk image ready to ship. (macOS only app)
  • GrafittiSuite Desktop Edition (UPDATED). 55 (up from 53 from 2020!) incredible user interface controls for Xojo that add value and improve the professional appeal of your Xojo applications.
  • XDL Library (NEW).Get some of the best articles from xDev Library, a brand-new ebook, Xojo Database Collection(XDL-0019), that weighs in at over 400 pages
  • MBS Chart Director for Xojo (UPDATED). Professional, interactive, real-time charts in your Xojo applications on Mac, Windows and Linux. Desktop, Console and Web projects.
  • MBS DynaPDF Starter Edition for Xojo (UPDATED). Create PDF files with your applications on Mac, Windows and Linux. Desktop, Console and Web projects.
  • Paradigma Software Valentina Studio Pro 11 (UPDATED). Ultimate reports designer, database administration and forms creation tool that runs on all three operating systems - Windows, macOS, Linux. Select one OS version.
  • Paradigma Software ValentinaDB ADK 10 for Xojo (UPDATED). Embed the ultra-fast, object-relational Valentina database into your applications and deploy royalty free - Windows, macOS, Linux, including Raspberry PI! Also works with local SQLite files and as a client to Valentina Server.
  • Paradigma Software Valentina Reports ADK 10for Xojo (UPDATED). Generate visually rich reports as graphics, web pages or PDF from your Xojo applications on Windows, macOS, Linux including Raspberry PI! Also works with local SQLite files and as a client to Valentina Server.
  • Paradigma Software Valentina Server Unlimited (UPDATED). 4-in-1 Reports Server, Forms Server along with two database servers: one built on object-relational Valentina Database and the other on SQLite. Report and forms serving works with MySQL, PostgreSQL, MS SQL Server and the included Valentina and SQLite servers
  • xDev Magazine (UPDATED). Get back issues and a year’s subscription to xDev Magazine,  the professional's magazine for developing with Xojo.
  • XDC Developer Conference Coupon (NEW). Save $100 off of the XDC Developer Conference 2022 in London! Coupon must be used before the end of 2021.
(more)

MBS Xojo Plugins, version 21.4pr1

New in this prerelease of the 21.4 plugins: Download: monkeybreadsoftware.com/xojo/download/plugin/Prerelease/ or from Dropbox.
Or ask us to be added to our shared Dropbox folder.
The biggest plugin in space...

Archives

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