Once patch in bug #161438 lands, GObject DOM API code will no longer be auto-generated, so it doesn't make sense to keep the unstable API. All API will be stable, since it can't be automatically changed. There's no API compatibility guarantee of the unstable part at all, but I don't want to break any application using any of the unstable APIS, so my plan is to move part of the unstable part API to stable. The approach could be something like this: 1.- Move any unstable method/property of stable classes to stable. 2.- Check if there's any application using API from any unstable class and move that entire class to stable. 3.- Remove all other unstable classes.
Yes, yes, yes, thank you! FYI: in GNOME unstable API is used by Epiphany, Evolution, and Yelp.
epiphany -------- WebKitDOMDOMSelection webkit_dom_dom_window_get_selection webkit_dom_element_get_class_list yelp ---- webkit_dom_element_webkit_matches_selector evolution --------- webkit_dom_html_element_get_hidden webkit_dom_html_element_set_hidden WebKitDOMDOMSelection webkit_dom_dom_window_get_selection webkit_dom_element_insert_adjacent_html webkit_dom_document_caret_range_from_point webkit_dom_document_fragment_query_selector webkit_dom_html_element_set_spellcheck webkit_dom_range_expand So, for now making WebKitDOMDOMSelection stable and moving all unstable methods of WebKitDOMDOMWindow, WebKitDOMHTMLElement, WebKitDOMDocument, WebKitDOMDocumentFragment, WebKitDOMRange and WebKitDOMElement to stable would work for ephy, evo and yelp. I'll ask in the mailing list if someone else is using unstable API.
Created attachment 288129 [details] Patch I hope I haven't missed anything. In any case we can bring back from unstable whatever we need on demand.
Committed r205543: <http://trac.webkit.org/changeset/205543>
Carlos thank you for doing this! (In reply to comment #2) > evolution > --------- > > webkit_dom_html_element_get_hidden > webkit_dom_html_element_set_hidden > webkit_dom_html_element_set_spellcheck I think we don't need to expose these things as we can use the webkit_dom_element_set/get_attribute so you can remove them from the API if you want.