Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add custom signals support in Remote Config. #6410

Conversation

tusharkhandelwal8
Copy link
Contributor

@tusharkhandelwal8 tusharkhandelwal8 commented Oct 24, 2024

feat(rc): Add custom signals support and methods to set custom signals for Remote Config Custom targeting

Copy link
Contributor

github-actions bot commented Oct 24, 2024

Javadoc Changes:
--- /home/runner/diff/original/firebase-kotlindoc/android/client/firebase-config/_toc.yaml	2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/client/firebase-config/_toc.yaml	2024-12-03 04:49:07.808037179 +0000
@@ -20,6 +20,10 @@
     section:
     - title: "ConfigUpdate"
       path: "/docs/reference/android/com/google/firebase/remoteconfig/ConfigUpdate.html"
+    - title: "CustomSignals"
+      path: "/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html"
+    - title: "CustomSignals.Builder"
+      path: "/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html"
     - title: "FirebaseRemoteConfig"
       path: "/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html"
     - title: "FirebaseRemoteConfigSettings"
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html	1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html	2024-12-03 04:49:07.808037179 +0000
@@ -0,0 +1,102 @@
+<html devsite="true">
+  <head>
+    <title>CustomSignals.Builder</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/android/_reference-head-tags.html" %}
+  </head>
+  <body>
+    <div id="metadata-info-block"></div>
+    <h1>CustomSignals.Builder</h1>
+    <p>
+      <pre>public class <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+    </p>
+    <hr>
+    <h2>Summary</h2>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Public constructors</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Public methods</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>()</code></div>
+            </td>
+          </tr>
+          <tr>
+            <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key,&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html">Nullable</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;value)</code></div>
+            </td>
+          </tr>
+          <tr>
+            <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key,&nbsp;long&nbsp;value)</code></div>
+            </td>
+          </tr>
+          <tr>
+            <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key,&nbsp;double&nbsp;value)</code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="list">
+      <h2>Public constructors</h2>
+      <div class="api-item"><a name="Builder--"></a><a name="builder"></a>
+        <h3 class="api-name" id="Builder()">Builder</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</pre>
+      </div>
+    </div>
+    <div class="list">
+      <h2>Public methods</h2>
+      <div class="api-item"><a name="build--"></a><a name="build"></a>
+        <h3 class="api-name" id="build()">build</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>()</pre>
+      </div>
+      <div class="api-item"><a name="put(java.lang.String, java.lang.String)"></a><a name="put-java.lang.String-java.lang.String-"></a><a name="put"></a>
+        <h3 class="api-name" id="put(java.lang.String,java.lang.String)">put</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key,&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html">Nullable</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;value)</pre>
+      </div>
+      <div class="api-item"><a name="put(java.lang.String, long)"></a><a name="put-java.lang.String-long-"></a><a name="put"></a>
+        <h3 class="api-name" id="put(java.lang.String,long)">put</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key,&nbsp;long&nbsp;value)</pre>
+      </div>
+      <div class="api-item"><a name="put(java.lang.String, double)"></a><a name="put-java.lang.String-double-"></a><a name="put"></a>
+        <h3 class="api-name" id="put(java.lang.String,double)">put</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key,&nbsp;double&nbsp;value)</pre>
+      </div>
+    </div>
+  </body>
+</html>
+
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.html	1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.html	2024-12-03 04:49:07.808037179 +0000
@@ -0,0 +1,38 @@
+<html devsite="true">
+  <head>
+    <title>CustomSignals</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/android/_reference-head-tags.html" %}
+  </head>
+  <body>
+    <div id="metadata-info-block"></div>
+    <h1>CustomSignals</h1>
+    <p>
+      <pre>public class <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+    </p>
+    <hr>
+    <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+    <h2>Summary</h2>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Nested types</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td>
+              <div><code>public class <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+  </body>
+</html>
+
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html	2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html	2024-12-03 04:49:07.808037179 +0000
@@ -254,6 +254,13 @@
           <tr>
             <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>&gt;</code></td>
             <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>&nbsp;customSignals)</code></div>
+              <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>&gt;</code></td>
+            <td>
               <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setDefaultsAsync(java.util.Map&lt;java.lang.String,java.lang.Object&gt;)">setDefaultsAsync</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>,&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/Object.html">Object</a>&gt;&nbsp;defaults)</code></div>
               <p>Asynchronously sets default configs using the given <code><a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a></code>.</p>
             </td>
@@ -973,6 +980,33 @@
                 </td>
               </tr>
             </tbody>
+          </table>
+        </div>
+      </div>
+      <div class="api-item"><a name="setCustomSignals-com.google.firebase.remoteconfig.CustomSignals-"></a><a name="setcustomsignals"></a>
+        <h3 class="api-name" id="setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>&gt;&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>&nbsp;customSignals)</pre>
+        <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance. </p>
+        <p>The <code>customSignals</code> parameter should be an instance of <code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code>, which enforces the allowed types for custom signal values (String, Long or Double).</p>
+        <div class="devsite-table-wrapper">
+          <table class="responsive">
+            <colgroup>
+              <col width="40%">
+              <col>
+            </colgroup>
+            <thead>
+              <tr>
+                <th colspan="100%">Parameters</th>
+              </tr>
+            </thead>
+            <tbody class="list">
+              <tr>
+                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>&nbsp;customSignals</code></td>
+                <td>
+                  <p>A dictionary of keys and the values of the custom signals to be set for the app instance</p>
+                </td>
+              </tr>
+            </tbody>
           </table>
         </div>
       </div>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/RemoteConfigKt.html	2024-12-03 04:51:59.841690509 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/RemoteConfigKt.html	2024-12-03 04:49:07.812037220 +0000
@@ -53,6 +53,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>static&nbsp;final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#customSignals(kotlin.Function1)">customSignals</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-extension-function-type/index.html">ExtensionFunctionType</a> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> Function1&lt;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;builder<br>)</code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>static&nbsp;final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigValue.html">FirebaseRemoteConfigValue</a></code></td>
             <td>
               <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html">RemoteConfigKt</a>.<a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#(com.google.firebase.remoteconfig.FirebaseRemoteConfig).get(kotlin.String)">get</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a>&nbsp;receiver,<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key<br>)</code></div>
@@ -98,6 +104,10 @@
     </div>
     <div class="list">
       <h2>Public methods</h2>
+      <div class="api-item"><a name="customSignals-kotlin.Function1-"></a><a name="customsignals"></a>
+        <h3 class="api-name" id="customSignals(kotlin.Function1)">customSignals</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;static&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#customSignals(kotlin.Function1)">customSignals</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-extension-function-type/index.html">ExtensionFunctionType</a> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> Function1&lt;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;builder<br>)</pre>
+      </div>
       <div class="api-item"><a name="-com.google.firebase.remoteconfig.FirebaseRemoteConfig-.get-kotlin.String-"></a><a name="get"></a>
         <h3 class="api-name" id="(com.google.firebase.remoteconfig.FirebaseRemoteConfig).get(kotlin.String)">RemoteConfigKt.get</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;static&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigValue.html">FirebaseRemoteConfigValue</a>&nbsp;<a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html">RemoteConfigKt</a>.<a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#(com.google.firebase.remoteconfig.FirebaseRemoteConfig).get(kotlin.String)">get</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a>&nbsp;receiver,<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;key<br>)</pre>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/package-summary.html	2024-12-03 04:51:59.841690509 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/package-summary.html	2024-12-03 04:49:07.808037179 +0000
@@ -56,6 +56,16 @@
             </td>
           </tr>
           <tr>
+            <td><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+            <td>
+              <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td></td>
+          </tr>
+          <tr>
             <td><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code></td>
             <td>
               <p>Entry point for the Firebase Remote Config API.</p>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/client/firebase-config/_toc.yaml	2024-12-03 04:51:59.833690432 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/client/firebase-config/_toc.yaml	2024-12-03 04:49:07.804037140 +0000
@@ -20,6 +20,10 @@
     section:
     - title: "ConfigUpdate"
       path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/ConfigUpdate.html"
+    - title: "CustomSignals"
+      path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html"
+    - title: "CustomSignals.Builder"
+      path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html"
     - title: "FirebaseRemoteConfig"
       path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html"
     - title: "FirebaseRemoteConfigSettings"
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html	1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html	2024-12-03 04:49:07.804037140 +0000
@@ -0,0 +1,102 @@
+<html devsite="true">
+  <head>
+    <title>CustomSignals.Builder</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/kotlin/_reference-head-tags.html" %}
+  </head>
+  <body>
+    <div id="metadata-info-block"></div>
+    <h1>CustomSignals.Builder</h1>
+    <p>
+      <pre>class <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+    </p>
+    <hr>
+    <h2>Summary</h2>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Public constructors</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Public functions</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>()</code></div>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(key:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;value:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?)</code></div>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(key:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;value:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html">Long</a>)</code></div>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(key:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;value:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-double/index.html">Double</a>)</code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="list">
+      <h2>Public constructors</h2>
+      <div class="api-item"><a name="Builder--"></a><a name="builder"></a>
+        <h3 class="api-name" id="Builder()">Builder</h3>
+        <pre class="api-signature no-pretty-print"><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</pre>
+      </div>
+    </div>
+    <div class="list">
+      <h2>Public functions</h2>
+      <div class="api-item"><a name="build--"></a><a name="build"></a>
+        <h3 class="api-name" id="build()">build</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>():&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+      </div>
+      <div class="api-item"><a name="put(java.lang.String, java.lang.String)"></a><a name="put-java.lang.String-java.lang.String-"></a><a name="put"></a>
+        <h3 class="api-name" id="put(java.lang.String,java.lang.String)">put</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(key:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;value:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?):&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+      </div>
+      <div class="api-item"><a name="put(java.lang.String, long)"></a><a name="put-java.lang.String-long-"></a><a name="put"></a>
+        <h3 class="api-name" id="put(java.lang.String,long)">put</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(key:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;value:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html">Long</a>):&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+      </div>
+      <div class="api-item"><a name="put(java.lang.String, double)"></a><a name="put-java.lang.String-double-"></a><a name="put"></a>
+        <h3 class="api-name" id="put(java.lang.String,double)">put</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(key:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;value:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-double/index.html">Double</a>):&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+      </div>
+    </div>
+  </body>
+</html>
+
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.html	1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.html	2024-12-03 04:49:07.804037140 +0000
@@ -0,0 +1,38 @@
+<html devsite="true">
+  <head>
+    <title>CustomSignals</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/kotlin/_reference-head-tags.html" %}
+  </head>
+  <body>
+    <div id="metadata-info-block"></div>
+    <h1>CustomSignals</h1>
+    <p>
+      <pre>class <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+    </p>
+    <hr>
+    <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+    <h2>Summary</h2>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
+            <th colspan="100%"><h3>Nested types</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td>
+              <div><code>class <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+  </body>
+</html>
+
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html	2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html	2024-12-03 04:49:07.804037140 +0000
@@ -254,6 +254,13 @@
           <tr>
             <td><code><a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!&gt;</code></td>
             <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(customSignals:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>)</code></div>
+              <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!&gt;</code></td>
+            <td>
               <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setDefaultsAsync(java.util.Map&lt;java.lang.String,java.lang.Object&gt;)">setDefaultsAsync</a>(defaults:&nbsp;(<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html">Mutable</a>)<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html">Map</a>&lt;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>!,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html">Any</a>!&gt;)</code></div>
               <p>Asynchronously sets default configs using the given <code><a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a></code>.</p>
             </td>
@@ -990,6 +997,33 @@
                 </td>
               </tr>
             </tbody>
+          </table>
+        </div>
+      </div>
+      <div class="api-item"><a name="setCustomSignals-com.google.firebase.remoteconfig.CustomSignals-"></a><a name="setcustomsignals"></a>
+        <h3 class="api-name" id="setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(customSignals:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>):&nbsp;<a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a>&lt;<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!&gt;</pre>
+        <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance. </p>
+        <p>The <code>customSignals</code> parameter should be an instance of <code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code>, which enforces the allowed types for custom signal values (String, Long or Double).</p>
+        <div class="devsite-table-wrapper">
+          <table class="responsive">
+            <colgroup>
+              <col width="40%">
+              <col>
+            </colgroup>
+            <thead>
+              <tr>
+                <th colspan="100%">Parameters</th>
+              </tr>
+            </thead>
+            <tbody class="list">
+              <tr>
+                <td><code>customSignals:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+                <td>
+                  <p>A dictionary of keys and the values of the custom signals to be set for the app instance</p>
+                </td>
+              </tr>
+            </tbody>
           </table>
         </div>
       </div>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/package-summary.html	2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/package-summary.html	2024-12-03 04:49:07.804037140 +0000
@@ -56,6 +56,16 @@
             </td>
           </tr>
           <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+            <td>
+              <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+            <td></td>
+          </tr>
+          <tr>
             <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code></td>
             <td>
               <p>Entry point for the Firebase Remote Config API.</p>
@@ -135,6 +145,12 @@
         </colgroup>
         <tbody class="list">
           <tr>
+            <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+            <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#customSignals(kotlin.Function1)">customSignals</a>(builder:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>)</code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.html">FirebaseRemoteConfigSettings</a></code></td>
             <td>
               <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#remoteConfigSettings(kotlin.Function1)">remoteConfigSettings</a>(init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder.html">FirebaseRemoteConfigSettings.Builder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>)</code></div>
@@ -194,6 +210,10 @@
       </table>
     </div>
     <h2>Top-level functions</h2>
+    <div class="api-item"><a name="customSignals-kotlin.Function1-"></a><a name="customsignals"></a>
+      <h3 class="api-name" id="customSignals(kotlin.Function1)">customSignals</h3>
+      <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#customSignals(kotlin.Function1)">customSignals</a>(builder:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>):&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+    </div>
     <div class="api-item"><a name="remoteConfigSettings-kotlin.Function1-"></a><a name="remoteconfigsettings"></a>
       <h3 class="api-name" id="remoteConfigSettings(kotlin.Function1)">remoteConfigSettings</h3>
       <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#remoteConfigSettings(kotlin.Function1)">remoteConfigSettings</a>(init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder.html">FirebaseRemoteConfigSettings.Builder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>):&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.html">FirebaseRemoteConfigSettings</a></pre>

Copy link
Contributor

Vertex AI Mock Responses Check ⚠️

A newer major version of the mock responses for Vertex AI unit tests is available. update_responses.sh should be updated to clone the latest version of the responses: v5.1

@google-oss-bot
Copy link
Contributor

1 Warning
⚠️ Did you forget to add a changelog entry? (Add the 'no-changelog' label to the PR to silence this warning.)

Generated by 🚫 Danger

Copy link
Contributor

github-actions bot commented Oct 24, 2024

Test Results

 42 files  + 2   42 suites  +2   1m 27s ⏱️ +8s
326 tests +17  326 ✅ +17  0 💤 ±0  0 ❌ ±0 
664 runs  +34  664 ✅ +34  0 💤 ±0  0 ❌ ±0 

Results for commit c6b9c56. ± Comparison against base commit 5f75cc8.

♻️ This comment has been updated with latest results.

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-config:
error: Added method com.google.firebase.remoteconfig.FirebaseRemoteConfig.setCustomSignals(java.util.Map<java.lang.String,java.lang.Object>) [AddedMethod]

Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-config:
error: Added method com.google.firebase.remoteconfig.FirebaseRemoteConfig.setCustomSignals(java.util.Map<java.lang.String,java.lang.Object>) [AddedMethod]

Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-config:
error: Added method com.google.firebase.remoteconfig.FirebaseRemoteConfig.setCustomSignals(java.util.Map<java.lang.String,java.lang.Object>) [AddedMethod]

Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-config:
error: Added method com.google.firebase.remoteconfig.FirebaseRemoteConfig.setCustomSignals(java.util.Map<java.lang.String,java.lang.Object>) [AddedMethod]

Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.

@karenyz
Copy link

karenyz commented Oct 28, 2024

Also in general can you update the PR title/description with more info - "Add method to set custom signals for Remote Config targeting" or something

…ting

# Conflicts:
#	firebase-config/gradle.properties
…eting' into tushar-khandelwal/rc-custom-targeting

# Conflicts:
#	firebase-config/ktx/src/test/kotlin/com/google/firebase/remoteconfig/TestConstructorUtil.kt
#	firebase-config/ktx/src/test/kotlin/com/google/firebase/remoteconfig/ktx/RemoteConfigTests.kt
#	firebase-config/src/androidTest/java/com/google/firebase/remoteconfig/FirebaseRemoteConfigIntegrationTest.java
#	firebase-config/src/main/java/com/google/firebase/remoteconfig/FirebaseRemoteConfig.java
#	firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java
#	firebase-config/src/test/java/com/google/firebase/remoteconfig/FirebaseRemoteConfigTest.java
#	firebase-config/src/test/java/com/google/firebase/remoteconfig/RemoteConfigTests.kt
#	firebase-config/src/test/java/com/google/firebase/remoteconfig/TestConstructorUtil.kt
#	firebase-config/src/test/java/com/google/firebase/remoteconfig/internal/ConfigFetchHandlerTest.java
#	firebase-config/src/test/java/com/google/firebase/remoteconfig/ktx/RemoteConfigTests.kt
@themiswang themiswang requested a review from mrober November 22, 2024 18:19
Rename ConfigMetadataClient to ConfigSharedPrefsClient

Reflects expanded functionality to store both metadata and custom
signals in shared preferences.
@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-config:
error: Added method com.google.firebase.remoteconfig.RemoteConfigKt.customSignals(kotlin.jvm.functions.Function1<? super com.google.firebase.remoteconfig.CustomSignals.Builder,kotlin.Unit>) [AddedMethod]

Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.

…ndelwal/rc-custom-targeting

# Conflicts:
#	firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java
#	firebase-config/src/main/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClient.java
#	firebase-config/src/test/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClientTest.java
@tusharkhandelwal8 tusharkhandelwal8 changed the base branch from main to remoteConfigCustomTargeting November 27, 2024 17:09
@karenyz
Copy link

karenyz commented Dec 3, 2024

Also in general can you update the PR title/description with more info - "Add method to set custom signals for Remote Config targeting" or something

I think the PR title still needs to be updated?

@tusharkhandelwal8 tusharkhandelwal8 changed the title Tushar khandelwal/rc custom targeting Add custom signals support for Remote Config. Dec 5, 2024
@tusharkhandelwal8 tusharkhandelwal8 changed the title Add custom signals support for Remote Config. Add custom signals support in Remote Config. Dec 5, 2024
@tusharkhandelwal8 tusharkhandelwal8 merged commit 17cc491 into remoteConfigCustomTargeting Dec 9, 2024
34 checks passed
@tusharkhandelwal8 tusharkhandelwal8 deleted the tushar-khandelwal/rc-custom-targeting branch December 9, 2024 19:28
@firebase firebase locked and limited conversation to collaborators Jan 9, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants