Skip to content

Commit 597d219

Browse files
buenaflorcodex
andcommitted
ref: Export internal iterable utilities
Expose the nullable iterable extension through the core SDK barrel so Flutter can consume it the same way it consumes other internal SDK types. Co-Authored-By: GPT-5.5 <[email protected]> Made-with: Cursor
1 parent fe38858 commit 597d219

12 files changed

Lines changed: 13 additions & 24 deletions

File tree

packages/_sentry_testing/lib/src/fake_telemetry_processor.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
import 'dart:async';
44

55
import 'package:sentry/sentry.dart';
6-
// ignore: implementation_imports
7-
import 'package:sentry/src/utils/iterable_utils.dart';
86
import 'package:sentry/src/telemetry/processing/processor.dart';
97

108
/// Fake telemetry processor that captures telemetry data for test assertions.

packages/dart/lib/sentry.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,5 @@ export 'src/utils/breadcrumb_log_level.dart';
6969
export 'src/telemetry/telemetry.dart';
7070
// ignore: invalid_export_of_internal_element
7171
export 'src/utils/internal_logger.dart' show SentryInternalLogger;
72+
// ignore: invalid_export_of_internal_element
73+
export 'src/utils/iterable_utils.dart';

packages/dart/lib/src/utils/iterable_utils.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
import 'package:meta/meta.dart';
2+
3+
@internal
14
extension SentryIterableUtils<T> on Iterable<T>? {
25
T? get firstOrNull {
36
final iterator = this?.iterator;

packages/dart/test/utils/iterable_utils_test.dart

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
// ignore: implementation_imports
2-
import 'package:sentry/src/utils/iterable_utils.dart';
1+
import 'package:sentry/sentry.dart';
32
import 'package:test/test.dart';
43

54
void main() {

packages/flutter/lib/src/event_processor/android_platform_exception_event_processor.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ import 'dart:isolate';
33

44
import 'package:flutter/services.dart';
55
import 'package:package_info_plus/package_info_plus.dart';
6-
// ignore: implementation_imports
7-
import 'package:sentry/src/utils/iterable_utils.dart';
86
import '../../sentry_flutter.dart';
97
import '../jvm/jvm_exception.dart';
108
import '../jvm/jvm_frame.dart';

packages/flutter/lib/src/feedback/sentry_feedback_widget.dart

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
// ignore_for_file: library_private_types_in_public_api
1+
// ignore_for_file: invalid_use_of_internal_member, library_private_types_in_public_api
22

33
import 'package:flutter/material.dart';
44
import '../../sentry_flutter.dart';
55
import 'package:meta/meta.dart';
6-
// ignore: implementation_imports
7-
import 'package:sentry/src/utils/iterable_utils.dart';
86
import 'sentry_feedback_options.dart';
97
import 'package:flutter/services.dart';
108
import 'sentry_logo.dart';
@@ -19,10 +17,8 @@ class SentryFeedbackWidget extends StatefulWidget {
1917
@internal Hub? hub,
2018
}) : assert(associatedEventId != const SentryId.empty()),
2119
_hub = hub ?? HubAdapter() {
22-
// ignore: invalid_use_of_internal_member
2320
assert(_hub.options is SentryFlutterOptions,
2421
'SentryFlutterOptions is required');
25-
// ignore: invalid_use_of_internal_member
2622
final options = _hub.options as SentryFlutterOptions;
2723
this.options = options.feedback;
2824
}
@@ -110,7 +106,6 @@ class _SentryFeedbackWidgetState extends State<SentryFeedbackWidget> {
110106
}
111107

112108
Future<void> _captureReplay() async {
113-
// ignore: invalid_use_of_internal_member
114109
final integrations = widget._hub.options.integrations;
115110
final replayIntegration = integrations.firstWhereOrNull(
116111
(element) => element is ReplayIntegration,
@@ -440,7 +435,6 @@ class _SentryFeedbackWidgetState extends State<SentryFeedbackWidget> {
440435

441436
Future<SentryId> _captureFeedback(SentryFeedback feedback, Hint? hint) {
442437
hint ??= Hint();
443-
// ignore: invalid_use_of_internal_member
444438
hint.set(TypeCheckHint.isWidgetFeedback, true);
445439
return widget._hub.captureFeedback(feedback, hint: hint);
446440
}

packages/flutter/lib/src/integrations/load_contexts_integration.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import 'dart:async';
55
import 'package:sentry/sentry.dart';
66
import 'package:sentry/src/event_processor/enricher/enricher_event_processor.dart';
77
import 'package:sentry/src/telemetry/default_attributes.dart';
8-
import 'package:sentry/src/utils/iterable_utils.dart';
98
import '../native/sentry_native_binding.dart';
109
import '../sentry_flutter_options.dart';
1110
import '../utils/internal_logger.dart';

packages/flutter/lib/src/native/c/sentry_native.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1+
// ignore_for_file: invalid_use_of_internal_member
2+
13
import 'dart:async';
24
import 'dart:ffi';
35
import 'dart:io';
46
import 'dart:typed_data';
57

68
import 'package:ffi/ffi.dart';
79
import 'package:meta/meta.dart';
8-
// ignore: implementation_imports
9-
import 'package:sentry/src/utils/iterable_utils.dart';
1010

1111
import '../../../sentry_flutter.dart';
1212
import '../../replay/replay_config.dart';

packages/flutter/lib/src/native/java/sentry_native_java.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1+
// ignore_for_file: invalid_use_of_internal_member
2+
13
import 'dart:async';
24
import 'dart:typed_data';
35

46
import 'package:jni/jni.dart';
57
import 'package:meta/meta.dart';
6-
// ignore: implementation_imports
7-
import 'package:sentry/src/utils/iterable_utils.dart';
88

99
import '../../../sentry_flutter.dart';
1010
import '../../replay/replay_config.dart';

packages/flutter/lib/src/navigation/sentry_navigator_observer.dart

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ import 'package:flutter/widgets.dart';
77
import 'package:meta/meta.dart';
88
// ignore: implementation_imports
99
import 'package:sentry/src/sentry_tracer.dart';
10-
// ignore: implementation_imports
11-
import 'package:sentry/src/utils/iterable_utils.dart';
1210

1311
import '../../sentry_flutter.dart';
1412
import '../event_processor/flutter_enricher_event_processor.dart';

0 commit comments

Comments
 (0)