In order to support attachments, and user feedback without the need of a native layer (web, windows, linux) we need a transport in Dart that supports envelopes.
there's no specs for rate-limiting yet but other SDKs already implemented it, eg Java https://github.com/getsentry/sentry-java/blob/main/sentry/src/main/java/io/sentry/transport/RateLimiter.java
There's also some info here: https://github.com/getsentry/develop/pull/171
It could be worth to look into Darts convert library for the serialization process.
It could be worth to look into Darts convert library for the serialization process.
we already use dart:convert for ser/deser, but this is a Sentry spec that contains JSON or binary data within a file, so not really related to it
iOS is a bit split up:
https://github.com/getsentry/sentry-cocoa/blob/master/Sources/Sentry/SentryDefaultRateLimits.m
https://github.com/getsentry/sentry-cocoa/blob/master/Sources/Sentry/SentryEnvelopeRateLimit.m
https://github.com/getsentry/sentry-cocoa/blob/master/Sources/Sentry/SentryConcurrentRateLimitsDictionary.m
https://github.com/getsentry/sentry-cocoa/blob/master/Sources/Sentry/SentryRateLimitCategoryMapper.m
https://github.com/getsentry/sentry-cocoa/blob/master/Sources/Sentry/SentryRateLimitParser.m
Thanks for all the links and help!