<?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>305726</bug_id>
          
          <creation_ts>2026-01-18 08:56:28 -0800</creation_ts>
          <short_desc>Add new IDL bindings extended attribute for dictionaries that still require using RefPtr for required interfaces</short_desc>
          <delta_ts>2026-01-18 18:41:13 -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>Bindings</component>
          <version>Safari 18</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>305410</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>cdumez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2172840</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2026-01-18 08:56:28 -0800</bug_when>
    <thetext>As a first step toward removing support for dictionaries using RefPtr for required interfaces, we should add a new IDL bindings extended attribute for all the dictionaries that still use it and attach that attribute to all the dictionaries. 

For any dictionary without the new attribute (and therefore using Ref&lt;&gt; for any required interfaces), we implement a new conversion implementation that does &quot;one-shot&quot; initialization. This will require that the native struct now also have the same order as the IDL dictionary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2172843</commentid>
    <comment_count>1</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2026-01-18 09:21:43 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/56790</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2172909</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-01-18 18:40:06 -0800</bug_when>
    <thetext>Committed 305790@main (2bb1d31a0fa7): &lt;https://commits.webkit.org/305790@main&gt;

Reviewed commits have been landed. Closing PR #56790 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2172910</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-01-18 18:41:13 -0800</bug_when>
    <thetext>&lt;rdar://problem/168422398&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>