🔥 RapidWeaver 9 Alpha - Universal 2 Build

Hey Developers,

Hope you’re all doing okay.

So we’ve been working hard on RapidWeaver 9 and I’m please to say I have an all new build for you to download. It’s Universal 2, works on both Intel and Apple Silicon based Macs. Unfortunately, there’s not really any new features in this build, it’s all under the hood, and some surface UI changes for now.

As always we’re aiming to release RW9 around the same time that Big Sur ships, we may or may not make that date, it all depends on when Apple decides to share that info.

You can Download RapidWeaver 9 Alpha (Universal 2) here, but please don’t share it as it’s a private developer only build.

Let us know if you have any questions.

Cheers
Dan

P.S. Plugins will not work in this build, they will need to be universal 2, codesigned AND notarized, details on this can be found in the posts below. Cc @Isaiah @rob @yabdab @makfruit:

4 Likes

Wow, plugins don’t work unless they’re compiled specifically for Universal 2, huh? I suspect that is going to kill some plugins and make it hard for larger ones to meet a Fall launch. If I understand correctly it is quite a bit of work to make this happen, right? This has potential to hurt the community as a whole if that happens. :pensive:

2 Likes

Everything is flexible right now, so we just have to keep pushing forward and see how we all get on. Plugins will have to be Universal 2, just like RapidWeaver has to be Universal to work on Apple Silicon. Otherwise the whole thing is running on emulation and that is far from ideal.

We’ll work with Isaiah and anyone else that needs help to get this done.

Don’t panic, just yet…

Cheers
Dan

First of all thanks a lot for that beta version. As plugins aren’t able to be executed there, well… Frankly speaking not really possible to give it a whirl.

Having a new RapidWeaver version without the possibility to have plugins running (because they aren’t able to make it compile with the new API) is even more far from ideal.

Don’t get me wrong, I am just having the feeling that you might see this too optimistic.

Cheers
Jannis

Hello,

Plugins can be compiled against the new API, we’ve converted all of the internal plugins without issue. The work required is completely doable, it just needs to be done.

RapidWeaver 9 will be released later this year, and we’d love to have all the popular plugins updated and ready to go.

We’re here to help should any plugin developers need it.

Many Thanks
Dan

I’ve downloaded RapidWeaver 9, but I’ve got to admit I’m really struggling to get it to do much. I’m using a 2018 Mac Mini running 10.15.6 Catalina.

How much internal testing has been done prior to giving us this link?

For starters, this dialogue is displayed:

Screenshot 2020-08-22 at 11.36.45

Clicking ‘later’ or ‘view issues now’ doesn’t seem to do anything for me, other than clear the message.

I see there is a new toolbar button at the top also marked ‘Issues’. But again when I click on it, nothing seems to happen. Is this something the user is suppose to see, or is it sending data back to Realmac in the background?

If I click any one of the sample projects, RapidWeaver crashes:

Screenshot 2020-08-22 at 11.37.55

If I create a new project, it seems to work okay for a period of time. But then a combination of saving the changes or undoing something causes it to crash with a slightly different crash message to the one above:

Screenshot 2020-08-22 at 11.59.32

I’ve sent all the crash reports with comments about what triggers them and possible steps to replicate them.

Sometimes preview can be very “laggy” and slow to refresh. Other times it’s much quicker.

Previewing of PHP pages seems to be totally broken. Even if I do something basic like this on a HTML Code page type…

<?php phpinfo(); ?>

…all I get is whiteness. Same with any page that has a .php extension.

Can’t seem to undock the Page Inspector any more to have it as a floating window.

The Blog and File Sharing page types are both missing for me:

Screenshot 2020-08-22 at 12.20.48

I hope you’ve not decided to kill them off permanently? You could be surprised how often customers still use these. And it will make the user experience of updating from older versions of RapidWeaver a lot harder if the Blog and File Sharing pages are missing.

One welcome addition is the new themes viewer. :+1: Really pleased to see you finally took my advice and reinstated a proper themes window again, instead of a minuscule little popup. One further improvement if I may - it would be nice to have a slider control that can resize the theme preview images. Perhaps display some other details like developer, version number, support link etc.

Choosing the new “Niner” theme causes RapidWeaver to crash. Niner seems to have the same preview icon as Artful.

Every page added to a project is shown with a ‘home’ icon:

Screenshot 2020-08-22 at 12.24.50

Duplicating a page (CMD + D) makes RapidWeaver crash.

Each time RapidWeaver 9 is restarted, the window size is really small. It would be good if RapidWeaver could remember its window size and position:

Formatting controls are shown like this:

Screenshot 2020-08-22 at 12.18.33

Once you have applied formatting, you can never clear it again. The Clear Formatting option does nothing.

That’s all the feedback I have for now, after about an hour of testing. The crash reports were all submitted.

Figured I’d just post the bugs I ran into that were not covered by @willwood above. I tried everything @willwood mentioned above to for a second test source and I too experienced everything he outlined as well.


When Customizing the Touch Bar there is a “Missing Label” error:


Tried to edit the Toolbar but could not find this feature in RW 9. In RW 8 it is done by right-clicking on the tool bar.


At first the Issues button didn’t do anything, but on second launch it started working and had this error:

The bundle “Stacks” couldn’t be loaded because it is damaged or missing necessary resources.

Try reinstalling the bundle.

Error Domain=NSCocoaErrorDomain Code=3587 "dlopen_preflight(/Users/adam/Library/Group Containers/P97H7FTHWN.com.realmacsoftware.rapidweaver/Library/Application Support/Addons/Stacks.rapidweaverplugin/Contents/MacOS/Stacks): Library not loaded: @rpath/RMKit.framework/Versions/A/RMKit
  Referenced from: /Users/adam/Library/Group Containers/P97H7FTHWN.com.realmacsoftware.rapidweaver/Library/Application Support/Addons/Stacks.rapidweaverplugin/Contents/MacOS/Stacks
  Reason: image not found" UserInfo={NSLocalizedFailureReason=The bundle is damaged or missing necessary resources., NSLocalizedRecoverySuggestion=Try reinstalling the bundle., NSFilePath=/Users/adam/Library/Group Containers/P97H7FTHWN.com.realmacsoftware.rapidweaver/Library/Application Support/Addons/Stacks.rapidweaverplugin/Contents/MacOS/Stacks, NSDebugDescription=dlopen_preflight(/Users/adam/Library/Group Containers/P97H7FTHWN.com.realmacsoftware.rapidweaver/Library/Application Support/Addons/Stacks.rapidweaverplugin/Contents/MacOS/Stacks): Library not loaded: @rpath/RMKit.framework/Versions/A/RMKit
  Referenced from: /Users/adam/Library/Group Containers/P97H7FTHWN.com.realmacsoftware.rapidweaver/Library/Application Support/Addons/Stacks.rapidweaverplugin/Contents/MacOS/Stacks
  Reason: image not found, NSBundlePath=/Users/adam/Library/Group Containers/P97H7FTHWN.com.realmacsoftware.rapidweaver/Library/Application Support/Addons/Stacks.rapidweaverplugin, NSLocalizedDescription=The bundle “Stacks” couldn’t be loaded because it is damaged or missing necessary resources.}


0   RapidWeaver 9                       0x0000000109ffb21a $s13RapidWeaver_918RWPluginDescriptorC16initializePluginyyKF + 330
1   RapidWeaver 9                       0x0000000109ffb2b5 $s13RapidWeaver_918RWPluginDescriptorC16initializePluginyyKFTo + 37
2   RapidWeaver 9                       0x000000010a151e59 -[RWPluginManager activatePluginAtPath:error:] + 340
3   RapidWeaver 9                       0x000000010a1518da -[RWPluginManager loadPluginsAtPaths:] + 386
4   RapidWeaver 9                       0x000000010a05fdc7 +[RWThemeInstaller installAllObjects] + 925
5   RapidWeaver 9                       0x000000010a01d5e5 -[RWApplication _installPluginsIfNecessary] + 41
6   RapidWeaver 9                       0x000000010a01d402 -[RWApplication applicationWillFinishLaunching:] + 152
7   CoreFoundation                      0x00007fff2870978c __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 12
8   CoreFoundation                      0x00007fff287a536b ___CFXRegistrationPost_block_invoke + 49
9   CoreFoundation                      0x00007fff287a52df _CFXRegistrationPost + 454
10  CoreFoundation                      0x00007fff286da20e _CFXNotificationPost + 723
11  Foundation                          0x00007fff2b08ffd2 -[NSNotificationCenter postNotificationName:object:userInfo:] + 59
12  AppKit                              0x00007fff2559379a -[NSApplication finishLaunching] + 576
13  AppKit                              0x00007fff255932aa -[NSApplication run] + 250
14  AppKit                              0x00007fff25567224 NSApplicationMain + 816
15  libdyld.dylib                       0x00007fff69a83851 start + 1

Maybe more of a critique than a bug, but the non-active icons in this toolbar look to be disabled:

Screen Shot 2020-08-22 at 4.57.46 PM


You can change the page specific theme in the Inspector, but upon doing so it does not seem to do anything. When changing the theme in the Page Inspector’s “Page-Specific Theme” there appears to no longer be a theme applied or at least there’s an error of some sort happening.


To add to this further – if you preview a PHP page it is completely blank and @willwood points out. But if you switch the name back to index.html the bug persists and the preview is still blank.


I only had a few minutes to work with RW 9 today, and only scratched the surface, but will try it some more later this week.

This is great feedback guys, keep it coming!

Please do remember this is an Alpha build, built with a Beta version of Xcode on Big Sur beta 4 and will contain many bugs and broken features. Some of the bugs listed are known problems and being worked on, but there are some new and really unexpected ones too!

As I’ve mentioned to most folks, I’m currently on a road trip dropping my kid off at his first year university. Comp Sci of course – he told someone today, “I think I chose it because of my dad.” I basically melted with pride. This whole trip is a radical emotion roller coaster.

Anyway – I’ll look at the new API stuff when I get back because I have almost no bandwidth at all right now.

Anything in particular I should focus on? Any really new or really changed stuff? Or mostly just fixes?

I know that folks are eager to get going with Stacks – so I thought I’d give a little status update. (edit – this got long. oops. sorry)

The new API has so far been great for little plugins. It was pretty easy to migrate Accordion. Just a couple days work. And most of that was figuring things out.

Other plugins like PlusKit and SiteMap seem questionable. I won’t give up hope until I’ve given each one some time – but I’m not optimistic. My tentative plan is to terminate: SiteMap+, PlusKit, Blocks, and Lockdown. From what I’ve seen so far these aren’t possible.

Setting Stacks aside – all the rest are like the built-in RapidWeaver plugins: basic. Migration is like Accordion: easy. The only challenge is trying to make things compatible with both RW8 and RW9. There was no deprecation, this means that in RW9 many things that exited in RW8 are simply gone. And of course RW8 doesn’t know about RW9.

I’m currently using RW runtime tricks to call methods by name. If anyone has a better flow, I’d love to know. Doing this on a small scale for a couple thousand lines of code is no big deal, but it really doesn’t scale up well.

And then there’s Stacks.

Stacks is tens of thousands of lines of code. It was originally architected around the RW API and thousands of lines of code have been added to it organically every year since 2008.

I don’t have access to my old email, but I think I told Dan and Tom it would take 12 to 18 months to build a RW8+RW9 version of Stacks. It’s been several months since then, but there’s still a ways to go.

It’s tough to estimate these things with any precision, but I seem to be nearing the halfway point of my to-do list. The new document architecture is done, which I think is one of the largest pieces of the puzzle. Many smaller bits still have yet to be started. Links, the new sidebar, markdown, etc.

The largest item still on the list in the new Site Images. The Resources API is all new. So it’s a rewrite of some really delicate code dealing with files (which means lots of error checking and fallbacks)

I originally budgeted 8 weeks for this, but now that I have more experience with this, I suspect it will be longer.

I had hoped that if I went pedal to the metal all year, I might hit the beginning of 2021. But from where I stand now, Summer 2021 seems more realistic. There’s still so much to do. I’m not even paying attention to Xcode right now – it still says there are about 2000 errors – mostly just missing methods that I have to point somewhere new – those need to be fixed too I guess. LOL.

But in case anyone doubts my conviction: I blogged about giving up weekends, hobbies (no 3D printing!!!), and other time off. I’m full on 100% – pedal to the metal – full-burn and all that so that – until I finish this triple-crown of the RW API, new Apple Silicon, and new Big Sur UI.

I’ve kept to this (mostly) since that blog post (in February maybe). Realistically COVID-19 has slowed me down. And I did take a week off a while ago (June?) because things were really nuts.

But fear not, I’m not burning out – I got this – just keeping a steady even pace.

Plus, I mean, I’m stuck in my house in a pandemic – pretty great year to hit me with all of the APIs and architectures and UIs all changing at the same time. LOL

Isaiah

Please tell me more. I would like some, please. :smiley:

Anything you can do to make building RW8 + RW9 + Apple Silicon a bit easier ( * cough * deprecation * cough *) would be super appreciated. Right now if I compile with RW8 API then all of my RW9 call break. And vice versa.

This is fine for little plugins. A few call-by-name methods is no big deal. But it doesn’t really scale for bigger things.

1 Like

Alright, found a few more minutes to look through things –


Niner theme’s feature to Uppercase Title in the Banner does not appear to do anything.

Same goes for the Uppercase Links option in the Navigation settings for the Niner theme


Can’t seem to drag and drop an Unsplash image from the Resources window into a Styled Text or Photo Album page.


The outline behind the Preferences menu tabs seems to be misaligned or offset. You can see it here behind the Publishing tab in this screenshot:


The Edit .htaccess file button is cropped off in the publishing settings:


The bookmarked publishing locations from my RW 8 installation don’t seem to have come over to RW 9:


Not a bug, just a suggestion as I look through things – Would it be possible to add formatting controls to the Notes section? Bold, Italic, Underline, Bulleted Lists, Links that open in an external browser, check lists, color selections, etc? This would make notes far more useful.


The small vertical divider lines between tabs in the Code settings seem unnecessary and cause a weird interaction with the border of selected items:


There’s an option for Twitter under the Generate Social Tags section in the General settings. Are Open Graph tags also generated? If not might be a good idea.


It might be good to have some kind of prompt when starting RW 9 for the first time to show that the theme’s selector has moved. Took me a long time to find it and I was actively looking. There’s no menu option or shortcut key that I can find. Maybe I’m missing it.

Also, would it be possible to have the search field be focused when switching over to the theme selector?

Speaking of the search field – this is another instance of the control looking disabled but it is actually not disabled:


Styled text has formatting controls the editor for setting bold, italic, lists, links, images, etc. Can that be implemented in the Markdown editor as well? It would make Markdown less intimidating to new users and more user friendly.


That’s about all I can test for a Sunday morning. Will keep testing later. :+1:

Alright, I had a few more minutes to take in the RW 9 alpha…


I see you’ve got the default page encoding set to Western (ISO Latin 1) in the Page Inspector. In RW 8 the default is Unicode (UTF-8). Is this change purposeful? I would expect the default would be UTF-8, but perhaps you’re going for a change purposefully?

Also, is there a place to set the encoding on a project-wide basis as well?


I’m not seeing the Master Styles settings page in the “Project” Inspector. Here’s a look at RW 9 and RW 8 projects inspectors side-by-side. Perhaps the Master Styles section has moved?


Sometimes changing theme settings in the theme inspector doesn’t seem to affect anything.


Switching page-specific themes in the Page Inspector has no affect on the project.


Switching themes causes crashes from time to time. Have sent crash reports when prompted.


I’ve tried to use the page-specific banner feature to replace the banner in the Lunar theme, but I see no affect when adding or changing the image.


Alright, that’s about all the time I had today.

Hey @dan, can I invite a developer from our team (Ecwid) to this thread? How do I do that? His nickname is @meteor

I might have some more time to set aside specifically for testing coming up. It is hard to test it in everyday use since Stacks isn’t available for it as of yet, so I have to set aside separate testing time to focus on it. I was wondering if there is a second alpha due soon?

@makfruit, all done. @meteor has been upgraded and should now have access to this forum👍

Also, see this other thread for news on Big Sur and RW 8 - RapidWeaver on Big Sur

Cheers
Dan

2 Likes

Great, thank you Dan!