I don’t use Mac, but you guys will know what this topic on the B4X forum is about. I just wanted to point out an example of tools that CAN give great support. This is something Xojo users can only dream of. Being able to do it as fast as Erel of course means not having to crawl over a pile of bugs first…
this should be a relatively straight forward update for Sam and Xojo
Which means Sam will get it done ASAP
And Xojo will wait until 2023r4
See, the difference is, here is a Developer really taking care of his product and in texas there is no care about their product. So I guess there is a difference.
A Bug you can fix immediately_ fix it. A Bug which needs a week. Take the week.
And Erel is one of the best examples for a Bugfixing Strategy.
Erel is amazing.
No question. Erel wants his product to be one of the best in the market. He knows that it is hard to promote and sell a product based on a basic dialect. That is here no question. And also is the product itself really in a good condition. You can program with it for Desktop, Web, Android, IOS, command Line (and yes, while Xojo writes it always: also for raspberry pi) and for Microcontrollers. He was doing a really good Job. And he always was doing all he could to be really fast with Bug fixes. And he helps by self in the community. Often you will read about solutions for problems users have erel writes to help his users to be always able to get their Jobs done. Marvelous. No question. Should it be with Xojo also? Yes. And depends it on the size of the team? Not in case of erel.
But for this you need also to know that he is a brilliant computer scientist with deep knowledge about .net and Java and also Javafx. He builded his compiler by self and he also builded his toolchain completely by self.
Only thing not so nice is that his IDE is only running on Windows. But with Parallels…
I will update App Wrapper soon, I’m just finishing up another project (one that pays the bills).
I waited incase Apple made any changes over the year of their first announcement. I’ve been burned before in adopting new technologies from Apple, only to find that the next year they’ve already changed it, or in one case, deprecated it.
Well the “sad” news for 3rd party developers is that Apple simplified the process dramatically (a year ago!), as you can see in the MBS script, posted on TOF. With the notary tool it is as easy as running one command in the console (or a script). Works like a charm for my javaFX installers (pkg, or DMG).
If you are lazy like me, and care about security, I suggest to create first a profile with your credentials:
- Log into your apple-id!!! account (not into developer.apple.com) with your dev account
- Create an app specific password
- Memorize / copy that password (you won’t see it ever again)
- Type this into a terminal window on macOS (in one line)
xcrun notarytool store-credentials "MYPROFILE" --apple-id "YOURAPPLEDEVEMAIL" --team-id YOURTEAMID --password YOURAPPSPECIFICPASSWORD
- Now you can notarize with a one liner w/o any need of sharing or memorizing your credentials (which are stored in your KeyChain Access under MYPROFILE :
xcrun notarytool submit YOURAPP.app.zip --keychain-profile "MYPROFILE" --wait
A few things to note:
- Your binaries and libraries need to be signed before notarization. I can’t remember how that works in the green environment. In Java Gradle scripts you just add your certificate name to the script, done.
- There is some limit how often you can notarize per day. I think it is about 75 attempts (successful or failed ones) per day. So Apple is generous, but not without limits.
- Don’t try to upload a binary (app). You should only use a zipped file, pkg, DMG. The most important difference is that the command will now wait until Apple will give you feedback. With the old method you had to check an ID until the result (failed, accepted, etc.) were available. That was an annoyance.
Reason for 3rd party tools:
And 3) is still a good business case for Sam’s brilliant tool App Wrapper 4, as Xojo doesn’t generate (JavaFX for instance does) pkgs or DMGs out of the box. I used Sam’s tool for Rust tools and GO fyne apps as well. It is comparable to Strawberry Software - Lifeboat - you can do stuff by your own, or you pay a few bugs and let the magic do by others and benefit from many extra tweaks and future changes in the apple dev ecosystem.
Last but not least:
If your notarization fails, you will still get an ID from Apple. Something like this:
Processing complete id: 62875f61-XXXXXXXXX-XXXXXX1f4afeaa18ed status: Invalid
you can the download that log file, for instance in json format like, this:
xcrun notarytool log 62875f61-XXXXXXXXX-XXXXXX1f4afeaa18ed --keychain-profile "MYPROFILE" sillyme_showmewhy_log.json
Update: I wrote my post in parallel to Sam’s, but my assumption was right. This change of Apple won’t stop him - especially in the Xojo world, all his helpers and tweaks are worth every penny. For instance you don’t have to care about your credentials etc, App Wrapper does all that and much more for you.
Wow, so that Xojo MVP wasn’t content with destroying my App Kit, or utilizing my research to promote their wares, they’re now going after App Wrapper… Sheesh…
you can read my mind. I think it is good that App Wrapper helps a lot beyond the green ecosystem.
And I am convinced that many Xojo users, still don’t want to use a terminal. And besides, if people aren’t 100 percent sure of what they’re doing, I would always recommend trusting the expertise of others.
I missed that one. I was a customer of that product, and only noticed that you sunset it shortly after. Do you mind sharing what happened?
DesktopControls are not interchangeable with rectControls. Which means I need to not only duplicate everything that can be used with controls, but I must also maintain two sets of declares, functions, custom controls, etc…
I spoke to Xojo about it, they introduced one feature for me (for declares), but it was broken and I waited for the fix, while I also tried to persuade Xojo to make it so I only needed to manage one set of code. The closest I got was “Use a variant”… Sigh.
I only made the App Kit publicly available because the certain MVP didn’t want to participate in the Omegabundle anymore, I knew with some extra elbow grease I could make a replacement (not total replacement). I did. I even poured months of work in to adding new controls that I wanted, which I believed could benefit the community.
That MVP then spent the next few years trying to have my App Kit removed from the bundle. Last year they succeeded.
With only half the income and having to duplicate and maintain two sets of code, I decided it was better for my health to focus on other more profitable things. Working on the App Kit was exciting though. i still enjoy being able to do things properly, even if it takes days to figure out how.
I am sorry that I let you and others down. It wasn’t an easy decision, took me months to make. It’s just a shame how I now feel about Xojo and that one MVP.
App Wrapper does far more than what that script does
But, its not the first time Christian has stepped on someone else’ toes to be … helpful ???
It is painful to read that there is no change in their minds while they believe they are kings. They should look on week uziel and his behavior to people bringing up functionality. Look at the web tools for b4j and you’ll realize how that process works.
They have no idea about. But they want to sell their stuffs. And that is the point.
A so functional poor thing like Xojo iOS needs plugins and also android. They miss the point. But not having a plugin interfacing implemented makes all of this complex while: no standards. Poor if somebody asks me.
But what ever, crashing down other vendors like Sam is less complex than writing better software.so simple.
Sorry, if my little script offended you.
I posted the script that I use on my blog as I saw the related thread on the forum. That one just notarizes a dmg and I use it frequently myself. Your App Wrapper does much more and I have a few customers, who bought it on my recommendation as they are not comfortable using shell scripts like I do.
I can’t remember that I was against your App Kit, so maybe you talk about another MVP?
We talked the last years, that tools need to get updated between bundles, so people from past OmegaBundles get something new buying the new bundle.
The Xojo add-on market has competition, especially if one tries to compete with free/built-in. I’ve that problem frequently myself.
Thank you for sharing! It confirms my suspicion that my move was essential.
Apparently, not only is the green company struggling with proven ethical business practices, but the whole ecosystem seems to have become a big mess. The idea that we all can achieve more by working together seems to be going out of fashion. And by “cooperate” I don’t mean something like an Omega bundle. Well it is, what it is.
I’mma say this, not because I want to argue, but because I feel I need to make it clear why I am unhappy with you.
- There is only one Xojo MVP who routinely uses threads/posts I create, or are directly related to my work, to promote their “wares”.
- There is only one Xojo MVP who talks down to me, as if I am below them.
- There is only one Xojo MVP who left the bundle, then tried to come back once a potential competitor had taken that place. That MVP got Omegabundle to agree to no product overlap, so when that MVP was successful in re-joining the bundle, my product had to go.
I do NOT go into threads related to that MVPs product and start telling people how they can do things using my wares and not their product. If I had, it would have not only been disrespectful, it’s also kinda sleezy.
There, I’ve said my piece. It’s up to you what you do with it.
I can’t get that somebody could misunderstand what you wrote and why. I can believe that Christian was not even thinking about it while he always where he smells a bit of a chance to make a deal immediately writes about the stuffs he delivers.
It is a ridiculous situation that the MVP are also Plugin deliverers. That will never be a good solution as is while the Customers always will get an MVP shower but ni information anymore from other vendors. So it was the end of your product in bundle while the decided. Neat.
Sorry if you perceived it like this, but that is not my view. Sorry if you got this impression from me. Yes, we compete sometimes for the same things, but I often recommend other third parties to my clients as I don’t do everything.
For Omegabundle I am asked every year by Lynn to participate. I would assume you get the same question. Yes, I skipped one year to see how the bundle does without my stuff.
In the bundle, we often have features from multiple vendors. You may see the same feature in the bundle implemented by you, me, Björn and Anthony. Overlap is not a problem.
The requirement usually is that the product got recently updated in the year and looking today on your website for AppKit, it still shows 2021 as version. Not yet updated for latest Xojo and Desktop controls. I don’t like these, too, but we have to somehow support them as new customers get their new projects using them. You may have used #if a lot and make an app to convert the text based Xojo project to from one way to other. e.g. only maintain the newer one and convert to older Xojo on release removing all Desktop prefixes.
If you’d update your classes and I would expect you easily get accepted again for the bundle.
In the Xojo add-on world, I try to help the other vendors and encourage customers to purchase all the available tools to improve their Xojo toolbox.
You seem to be making quite a few accusations there. Do you have the evidence to back them up?