I have similar issues with some changes to prefs that I am planning. I too
am probably going to end up with a split implementation, with "good prefs"
(faster, better) for C++ usage and "crappy prefs" (the current
implementation) for JS usage.

https://bugzilla.mozilla.org/show_bug.cgi?id=1425909 is hitting the same
issue with telemetry probes.

In short, I know that front-end devs love artifact builds dearly, but they
are a significant constraint for these components that have longs lists of
things being tracked. It's a bit frustrating.

Nick

On Thu, Jan 18, 2018 at 2:47 AM, Gabriele Svelto <gsve...@mozilla.com>
wrote:

>  Hello all,
> I've tried to take into account all the suggestions from the discussion
> of my previous proposal [1] and I've come up with a new plan which
> should cover all bases. Don't hesitate to point out things that might
> still be problematic, since this is going to be a large refactoring it's
> better to get it right from the start.
>
> The biggest sticking point of my previous proposal was that it would
> prevent any modifications to the observer list from artifact builds.
> Addressing that particular issue effectively requires to keep the
> existing service in place so instead of replacing it altogether I'd do
> the following:
>
> 1) Introduce a new observer service that would live alongside the
> current one (nsIObserverService2?). This will use a machine-generated
> list of topics that will be held within the interface itself instead of
> a separate file as I originally proposed. This will become possible
> thanks to bug 1428775 [2]. The only downside of this is that the C++
> code will not use an enum but just integer constants. The upside is that
> this will need only one code generator and only one output file (the
> IDL) versus two generators and three files in my original proposal.
>
> 2) Migrate all C++-only and mixed C++/JS users to use the new service.
> Since the original service would still be there this can be done
> incrementally. Leave JS-only users alone.
>
> 3) Consider writing a JS-only pub/sub service that would be a better fit
> than the current observer service. If we can come up with something
> that's better than the observer service for JS then it can be used to
> retire the old service for good.
>
> So, how does this sound?
>
>  Gabriele
>
> [1]
> https://lists.mozilla.org/pipermail/dev-platform/2018-January/020935.html
> [2] Make it possible to generate IDL files
>     https://bugzilla.mozilla.org/buglist.cgi?quicksearch=1428775
>
>
> _______________________________________________
> firefox-dev mailing list
> firefox-...@mozilla.org
> https://mail.mozilla.org/listinfo/firefox-dev
>
>
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to