I’m having end-users complain they can’t use software on outmoded macOS systems. In Xojo, we have a Build Settings panel for Windows that allows us to set the minimum version, but no such feature for macOS where it is badly needed.
Changing the minimum system version can be done with AppWrapper, but not every client I have uses AppWrapper. A panel similar to the one for Windows Supported Versions would do wonders.
Please thumbs up my ticket for this, I kind of need it as fast as humanly possible.
a) Xojo has to update the panel for every version of macOS.
b) Older versions of Xojo can’t be used on newer versions of macOS.
c) My app has a bad crash bug for a certain feature on High Sierra. I still use High Sierra on my main computer. So I write 10.14 on the website. And users actually read the information.
Curious: forgive the question, but do these checkboxes change the way the app is compiled (eg restricting API calls when Windows 7 is checked), or simply marks the app as ‘not suitable for the unchecked versions’)
They change the way the app is built so that it doesn’t launch on an unsupported system.
This is built into macOS as well and can be done by changing Info.plist as others have mentioned. But I support clients who aren’t Xojo professionals, so I need something easier for them than workarounds.
It’s feature parity, macOS should have this build panel so Xojo is easier to use for all users; not just those who visit the forums.
The Windows version was added because it was something a user could not do on their own after the app was built. That’s not the case with macOS.
The problem I have with this “feature demand” is actually how often Apple releases OSes and the myriad of versions that Xojo would have to enumerate because the OS doesn’t provide that.
With Windows, it’s just 7, 8, 8.1 and 10 (11 probably should have been added if Windows even has a distinction for it). But for macOS what’re you expecting here? A text field? You can’t have checkboxes, you’d need 10.13, 10.13.1, 10.13.2, 10,13.3, etc, because technically they’re all valid values. No, you can’t just expose the major versions because Apple does release features mid year. A textField means that the user still needs to know what the correct version and format are, and the IDE itself now needs to maintain another project property and preference value. Don’t get me started on Linux…
Look, the IDE writes this value to match the minimum macOS system requirement of the built app based on the included frameworks, 99% of the time that’s the exact right value and the developer doesn’t even need to think about it. If you’re adding a feature to your app which requires something newer (presumably through the use of a plugin or a declare), that’s an extraordinary case and you can either
Modify the plist yourself
Use AppWrapper
Use System.Version in App.Open to show a dialog and quit
Best case, make it possible for the user end user to still use your product without the feature if they have an older OS
You may get your wish of having it built into the IDE, but I wouldn’t hold my breath.
Windows 10 had 14 releases and they introduced many new features not availbale on previous windows 10 Dark mode for example, are you saying that the current IDE is wrong for not including a way to select them?
In mac, most of the time it only needs to worry about major versions, for macOS xojo minimum version is 10.14 or higher:
12.x
11.x
10.15.x
10.14.x
FOUR, exactly the same number than the windows switches, or a really short PopUp menu with 4 elements to choose the minimum version.
Stop me if I’m wrong, but I don’t see a point for this.
Looking at the screen shot above it appears that you can’t turn it off so you have to select OS versions which you want your app to run on. What if you want your app to run on a non supported version of the OS? There is clear evidence by many discussions on this forum that, on Mac at least, many people run their Apps and the IDE on OS versions Xojo doesn’t support. Do you really want to lock DEVs to only specified OS versions even if they accept the responsibility of running on non supported OS versions?
If Xojo were to implement this then they are only going list the OS versions they support. Makes sense.
What happens if you’re using an older version of Xojo that doesn’t list the latest OS? Will your App still run on the latest OS or will you have to upgrade Xojo?
Personally I think it is far easier to just use System.Version in the App Opening event to check and make the judgment yourself.
All these additions just take more and more control away from the developer, is that what you want?
When I first bought Xojo and decided to learn it, Just hours in to it, I ran across this minor but annoying bug.
This was in May 2021. I thought it went through the required process of reporting, And here it is almost September of 2022 (A year and 4 months, and many versions later,) and something so ubiquitous as dragging a slider into a window still does not work correctly.
I would love it if someone could set me straight on my thinking about Xojo’s non-receptiveness to fix even the easiest bugs.