getsentry / getsentry/sentry-react-native

Add `dataCollection` option type and deprecate `sendDefaultPii`

Offen
#5,996 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Errors React-Native Task
Vorherrschende Sprache
TypeScript
Sterne
1.8k
Forks
366
Ø Merge
1 T. 5 Std.
Gemergte PRs (30 T.)
93

Beschreibung

Add the new `dataCollection` option to `ReactNativeOptions` with the relevant subset of options from the [spec]().

## Tasks

* Define `DataCollectionOptions` type with at minimum: `userInfo`, `genAIInputs`, `genAIOutputs`, `stackFrameVariables`, `frameContextLines`
* Add `dataCollection` to `ReactNativeOptions` in `options.ts`
* Deprecate `sendDefaultPii` with a JSDoc `@deprecated` annotation
* Add backward-compat bridging: if `sendDefaultPii` is set but `dataCollection` is not, map `sendDefaultPii: true` → `dataCollection: { userInfo: true }`
* Emit a console warning when `sendDefaultPii` is used, pointing to `dataCollection`
* Add tests for the bridging logic

## References

* `packages/core/src/js/options.ts` — option definitions
* Spec: [https://develop.sentry.dev/sdk/foundations/client/data-collection/]()

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit packages/core/src/js/options.ts und der verknüpften Spezifikation zur Datenerfassung, um die relevanten ReactNativeOptions-Typen zu definieren. Ermittle den Pfad zur Normalisierung oder Initialisierung der Optionen für rückwärtskompatibles Bridging und füge anschließend Tests für das Mapping- und Warnverhalten hinzu. Erledigt bedeutet, dass dataCollection unterstützt wird, sendDefaultPii als veraltet markiert ist und bei seiner Verwendung eine Warnung ausgegeben wird und dass die angegebene Bridge funktioniert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
react-native, typescript
Bereich
mobile
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
68/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.