[webkit-dev] WebKit GObject bindings: Who is guiding their future?
darin at apple.com
Mon Aug 29 10:01:09 PDT 2016
> On Aug 29, 2016, at 1:16 AM, Carlos Garcia Campos <carlosgc at webkit.org> wrote:
> Does that mean than from the WebIDL point of view all methods can now
> raise a exception? If don't tell the code generator that a method can
> raise a exception, we assume all could return a Exception?
Once the transition is done, the IDL will no longer indicate which functions can raise exceptions; the return types of C++ member functions will, instead. During the transition, exceptions can be indicated in either way.
> It actually depends on whether this is an exception or not.
- We will add better exception messages, which means DOM code has to provide more than an exception code.
- We will move things currently done in the DOM itself into the bindings.
- We would like to change the bindings generation scripts to run more quickly and so that fewer run when a given IDL source file is changed.
> If you really think that build is going to be broken often because of things very difficult to do in the GObject bindings, then we should indeed find a more general solution. Otherwise I prefer to solve this problem now, and keep the existing way of generating the bindings. We can add a rule that you can break the GObject DOM bindings build, to not block your work, and I'll try to fix it asap as we currently do with WebKit2.
Something like this might work. But coping with these changes is going to be challenging.
If you read the latest WebIDL draft <https://heycam.github.io/webidl/> you will see lots of features that are tricky to deal with—dictionary types, enumeration types, callback function types, promise types, union types, regular expressions, frozen arrays, stringifiers, serializers, indexed properties, named properties, overloading, map like, setlike—the only reason this is not a crisis is that many web APIs are old and so not built on any of these new concepts. Over time, critical features are being built on them.
I am OK with the “it is OK to break the GObject bindings build” strategy, I guess, but are you sure you are OK with that?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the webkit-dev