<div dir="ltr"><div><div><div><div><div><div><div>Mike Kaply wrote:<br><br>> The largest and most complex remote XUL app I know of is called Qualoupe<br>> and as far as I know, things have already started breaking them before 60.<br>><br>> I've asked them to comment in this conversation.<br><br></div>I'm the lead developer for Qualoupe, which is a "Laboratory Information Management System" (LIMS) - basically a suite of applications acting as a database front-end for laboratories. We began development back in 2008, when Mozilla were still pitching XUL to third parties as a cross-platform development solution, and HTML/JS/CSS was rather more lacking in capabilities than it is now. We chose to use Remote XUL to give our customers the advantages of a centrally managed system, but with the richness of XUL widgets at the front-end. XUL overlays are also invaluable in allowing us to customise the software for each of our clients, whilst still keeping them on a common base.<br><br></div>In terms of size, the codebase (excluding customisations) runs to over 30k lines of JS, and over 23k lines of XUL. On top of that we have over 16,000 lines of mixed XUL/JS in XBL bindings, which constitute most of the widgets used in the 23k lines of XUL. Adding in the custom code roughly doubles the JS and XUL counts.<br><br></div>We've been persevering with Remote XUL, hoping that a good replacement would become available before it was finally removed. We started work on a migration to XBL2 when that got ratified, only to see it fall by the wayside. We're currently working on a migration to Web Components, but that's been something of a moving target which has wasted a lot of our development time. We had hoped that native Web Components might become available in Firefox before Remote XUL became unusable, but that hasn't been the case, so we've been forced into migrating our code to use the polyfill (which works, but performance isn't great once things get complex).<br><br></div>In practical terms Remote XUL was broken with the move to multi-process Firefox. Popups - which includes menus - don't work in Remote XUL with multi-process enabled. Currently our customers are using 52ESR, but have to make a trip to about:config to disable multi-process, which is obviously less than satisfactory.<br><br></div>I have tried running Qualoupe against Firefox 60 (developer edition), and it's even more fundamentally broken. Our login page - the simplest application in the suite - fails to draw anything to the screen. It looks like it might be an issue with namespaces and our XBL code, but I haven't been able to find a solution. I'm loathe to spend too long on it, as I could easily find myself exploring a rabbit warren of issues, when my time would be better spent working on the migration to Web Components.<br><br></div>When even something as simple as our login screen (two XBL fields, one menupopup) fails to work, I think it's reasonable to say that Remote XUL is no longer functional. Perhaps an application using no XBL might still work, but from our perspective it no longer makes any difference whether or not Remote XUL is officially removed from Firefox, as it doesn't work for Qualoupe and I doubt that anything but the simplest Remote XUL application will work either.</div><div><br><br></div><div>Mark Crutch<br></div><div>Two Fold Software Ltd.<br><br></div></div>