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 a kotlin method for recording an exception with custom keys #6546

Merged
merged 49 commits into from
Dec 5, 2024

Conversation

tejasd
Copy link
Contributor

@tejasd tejasd commented Nov 29, 2024

No description provided.

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.2

@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 Nov 29, 2024

Javadoc Changes:
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/crashlytics/FirebaseCrashlytics.html	2024-12-05 21:09:32.562331189 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/crashlytics/FirebaseCrashlytics.html	2024-12-05 21:06:58.594928442 +0000
@@ -178,6 +178,13 @@
           <tr>
             <td><code>final void</code></td>
             <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</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/Throwable.html">Throwable</a>&nbsp;throwable,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</code></div>
+              <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code>final void</code></td>
+            <td>
               <div><code><a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>&nbsp;receiver,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</code></div>
               <p>Associates all key-value parameters with the reports</p>
             </td>
@@ -719,6 +726,11 @@
     </div>
     <div class="list">
       <h2>Extension functions</h2>
+      <div class="api-item"><a name="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable, kotlin.Function1)"></a><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.recordException-kotlin.Throwable-kotlin.Function1-"></a><a name="recordexception"></a>
+        <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">FirebaseCrashlyticsKt.recordException</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;void&nbsp;<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</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/Throwable.html">Throwable</a>&nbsp;throwable,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</pre>
+        <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+      </div>
       <div class="api-item"><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.setCustomKeys-kotlin.Function1-"></a><a name="setcustomkeys"></a>
         <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">FirebaseCrashlyticsKt.setCustomKeys</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;void&nbsp;<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>&nbsp;receiver,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</pre>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html	2024-12-05 21:09:32.562331189 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html	2024-12-05 21:06:58.594928442 +0000
@@ -48,6 +48,13 @@
           <tr>
             <td><code>static&nbsp;final void</code></td>
             <td>
+              <div><code><a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</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/Throwable.html">Throwable</a>&nbsp;throwable,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</code></div>
+              <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code>static&nbsp;final void</code></td>
+            <td>
               <div><code><a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>&nbsp;receiver,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</code></div>
               <p>Associates all key-value parameters with the reports</p>
             </td>
@@ -65,6 +72,11 @@
     </div>
     <div class="list">
       <h2>Public methods</h2>
+      <div class="api-item"><a name="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable, kotlin.Function1)"></a><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.recordException-kotlin.Throwable-kotlin.Function1-"></a><a name="recordexception"></a>
+        <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">FirebaseCrashlyticsKt.recordException</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;static&nbsp;final&nbsp;void&nbsp;<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</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/Throwable.html">Throwable</a>&nbsp;throwable,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</pre>
+        <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+      </div>
       <div class="api-item"><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.setCustomKeys-kotlin.Function1-"></a><a name="setcustomkeys"></a>
         <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">FirebaseCrashlyticsKt.setCustomKeys</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;static&nbsp;final&nbsp;void&nbsp;<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html">FirebaseCrashlyticsKt</a>.<a href="/docs/reference/android/com/google/firebase/crashlytics/FirebaseCrashlyticsKt.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</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/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>&nbsp;receiver,<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/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>,&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>&gt;&nbsp;init<br>)</pre>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/crashlytics/KeyValueBuilder.html	2024-12-05 21:09:32.562331189 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/crashlytics/KeyValueBuilder.html	2024-12-05 21:06:58.594928442 +0000
@@ -11,7 +11,7 @@
       <pre>public final class <a href="/docs/reference/android/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a></pre>
     </p>
     <hr>
-    <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/android/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code></p>
+    <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/android/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code> and <code><a href="/docs/reference/android/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a></code></p>
     <h2>Summary</h2>
     <div class="devsite-table-wrapper">
       <table class="responsive">
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/crashlytics/package-summary.html	2024-12-05 21:09:32.562331189 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/crashlytics/package-summary.html	2024-12-05 21:06:58.594928442 +0000
@@ -37,7 +37,7 @@
           <tr>
             <td><code><a href="/docs/reference/android/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a></code></td>
             <td>
-              <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/android/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code></p>
+              <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/android/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code> and <code><a href="/docs/reference/android/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a></code></p>
             </td>
           </tr>
         </tbody>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html	2024-12-05 21:09:32.554331219 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html	2024-12-05 21:06:58.594928442 +0000
@@ -178,6 +178,13 @@
           <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
             <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;throwable:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html">Throwable</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><br>)</code></div>
+              <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
+            <td>
               <div><code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a>(init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</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>
               <p>Associates all key-value parameters with the reports</p>
             </td>
@@ -719,6 +726,11 @@
     </div>
     <div class="list">
       <h2>Extension functions</h2>
+      <div class="api-item"><a name="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable, kotlin.Function1)"></a><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.recordException-kotlin.Throwable-kotlin.Function1-"></a><a name="recordexception"></a>
+        <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;throwable:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html">Throwable</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><br>):&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>
+        <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+      </div>
       <div class="api-item"><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.setCustomKeys-kotlin.Function1-"></a><a name="setcustomkeys"></a>
         <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</h3>
         <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a>(init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</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="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html	2024-12-05 21:09:32.554331219 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html	2024-12-05 21:06:58.594928442 +0000
@@ -11,7 +11,7 @@
       <pre>class <a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a></pre>
     </p>
     <hr>
-    <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code></p>
+    <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code> and <code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a></code></p>
     <h2>Summary</h2>
     <div class="devsite-table-wrapper">
       <table class="responsive">
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/crashlytics/package-summary.html	2024-12-05 21:09:32.554331219 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/crashlytics/package-summary.html	2024-12-05 21:06:58.594928442 +0000
@@ -33,7 +33,7 @@
           <tr>
             <td><code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a></code></td>
             <td>
-              <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code></p>
+              <p>Helper class to enable convenient syntax in <code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a></code> and <code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a></code></p>
             </td>
           </tr>
         </tbody>
@@ -50,6 +50,13 @@
           <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
             <td>
+              <div><code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;throwable:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html">Throwable</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><br>)</code></div>
+              <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></code></td>
+            <td>
               <div><code><a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a>(init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</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>
               <p>Associates all key-value parameters with the reports</p>
             </td>
@@ -76,6 +83,11 @@
       </table>
     </div>
     <h2>Extension functions</h2>
+    <div class="api-item"><a name="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable, kotlin.Function1)"></a><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.recordException-kotlin.Throwable-kotlin.Function1-"></a><a name="recordexception"></a>
+      <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</h3>
+      <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).recordException(kotlin.Throwable,kotlin.Function1)">recordException</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;throwable:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html">Throwable</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</a>.() <span style="white-space: nowrap;">-&gt;</span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a><br>):&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>
+      <p>Records a non-fatal report to send to Crashlytics with additional custom keys</p>
+    </div>
     <div class="api-item"><a name="-com.google.firebase.crashlytics.FirebaseCrashlytics-.setCustomKeys-kotlin.Function1-"></a><a name="setcustomkeys"></a>
       <h3 class="api-name" id="(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</h3>
       <pre class="api-signature no-pretty-print">fun&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/FirebaseCrashlytics.html">FirebaseCrashlytics</a>.<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/package-summary.html#(com.google.firebase.crashlytics.FirebaseCrashlytics).setCustomKeys(kotlin.Function1)">setCustomKeys</a>(init:&nbsp;<a href="/docs/reference/kotlin/com/google/firebase/crashlytics/KeyValueBuilder.html">KeyValueBuilder</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="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a></pre>

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Nov 29, 2024

Coverage Report 1

Affected Products

  • firebase-crashlytics

    Overall coverage changed from ? (71ceb1b) to 11.53% (c74729b) by ?.

    131 individual files with coverage change

    FilenameBase (71ceb1b)Merge (c74729b)Diff
    AnalyticsDeferredProxy.java?0.00%?
    AnalyticsEventLogger.java?0.00%?
    AnalyticsEventReceiver.java?0.00%?
    AppData.java?50.00%?
    AutoCrashlyticsReportEncoder.java?57.80%?
    AutoRolloutAssignmentEncoder.java?0.00%?
    AutoValue_CrashlyticsReport.java?0.00%?
    AutoValue_CrashlyticsReportWithSessionId.java?0.00%?
    AutoValue_CrashlyticsReport_ApplicationExitInfo.java?58.42%?
    AutoValue_CrashlyticsReport_ApplicationExitInfo_BuildIdMappingForArch.java?0.00%?
    AutoValue_CrashlyticsReport_CustomAttribute.java?0.00%?
    AutoValue_CrashlyticsReport_FilesPayload.java?0.00%?
    AutoValue_CrashlyticsReport_FilesPayload_File.java?0.00%?
    AutoValue_CrashlyticsReport_Session.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Application.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Application_Organization.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Device.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application_Execution.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application_Execution_BinaryImage.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Exception.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Signal.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application_Execution_Thread_Frame.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Application_ProcessDetails.java?40.35%?
    AutoValue_CrashlyticsReport_Session_Event_Device.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_Log.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_RolloutAssignment_RolloutVariant.java?0.00%?
    AutoValue_CrashlyticsReport_Session_Event_RolloutsState.java?0.00%?
    AutoValue_CrashlyticsReport_Session_OperatingSystem.java?0.00%?
    AutoValue_CrashlyticsReport_Session_User.java?0.00%?
    AutoValue_InstallIdProvider_InstallIds.java?0.00%?
    AutoValue_RolloutAssignment.java?0.00%?
    AutoValue_StaticSessionData.java?0.00%?
    AutoValue_StaticSessionData_AppData.java?0.00%?
    AutoValue_StaticSessionData_DeviceData.java?0.00%?
    AutoValue_StaticSessionData_OsData.java?0.00%?
    BackgroundPriorityRunnable.java?0.00%?
    BatteryState.java?0.00%?
    BlockingAnalyticsEventLogger.java?0.00%?
    BreadcrumbAnalyticsEventReceiver.java?0.00%?
    BreadcrumbHandler.java?0.00%?
    BreadcrumbSource.java?0.00%?
    BuildIdInfo.java?62.50%?
    BytesBackedNativeSessionFile.java?0.00%?
    CachedSettingsIo.java?0.00%?
    CLSUUID.java?0.00%?
    CommonUtils.java?1.09%?
    CrashlyticsAnalyticsListener.java?0.00%?
    CrashlyticsAppQualitySessionsStore.java?0.00%?
    CrashlyticsAppQualitySessionsSubscriber.java?0.00%?
    CrashlyticsController.java?18.52%?
    CrashlyticsCore.java?0.61%?
    CrashlyticsFileMarker.java?30.77%?
    CrashlyticsNativeComponent.java?0.00%?
    CrashlyticsNativeComponentDeferredProxy.java?25.00%?
    CrashlyticsOriginAnalyticsEventLogger.java?0.00%?
    CrashlyticsRegistrar.java?0.00%?
    CrashlyticsRemoteConfigListener.kt?0.00%?
    CrashlyticsReport.java?4.65%?
    CrashlyticsReportDataCapture.java?3.33%?
    CrashlyticsReportJsonTransform.java?1.01%?
    CrashlyticsReportPersistence.java?3.06%?
    CrashlyticsReportWithSessionId.java?0.00%?
    CrashlyticsTasks.java?0.00%?
    CrashlyticsUncaughtExceptionHandler.java?0.00%?
    CrashlyticsWorker.java?37.21%?
    CrashlyticsWorkers.kt?42.31%?
    CurrentTimeProvider.java?0.00%?
    CustomKeysAndValues.java?0.00%?
    DataCollectionArbiter.java?84.27%?
    DataTransportCrashlyticsReportSender.java?48.28%?
    DefaultSettingsJsonTransform.java?0.00%?
    DefaultSettingsSpiCall.java?0.00%?
    DeliveryMechanism.java?0.00%?
    DevelopmentPlatformProvider.java?0.00%?
    DisabledBreadcrumbSource.java?0.00%?
    EventMetadata.kt?0.00%?
    ExecutorUtils.java?0.00%?
    FileBackedNativeSessionFile.java?0.00%?
    FileLogStore.java?0.00%?
    FileStore.java?29.85%?
    FirebaseCrashlytics.java?0.00%?
    FirebaseCrashlytics.kt?0.00%?
    FirebaseInstallationId.kt?0.00%?
    HttpGetRequest.java?0.00%?
    HttpRequestFactory.java?0.00%?
    HttpResponse.java?0.00%?
    IdManager.java?2.63%?
    InstallerPackageNameProvider.java?0.00%?
    InstallIdProvider.java?0.00%?
    KeysMap.java?24.32%?
    KeyValueBuilder.kt?0.00%?
    LogFileManager.java?60.71%?
    Logger.java?40.54%?
    MetaDataStore.java?18.80%?
    MiddleOutFallbackStrategy.java?0.00%?
    MiddleOutStrategy.java?0.00%?
    NativeSessionFile.java?0.00%?
    NativeSessionFileGzipper.java?0.00%?
    NativeSessionFileProvider.java?0.00%?
    OnDemandCounter.java?0.00%?
    ProcessDetailsProvider.kt?70.59%?
    QueueFile.java?0.00%?
    QueueFileLogStore.java?7.58%?
    RemoteConfigDeferredProxy.java?0.00%?
    RemoveRepeatsStrategy.java?0.00%?
    ReportQueue.java?0.00%?
    ResponseParser.java?0.00%?
    RolloutAssignment.java?0.00%?
    RolloutAssignmentList.java?44.44%?
    SessionReportingCoordinator.java?42.13%?
    Settings.java?95.00%?
    SettingsCacheBehavior.java?0.00%?
    SettingsController.java?0.00%?
    SettingsJsonConstants.java?0.00%?
    SettingsJsonParser.java?0.00%?
    SettingsJsonTransform.java?0.00%?
    SettingsProvider.java?0.00%?
    SettingsRequest.java?0.00%?
    SettingsSpiCall.java?0.00%?
    SettingsV3JsonTransform.java?0.00%?
    StackTraceTrimmingStrategy.java?0.00%?
    StaticSessionData.java?0.00%?
    SystemCurrentTimeProvider.java?0.00%?
    TrimmedThrowableData.java?0.00%?
    UnavailableAnalyticsEventLogger.java?0.00%?
    UserMetadata.java?19.17%?
    Utils.java?0.00%?

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/LCViqbXhMX.html

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-crashlytics:
error: Added method com.google.firebase.crashlytics.FirebaseCrashlyticsKt.recordException(com.google.firebase.crashlytics.FirebaseCrashlytics,Throwable,kotlin.jvm.functions.Function1<? super com.google.firebase.crashlytics.KeyValueBuilder,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.

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-crashlytics:
error: Added method com.google.firebase.crashlytics.FirebaseCrashlyticsKt.recordException(com.google.firebase.crashlytics.FirebaseCrashlytics,Throwable,kotlin.jvm.functions.Function1<? super com.google.firebase.crashlytics.KeyValueBuilder,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.

1 similar comment
@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-crashlytics:
error: Added method com.google.firebase.crashlytics.FirebaseCrashlyticsKt.recordException(com.google.firebase.crashlytics.FirebaseCrashlytics,Throwable,kotlin.jvm.functions.Function1<? super com.google.firebase.crashlytics.KeyValueBuilder,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.

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-crashlytics:
error: Added method com.google.firebase.crashlytics.FirebaseCrashlyticsKt.recordException(com.google.firebase.crashlytics.FirebaseCrashlytics,Throwable,kotlin.jvm.functions.Function1<? super com.google.firebase.crashlytics.KeyValueBuilder,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.

1 similar comment
@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-crashlytics:
error: Added method com.google.firebase.crashlytics.FirebaseCrashlyticsKt.recordException(com.google.firebase.crashlytics.FirebaseCrashlytics,Throwable,kotlin.jvm.functions.Function1<? super com.google.firebase.crashlytics.KeyValueBuilder,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.

Copy link
Contributor

github-actions bot commented Nov 29, 2024

Test Results

 8 files  ±0   8 suites  ±0   19s ⏱️ ±0s
22 tests ±0  22 ✅ ±0  0 💤 ±0  0 ❌ ±0 
44 runs  ±0  44 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit ae29ffc. ± Comparison against base commit 71ceb1b.

♻️ This comment has been updated with latest results.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Nov 29, 2024

Size Report 1

Affected Products

  • firebase-crashlytics

    TypeBase (71ceb1b)Merge (c74729b)Diff
    aar415 kB415 kB+160 B (+0.0%)
    apk (release)5.85 MB5.85 MB+232 B (+0.0%)

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/YZ25c28FPw.html

Base automatically changed from td/record-exception to main December 5, 2024 20:53
@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-crashlytics:
error: Added method com.google.firebase.crashlytics.FirebaseCrashlyticsKt.recordException(com.google.firebase.crashlytics.FirebaseCrashlytics,Throwable,kotlin.jvm.functions.Function1<? super com.google.firebase.crashlytics.KeyValueBuilder,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.

@tejasd tejasd merged commit 91a74cc into main Dec 5, 2024
42 checks passed
@tejasd tejasd deleted the td/record-exception-ktx branch December 5, 2024 21:47
@firebase firebase locked and limited conversation to collaborators Jan 5, 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.

3 participants