Bug 124406

Summary: [GTK] Mark all deprecated symbols in GObject DOM bindings
Product: WebKit Reporter: Carlos Garcia Campos <cgarcia>
Component: BindingsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, commit-queue, glenn, gustavo, pnormand, zan
Priority: P2 Keywords: Gtk
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Updated patch gustavo: review+

Description Carlos Garcia Campos 2013-11-15 04:06:44 PST
We have custom (as not autogenerated) and deprecated symbols all in WebKitDOMCustom. The deprecated methods in WebKitDOMCustom are not marked as deprecated and they don't appear in the right documentation section, but all of them are mixed in WebKitDOMCustom, see:

http://webkitgtk.org/reference/webkitdomgtk/2.3.1/webkitdomgtk-WebKitDOMCustom.html

The deleted objects (also deprecated) are not included in the documentation either.
Comment 1 Carlos Garcia Campos 2013-11-15 04:22:23 PST
Created attachment 217041 [details]
Patch
Comment 2 Carlos Garcia Campos 2013-11-19 23:33:11 PST
Created attachment 217391 [details]
Updated patch

Just rebased.
Comment 3 Gustavo Noronha (kov) 2013-11-20 04:07:26 PST
Comment on attachment 217391 [details]
Updated patch

View in context: https://bugs.webkit.org/attachment.cgi?id=217391&action=review

LGTM with one minor nit:

> Source/WebCore/bindings/gobject/WebKitDOMDeprecated.cpp:22
> +#if !defined(WEBKIT_DISABLE_DEPRECATED)

I don't think we want this in the implementation file, just on the header, since it's something that should be used only by stuff that use WebKit at build time only.
Comment 4 Carlos Garcia Campos 2013-11-20 08:27:06 PST
(In reply to comment #3)
> (From update of attachment 217391 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=217391&action=review
> 
> LGTM with one minor nit:

Thanks for the review.

> > Source/WebCore/bindings/gobject/WebKitDOMDeprecated.cpp:22
> > +#if !defined(WEBKIT_DISABLE_DEPRECATED)
> 
> I don't think we want this in the implementation file, just on the header, since it's something that should be used only by stuff that use WebKit at build time only.

I'm not sure I get it. This is not used internally, when WebKit is built without deprecated symbols we don't want the implementations either, otherwise we will have a bunch of non static methods without a prototype.
Comment 5 Gustavo Noronha (kov) 2013-11-20 09:45:32 PST
What I mean is defining WEBKIT_DISABLE_DEPRECATED is not something we would do while building WebKit itself, it's something that people who depend on/link with WebKit will use, only. We want the symbols to always be in the library, the define exists only to make the prototypes disappear for API users at their build time, not WebKit's. Makes more sense put this way?
Comment 6 Carlos Garcia Campos 2013-11-21 00:22:42 PST
(In reply to comment #5)
> What I mean is defining WEBKIT_DISABLE_DEPRECATED is not something we would do while building WebKit itself, it's something that people who depend on/link with WebKit will use, only. We want the symbols to always be in the library, the define exists only to make the prototypes disappear for API users at their build time, not WebKit's. Makes more sense put this way?

Of course you are right, this is not an option to build webkit itself, thanks for the explanation. I'll remove it also from the generated code before landing.
Comment 7 Carlos Garcia Campos 2013-11-21 00:36:21 PST
Committed r159614: <http://trac.webkit.org/changeset/159614>