2sxc is back on the latest Oqtane - enjoy 🥳
2sxc 18 Released
Today we released 2sxc 18 with has loads of new features, but the most important for the Oqtane community is that it works with the latest Oqtane 5.1.2, which previous versions did not support.
You can find it on the Oqtane Marketplace as well as on the 2sxc Github releases.
Why do Previous Versions of 2sxc not work?
Oqtane is moving quickly and keeping up with the pace of the underlying .net 8 framework. One of the new features was SSR (Server-Side Static Rendering) which Oqtane strived to support as quickly as possible.
Unfortunately, this was quite a challenge. Blazor Server-Side Static Rendering appears solid, but it's obviously still WIP. It appears that a simple Blazor project will typically work without all the surprises we had, but when a platform such as Oqtane implements it, it must support all kinds of behaviors mixed together - and that's not easy.
So Oqtane 5.1.2 is awesome - and SSR works. But there are a lot of edge cases which don't quite work yet. These problems are typically related to aspects such as:
- Blazor Stream Rendering
- Blazor Enhanced Navigation
- JavaScript Support for existing JavaScript libraries
- Lots of differences in each rendering mode, often made more complex as there are stark differences in the first render, second-page renders (after a click) and in some cases even third-page renders (after a second click)
- Challenges with the routes and
Because of this, and because Oqtane is currently focusing on implementing new features such as Search, various combinations are not quite stable. This made it very difficult for 2sxc to support them all as well.
Limitations to the Current Setup
As of now, Oqtane 5.1.2 works, but we want to point out that some of the ca. 30 combinations of rendering setups will not work. Here we would like to highlight the ones that work, and the ones which will clearly cause trouble:
- ✅ Server-Side Static Rendering works well.
- ✅ Client-Side Rendering/Interativity using WASM works well.
- ⛔ Client-Side Rendering using Server-Side Interactivity is very bump ATM. It appears that often some things stop to work until you reload the page.
- ⛔ Sub sites don't really work as of now - that means something like blazor-cms.org will work, but a separate site with blazor-cms.org/abc will typically not work, no matter what render mode.
Bleeding Edge does include some Bleeding
We worked hard on this release - and also had our fair share of cursing. To be fair, it's open-source and Microsoft is still tuning the new Blazor in ways which subtly change their behavior on every release - so .net 8.0.0 is not behaving the same as .net 8.0.3. So it is a difficult challenge, but we're getting there.
Some of our feedback will already be in Oqtane 5.2 which is expected to be released in July or August 2024, so we believe that the two failing modes above should be working then as well.
For now just keep in mind that .net 8 and Oqtane are still fairly new, and the awesomess comes with the responsibility of testing it in your scenario and verifying everything works before pushing upgrades.
With Summer Love from Switzerland,
iJungleboy