<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>220620</bug_id>
          
          <creation_ts>2021-01-14 02:43:27 -0800</creation_ts>
          <short_desc>[GTK] webkit_settings_set_enable_plugins deprecation warning breaks unit tests</short_desc>
          <delta_ts>2021-02-03 15:17:43 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Gratton">mike</reporter>
          <assigned_to name="Michael Catanzaro">mcatanzaro</assigned_to>
          <cc>berto</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gustavo</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1719564</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Gratton">mike</who>
    <bug_when>2021-01-14 02:43:27 -0800</bug_when>
    <thetext>Geary unit tests are currently failing on Fedora because the warning printed about calling `webkit_settings_set_enable_plugins` (Geary sets it to false) is presumably using g_warning(), causing the test harness to bail out:

&gt; Bail out! FATAL-WARNING: webkit_settings_set_enable_plugins is deprecated and does nothing. Plugins are no longer supported.

Please don&apos;t do this. There&apos;s no way I can keep that disabled for older versions and not get the warning with new versions without resorting to hasty hacks like preprocessor conditionals.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720004</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-01-15 14:02:09 -0800</bug_when>
    <thetext>There&apos;s also a warning for webkit_settings_set_enable_private_browsing(), but that one looks safe to keep since it&apos;s been quite a long time since it was deprecated, and using it surely indicates an application bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720009</commentid>
    <comment_count>2</comment_count>
      <attachid>417735</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-01-15 14:08:08 -0800</bug_when>
    <thetext>Created attachment 417735
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720012</commentid>
    <comment_count>3</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-01-15 14:09:06 -0800</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See https://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720278</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-01-18 00:32:16 -0800</bug_when>
    <thetext>You can temporary change the log fatal flag before calling webkit_settings_set_enable_plugins() and restore it after the call. That&apos;s what we do in WebKit tests too, using g_log_set_always_fatal().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720302</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Gratton">mike</who>
    <bug_when>2021-01-18 02:14:01 -0800</bug_when>
    <thetext>&gt; You can temporary change the log fatal flag before calling webkit_settings_set_enable_plugins() and restore it after the call.

Sure, but this call is made by an abstract base class that gets used in a lot of different places and hence different tests, so either it has to get disabled for all tests (what&apos;s the point having it then?) or it&apos;s disabled for a bunch of seemingly unrelated tests (more random boilerplate), and still requires a code fix to unbreak CI.

So I reckon it&apos;s much better that libraries just not break existing, non-problematic code in the first place.

Isn&apos;t there a convention like defining `GTK_DISABLE_DEPRECATED` for people who are interested in that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720304</commentid>
    <comment_count>6</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-01-18 02:22:59 -0800</bug_when>
    <thetext>(In reply to Michael Gratton from comment #5)
&gt; &gt; You can temporary change the log fatal flag before calling webkit_settings_set_enable_plugins() and restore it after the call.
&gt; 
&gt; Sure, but this call is made by an abstract base class that gets used in a
&gt; lot of different places and hence different tests, so either it has to get
&gt; disabled for all tests (what&apos;s the point having it then?) or it&apos;s disabled
&gt; for a bunch of seemingly unrelated tests (more random boilerplate), and
&gt; still requires a code fix to unbreak CI.

I see.

&gt; So I reckon it&apos;s much better that libraries just not break existing,
&gt; non-problematic code in the first place.

Sure, a g_warning is supposed to be harmless, tough, but it&apos;s true it&apos;s problematic for unit tests. So, maybe we can just turn that into a normal printf.

&gt; Isn&apos;t there a convention like defining `GTK_DISABLE_DEPRECATED` for people
&gt; who are interested in that?

We don&apos;t print a warning for every deprecated method, only when they become noop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720340</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-01-18 07:15:25 -0800</bug_when>
    <thetext>(In reply to Michael Gratton from comment #5)
&gt; Isn&apos;t there a convention like defining `GTK_DISABLE_DEPRECATED` for people
&gt; who are interested in that?

G_ENABLE_DIAGNOSTIC controls runtime deprecation warnings for properties and signals, so it seemed like a good fit for this to me....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720420</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Gratton">mike</who>
    <bug_when>2021-01-18 15:15:06 -0800</bug_when>
    <thetext>Yeah the patch as-is sounds like decent practice in general.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1720484</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-01-19 00:59:39 -0800</bug_when>
    <thetext>Well, this is not a &quot;normal&quot; deprecation warning saying that the functionality will be removed in a future version, it has already been removed, and it&apos;s important to let applications know it. I don&apos;t think it&apos;s common to run applications with G_ENABLE_DIAGNOSTIC=1, what makes the warning useless. Why not just making the call conditional to the WebKit version in Geary?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1724947</commentid>
    <comment_count>10</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-02 15:59:24 -0800</bug_when>
    <thetext>The argument for not making it conditional in Geary is:

(In reply to Michael Gratton from comment #5)
&gt; Sure, but this call is made by an abstract base class that gets used in a
&gt; lot of different places and hence different tests, so either it has to get
&gt; disabled for all tests (what&apos;s the point having it then?) or it&apos;s disabled
&gt; for a bunch of seemingly unrelated tests (more random boilerplate), and
&gt; still requires a code fix to unbreak CI.

I don&apos;t think it&apos;s important to let applications know the functionality has been removed if they are trying to *disable* plugins. That&apos;s why the proposed patch still warns only if applications are trying to *enable* plugins.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725061</commentid>
    <comment_count>11</comment_count>
      <attachid>417735</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2021-02-03 01:33:32 -0800</bug_when>
    <thetext>Comment on attachment 417735
Patch

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

&gt; Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp:1910
&gt; +    if (enabled || !g_strcmp0(g_getenv(&quot;G_ENABLE_DIAGNOSTIC&quot;), &quot;1&quot;))

Ok, but let&apos;s remove the G_ENABLE_DIAGNOSTIC check.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725340</commentid>
    <comment_count>12</comment_count>
      <attachid>419187</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-02-03 14:43:05 -0800</bug_when>
    <thetext>Created attachment 419187
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725359</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-03 15:17:40 -0800</bug_when>
    <thetext>Committed r272342: &lt;https://trac.webkit.org/changeset/272342&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 419187.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>417735</attachid>
            <date>2021-01-15 14:08:08 -0800</date>
            <delta_ts>2021-02-03 14:43:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-220620-20210115160807.patch</filename>
            <type>text/plain</type>
            <size>2225</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcxNTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGE5YWZiNzIxNDJlOWZhZmM0
ODJhZTY4NmE4OGExZDkzNjJlN2E0ZmQuLmU3ODA5Y2Y3NTJmZDYwZWQ2NmQxMjVhZWY1YjM3YTg5
ZWYxNTlhOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjEtMDEtMTUgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW0dUS10gd2Via2l0
X3NldHRpbmdzX3NldF9lbmFibGVfcGx1Z2lucyBkZXByZWNhdGlvbiB3YXJuaW5nIGJyZWFrcyB1
bml0IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjA2MjAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBDaGVjayBpZiBHX0VOQUJMRV9ESUFHTk9TVElDIGlzIHNldCBiZWZvcmUgcHJpbnRpbmcgYSB3
YXJuaW5nIHdoZW4gY2FsbGluZworICAgICAgICB3ZWJraXRfc2V0dGluZ3Nfc2V0X2VuYWJsZV9w
bHVnaW5zKCkgdG8gZGlzYWJsZSBwbHVnaW5zLiBXZSdsbCBzdGlsbCBwcmludCBhIHdhcm5pbmcg
aWYKKyAgICAgICAgYXR0ZW1wdGluZyB0byBlbmFibGUgcGx1Z2lucywgb3IgaWYgY2hlY2tpbmcg
d2hldGhlciBwbHVnaW5zIGFyZSBlbmFibGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9n
bGliL1dlYktpdFNldHRpbmdzLmNwcDoKKyAgICAgICAgKHdlYmtpdF9zZXR0aW5nc19nZXRfZW5h
YmxlX3BsdWdpbnMpOgorICAgICAgICAod2Via2l0X3NldHRpbmdzX3NldF9lbmFibGVfcGx1Z2lu
cyk6CisKIDIwMjEtMDEtMTUgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAg
ICAgICBbR1BVUHJvY2Vzc10gSW1wcm92ZSB0aGUgR1BVUHJvY2VzcycgbWVtb3J5IHByZXNzdXJl
IGhhbmRsZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dl
YktpdFNldHRpbmdzLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9nbGliL1dlYktp
dFNldHRpbmdzLmNwcAppbmRleCBkYTk2MjM3YWNmNjI5NjNlZTIxYjVjZmMxZjkxMTk2ZTI0Njc5
NzE0Li5mMWFlNzA3NmQzMDRmMTM5NTdjY2IyOTIyYjg3ZDVlYmU3OTg5ZGNkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvZ2xpYi9XZWJLaXRTZXR0aW5ncy5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0U2V0dGluZ3MuY3BwCkBA
IC0xOTAxLDExICsxOTAxLDE0IEBAIGdib29sZWFuIHdlYmtpdF9zZXR0aW5nc19nZXRfZW5hYmxl
X3BsdWdpbnMoV2ViS2l0U2V0dGluZ3MqIHNldHRpbmdzKQogICoKICAqIERlcHJlY2F0ZWQ6IDIu
MzIKICAqLwotdm9pZCB3ZWJraXRfc2V0dGluZ3Nfc2V0X2VuYWJsZV9wbHVnaW5zKFdlYktpdFNl
dHRpbmdzKiBzZXR0aW5ncywgZ2Jvb2xlYW4pCit2b2lkIHdlYmtpdF9zZXR0aW5nc19zZXRfZW5h
YmxlX3BsdWdpbnMoV2ViS2l0U2V0dGluZ3MqIHNldHRpbmdzLCBnYm9vbGVhbiBlbmFibGVkKQog
ewogICAgIGdfcmV0dXJuX2lmX2ZhaWwoV0VCS0lUX0lTX1NFVFRJTkdTKHNldHRpbmdzKSk7CiAK
LSAgICBnX3dhcm5pbmcoIndlYmtpdF9zZXR0aW5nc19zZXRfZW5hYmxlX3BsdWdpbnMgaXMgZGVw
cmVjYXRlZCBhbmQgZG9lcyBub3RoaW5nLiBQbHVnaW5zIGFyZSBubyBsb25nZXIgc3VwcG9ydGVk
LiIpOworICAgIC8vIFdlJ2xsIHByaW50IGEgd2FybmluZyBpZiB0cnlpbmcgdG8gZW5hYmxlIHBs
dWdpbnMsIHNpbmNlIHRoZSBhcHBsaWNhdGlvbiBpcyBicm9rZW4gaWYgaXQKKyAgICAvLyBuZWVk
cyBwbHVnaW5zLiBEaXNhYmxpbmcgcGx1Z2lucyBkb2VzIG5vdCBuZWVkIGEgd2FybmluZyB1bmxl
c3Mgc3BlY2lmaWNhbGx5IHJlcXVlc3RlZC4KKyAgICBpZiAoZW5hYmxlZCB8fCAhZ19zdHJjbXAw
KGdfZ2V0ZW52KCJHX0VOQUJMRV9ESUFHTk9TVElDIiksICIxIikpCisgICAgICAgIGdfd2Fybmlu
Zygid2Via2l0X3NldHRpbmdzX3NldF9lbmFibGVfcGx1Z2lucyBpcyBkZXByZWNhdGVkIGFuZCBk
b2VzIG5vdGhpbmcuIFBsdWdpbnMgYXJlIG5vIGxvbmdlciBzdXBwb3J0ZWQuIik7CiB9CiAKIC8q
Kgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419187</attachid>
            <date>2021-02-03 14:43:05 -0800</date>
            <delta_ts>2021-02-03 15:17:42 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-220620-20210203164304.patch</filename>
            <type>text/plain</type>
            <size>1952</size>
            <attacher name="Michael Catanzaro">mcatanzaro</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDJjYWQ3OGYxZTZlZjQ4OTlk
NmZlMzA0N2U5MzkzMmRjZWI5M2IxZTIuLmE2ZDkzODk0ZGEzN2Q5YzAxZmRmY2ZiY2I3ZTc4Njk5
OTVjYTY4MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjEtMDItMDMgIE1pY2hhZWwg
Q2F0YW56YXJvICA8bWNhdGFuemFyb0Bnbm9tZS5vcmc+CisKKyAgICAgICAgW0dUS10gd2Via2l0
X3NldHRpbmdzX3NldF9lbmFibGVfcGx1Z2lucyBkZXByZWNhdGlvbiB3YXJuaW5nIGJyZWFrcyB1
bml0IHRlc3RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjA2MjAKKworICAgICAgICBSZXZpZXdlZCBieSBDYXJsb3MgR2FyY2lhIENhbXBvcy4KKwor
ICAgICAgICBEb24ndCBwcmludCBhIHdhcm5pbmcgd2hlbiBjYWxsaW5nIHdlYmtpdF9zZXR0aW5n
c19zZXRfZW5hYmxlX3BsdWdpbnMoKSB0byBkaXNhYmxlIHBsdWdpbnMuCisgICAgICAgIFdlJ2xs
IHN0aWxsIHByaW50IGEgd2FybmluZyBpZiBhdHRlbXB0aW5nIHRvIGVuYWJsZSBwbHVnaW5zLCBv
ciBpZiBjaGVja2luZyB3aGV0aGVyIHBsdWdpbnMKKyAgICAgICAgYXJlIGVuYWJsZWQuCisKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0U2V0dGluZ3MuY3BwOgorICAgICAgICAo
d2Via2l0X3NldHRpbmdzX2dldF9lbmFibGVfcGx1Z2lucyk6CisgICAgICAgICh3ZWJraXRfc2V0
dGluZ3Nfc2V0X2VuYWJsZV9wbHVnaW5zKToKKwogMjAyMS0wMi0wMSAgQ2FybG9zIEdhcmNpYSBD
YW1wb3MgIDxjZ2FyY2lhQGlnYWxpYS5jb20+CiAKICAgICAgICAgW1NPVVBdIEFkZCBzdXBwb3J0
IGZvciBkYXRhIFVSTHMgaW4gdGhlIG5ldHdvcmsgcHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0U2V0dGluZ3MuY3BwIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL2dsaWIvV2ViS2l0U2V0dGluZ3MuY3BwCmluZGV4IGRhOTYyMzdh
Y2Y2Mjk2M2VlMjFiNWNmYzFmOTExOTZlMjQ2Nzk3MTQuLmIyZGQ0Y2JhMTA2ZTM1ZGY0N2E1MmFk
NjAzODBhNGFkOGM3ZWU4ZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQ
SS9nbGliL1dlYktpdFNldHRpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvZ2xpYi9XZWJLaXRTZXR0aW5ncy5jcHAKQEAgLTE5MDEsMTEgKzE5MDEsMTIgQEAgZ2Jvb2xl
YW4gd2Via2l0X3NldHRpbmdzX2dldF9lbmFibGVfcGx1Z2lucyhXZWJLaXRTZXR0aW5ncyogc2V0
dGluZ3MpCiAgKgogICogRGVwcmVjYXRlZDogMi4zMgogICovCi12b2lkIHdlYmtpdF9zZXR0aW5n
c19zZXRfZW5hYmxlX3BsdWdpbnMoV2ViS2l0U2V0dGluZ3MqIHNldHRpbmdzLCBnYm9vbGVhbikK
K3ZvaWQgd2Via2l0X3NldHRpbmdzX3NldF9lbmFibGVfcGx1Z2lucyhXZWJLaXRTZXR0aW5ncyog
c2V0dGluZ3MsIGdib29sZWFuIGVuYWJsZWQpCiB7CiAgICAgZ19yZXR1cm5faWZfZmFpbChXRUJL
SVRfSVNfU0VUVElOR1Moc2V0dGluZ3MpKTsKIAotICAgIGdfd2FybmluZygid2Via2l0X3NldHRp
bmdzX3NldF9lbmFibGVfcGx1Z2lucyBpcyBkZXByZWNhdGVkIGFuZCBkb2VzIG5vdGhpbmcuIFBs
dWdpbnMgYXJlIG5vIGxvbmdlciBzdXBwb3J0ZWQuIik7CisgICAgaWYgKGVuYWJsZWQpCisgICAg
ICAgIGdfd2FybmluZygid2Via2l0X3NldHRpbmdzX3NldF9lbmFibGVfcGx1Z2lucyBpcyBkZXBy
ZWNhdGVkIGFuZCBkb2VzIG5vdGhpbmcuIFBsdWdpbnMgYXJlIG5vIGxvbmdlciBzdXBwb3J0ZWQu
Iik7CiB9CiAKIC8qKgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>