The JS engine in Safari (and all browsers) is an entire walled off runtime that doesn’t have direct access to memory (because JS doesn’t do that) and doesn’t have access to the file system (because browsers don’t do that).
Native binaries in Swift, C, C++, Obj-C all have full access to memory and the file system in the normal old Unix way (POSIX). That makes them very dangerous.
The old WebView contained a C API and JS. This means it exposes the safe runtime to the unsafe runtime. The security people call that an “attack surface” and security folks, when they have an inherently unsafe thing (like a browser engine that will view pages from untrusted sites on the net) often talk about “reducing the total attack surface.” The old WebView, with the C API has a large attack surface.
WebKit now supports web assembly and this essentially lets you compile native code into the low level runtime engine inside the browser. This is pretty close to native speeds – running safe walled garden that JS lives in.
The challenge for web assembly is how to use it for something pragmatic. Currently I think there is only support for some system libraries to compile C, C++, and Rust.
Frustratingly the output to the DOM – and all interactions to the web page at all – must pass through JS.
So with web assembly the situation is no better. You still must pass through the very very slow JS DOM manipulation functions. And no browser has any plans to change that.
The other option would be a private build of WebKit. Perhaps with JS removed entirely. It seems quite feasible, but I think Apple would not allow it in the App Store. They’re pretty strict at only allowing WKWebView now.
So when I do a build of Stacks5.app for the Mac App Store it will always be with the new WebSockets WKWebView solution (among quite a few other things like updaters, that are disallowed in App Store builds).
My hope is that both RW9 and Stacks5 will be available as a trial/demo so that users can ensure that their existing sites can translate over to RW/Elements, or that the Stacks5 interface works as designed.
I can see the appeal of both solutions, with RW9/Elements it sounds like they will try to replicate some of the more fundamental stacks into their base product. From an end-user perspective this provides a ‘one-stop shopping’ experience. If there are any issues, there is only one developer/product to deal with.
Conversely the free-wheeling stack developers in Stacks5 can provide more esoteric tools for those users with more complex environments.
If I have a criticism of the existing stacks environment it is this;
If a stacks developer decides to drop out of the business, it can leave their users hanging, and if those stacks later break then it can cause financial issues to the end-user.
To this end, I would like to see a ‘Certificate of Continuity’ program, where developers can certify within the Stacks5 app, that if they drop out of the business - or are unable to continue - that they have made arrangements to pass support for their existing stacks to another developer.
Your final idea is great, but I suspect unrealistic.
Most… Not all, but I suspect most, Devs and their stacks drop out because the venture is no longer cost effective. Ie. They are making no money. Getting another Dev to take over development of such a stack is going to be challenging to say the least.
If on the other hand that dev is dropping out for other reasons and their stacks are still making money, or have the potential to make money, you normally find someone steps in.
Looking at this from a different perspective - RW9 is a new product. It’s leveraging it’s name but to all intents and purposes it’s a new app. It has (by design) closed the doors to previous developers unless they put a shitload of work in so users can carry on (this will be contentious and the shills will bite) and now it wants to shine by itself. Nothing wrong with that. Good luck to them, him. It does look like a money grab, it probably is. RW has not changed very much in it’s various incarnations, small upgrades at best for 50 bucks or so. I’m looking forward to the revelation that is RW9, I’m curious what will be on the table. Probably same as previous upgrades - fuck all. However I’m hopeful.
But, and there’s always a but, the whole ecosystem was never RW, it was stacks. I wish Dan all the luck in the world but this is a folly.
Looking back at previous versions, Rapidweaver without Stacks would have been like Photoshop without plug-ins. The combination gave casual users like me unprecedented power. Their upcoming divorce is something I dread. I wish that all parties would realize that users are the innocent children of this divorce. If both parties can’t figure out how to settle things amicably, I (and probably a lot of other people) will just go somewhere else. I don’t care who’s right, who’s wrong, who’s better, who’s worse, or who started it. I don’t have the time or interest to take a side, so I won’t be upgrading either product. You guys can argue all you want, even if it means that you divide and destroy the market for what were two great products. Sorry, but I have work to do.
I’m sorry but what is it that you are trying to accomplish by stating that? Could you at least elaborate a little on your statement and your rationale?
But don’t get caught up in the rush to something new, just cus it’s new. RW8 and S4 will continue to work for some time to come. So it should be more than possible to sit on your hands until the new iterations are working perfectly (as perfectly as anything works in the RW world!).
I don’t think anyone really knows what is going on nowadays regards RW9, Stacks, Stacks App, and so on. Frankly, it’s a bit of a shitshow.
Dan made an odd comment the other day (week) about a new way forward for RW, with an update coming soon. But it was rather cryptic with little real info, and then radio silence on the matter. Isaiah has been (I assume) busy doing his thing and has made no updated statement, so one can only assume from his end, S5 is still going to be a standalone app and there will be no integration with RW9. Whatever RW9 turns out to be!
Then you have the old forum coming back to life the other day, and being posted to by someone with access to the RM account, so you can only assume they are behind its re-enactment. But the new forum is also running. So even on the most basic level of a community, no one really knows the hell is going on.
As was said to me the other day: It’s clusterfuck business management at its very best. And I can’t disagree.
So having an alternative in play, like Blocs, is a very wise move at this time.
I think it’s a given. Isaiah has stated this more than once.
I guess if some stacks require a slight code tweak, if the dev has recently ceased support for them, they will fall by the wayside. But really, if a dev has ceased support for a stack you need to be finding an alternative anyway.
You seem confused and full of fear, uncertainty and doubt. RW9 has already gone in a different direction although the plans for RW9 seem to be in a state of flux and confusion and lack any detail or timescale.
Stacks App is under development specifically with the aim of running stacks. RW7 and RW8 will contnue to work with all existing stacks.
That’s quite a bit of a discussion that followed, right Simon? 😉
I can understand where you stand and that things aren’t set in stone.
Blocs is a valid choice imo, as is sticking with RW8/Stacks 4.
Regarding Stacks 5 and RW9, I can only go by what both developers shown of their character and make a prediction for the future. I believe Stacks 5 will be able to do what’s promised. Isiaha has proven to be a steady solid performer that hasn’t under delivered before and I don’t think that’ll change.It’s just who he is. Dan changed his tune a couple of times over the last couple of months, what makes it hard to predict what RW9 will become and when it’ll see the light of day.
But that’s what I believe. Simon, I think that you have enough choices with the current and coming applications to be secure enough to continue with your business as usual. No need to worry but instead look forward to be pleasantly surprised.
RapidWeaver Classic. Maybe this is an option to continue using the old Stacks concept. In this respect, the dispute between Yourhead and Realmac may have led to a reasonable compromise.
Looks like a money grab to me. “It’s a big update” yet it’s still RW8, 8.10 to be specific. Their reason why explains why it’s a money grab: to stay compatible with themes and plugins (read: Stacks). So the “lots of new features and many bug fixes” are meaningless if you’re a Stacks user. The “lots of new features and many bug fixes” are also meaningless if you intend to move to RW Elements. The “many bug fixes” should be part of RW8.
What a piece of work that guy… But that’s my conclusion. You’re entitled to your own but I won’t spend a penny on Realcrapsoftware.