<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Dec 14, 2015 at 7:41 PM, Mike Hommey <span dir="ltr"><<a href="mailto:mh@glandium.org" target="_blank">mh@glandium.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Mon, Dec 14, 2015 at 03:45:30PM -0800, Myk Melez wrote:<br>
> Folks,<br>
><br>
> I think we should disable the desktop and Android Web Runtimes in Firefox<br>
> and Fennec.<br>
><br>
> The Web Runtime projects were initiated by Mozilla Labs in 2011 and<br>
> developed by a Runtime Engineering team at MoCo that shipped the desktop<br>
> runtime in 2012 and the Android runtime in 2013. They're designed to run<br>
> "Open Web Apps," which in practice has meant "Firefox OS apps" hosted by the<br>
> Firefox Marketplace.<br>
><br>
> Both runtimes were deprioritized by MoCo around the times they initially<br>
> shipped, and they've seen little activity since. Bugs have gone unfixed,<br>
> enhancements have gone unimplemented, and unit tests have broken and been<br>
> disabled. Although their core functionality continues to work, their<br>
> developer and user experiences are poor, and their technical debt is<br>
> substantial and growing.<br>
><br>
> The Runtime Engineering team has also been disbanded, and its engineers have<br>
> been reassigned to other projects. MoCo no longer invests in the runtimes,<br>
> and it hasn't for years.<br>
><br>
> Nor has a significant community of other contributors evolved. App users and<br>
> developers file the occasional bug, but code contributions are few and far<br>
> between. And they're usually bustage fixes for Firefox/Fennec/Gecko changes<br>
> that inadvertently break the runtimes, which makes the runtimes a burden on<br>
> the developers of those projects.<br>
><br>
> I'm one of the early contributors to the runtimes, and I'm the module owner<br>
> for the Desktop Runtime module (and the relevant peer for Fennec), which<br>
> makes me ultimately responsible for them. I still think the runtimes could<br>
> provide a good experience for developers and users who want to build and run<br>
> web apps with deep native integration.<br>
><br>
> But it would take significant, ongoing investment to provide that<br>
> experience, and there's no evidence of that happening. Absent such<br>
> investment, and a commitment to maintain it, the benefits that the runtimes<br>
> provide don't justify their risks and costs to developers, users, and other<br>
> projects.<br>
><br>
> Disabling them isn't as simple as flipping a switch. It entrains other work,<br>
> like updating the docs on MDN to stop describing desktop/Android as<br>
> platforms for Open Web Apps and updating Marketplace to stop soliciting apps<br>
> from developers and distributing apps to users on those platforms.<br>
><br>
> There's also the question of how to let users know that their apps will stop<br>
> working and give them time to migrate to other apps (or to versions of those<br>
> apps that run within the browser). And there's the question of what to do<br>
> with the mozApps API on those platforms. I don't have all the answers yet,<br>
> but I'm making this proposal now anyway in order to get input on it before<br>
> making a final decision.<br>
><br>
> If I decide to disable the runtimes, I'll work with Marketplace,<br>
> Firefox/Fennec, and Gecko/mozApps peers to identify and address the various<br>
> dependencies, after which I'll complete the work to disable them and remove<br>
> their code from the mozilla-central repository.<br>
><br>
> Let me know your questions, concerns, and other thoughts.<br>
<br>
</div></div>Isn't the web app support (presumably through the runtime) exactly what was<br>
announced would be improved in Fennec during Mozlando? (with hires<br>
icons, full screen display, etc.)<br></blockquote><div><br></div><div>It's similar but the technical implementation is independent.  The "Web App Runtime" on Fennec that Myk refers to is the system that produces APK files wrapping a web app, and then arranges to run that web app in its own process.  (Independent of the Fennec process!)  That set of features is essentially untested and slows development down.  The future of Web Apps in Fennec is not 100% clear, but the features discussed in Mozlando are intended to be used and integrate more with Fennec-the-browser-process than stand beside it.  Parsing manifests to extract hires icons is possible in both worlds, but many things require lots of work on the Fennec side -- opening homescreen bookmarks fullscreen or with custom chrome UI, for example.<br><br></div><div>margaret and I can provide more technical detail as required.<br><br>Best,<br></div><div>Nick<br></div></div></div></div>