Skip to content

Commit

Permalink
Prepare Rollbar Flutter SDK for 1.3.0 release. (#97)
Browse files Browse the repository at this point in the history
  • Loading branch information
matux authored Mar 15, 2023
1 parent 69d3c5d commit 617e182
Show file tree
Hide file tree
Showing 7 changed files with 34 additions and 10 deletions.
20 changes: 20 additions & 0 deletions rollbar_dart/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,26 @@
# Changelog

## 1.3.0

- The log, debug, info, warn, error and critical methods in `Rollbar` now accept any type of object including `Error`, `Exception` and `String`. Dart objects that specialize `toString()` can be also passed and they'll be converted into their string representations.

## 1.2.0
- Fixed two issues reported by the community:
- #91 Unsetting an user causes invalid argument exception, thanks to @rfuerst87 for reporting!
- #93 rollbar_flutter: Rollbar interface methods are overridden based on type of error object thanks to @TRemigi for reporting!
- The way we process event notifications has been refactored. This refactor addresses multiple deficiencies with how we transfer information from our front-end API to our internal Notifier process. This refactor solves multiple bugs, and presents a scalable mechanism to add new functionality in a composable way with the least amount of changes due to a very modularized scheme.
- The Notifier used to represent a sandboxed/isolated boundary between the SDK's innards and its API. Now the Notifier is just another switchable self-contained module just like the Transformer, Sender and Marshaller.
- A new Sandbox module that represents the aforementioned isolated boundary which offers two flavors: async useful for unit testing, and isolated which leverages Dart's Isolates.
- We keep the same level of security by sandboxing our memory, and full thread-enabled concurrency.
- This helps remove business logic from the Notifier, which used to handle both the process pipeline and the isolation.
- The way the API forwards messages to the Notifier is through Event instances, which is a type-safe way of encoding action and the data associated with such action. This event is dispatched to the Sandbox and the Sandbox sends it to the Isolate stream, and then it's given to the Notifier.
- The Notifier encodes the pipeline that processes these Events. There are two types of Events:
- Events that modify context (the SDK's state): In this case, the Notifier acts as a simple Reducer that modifies its internal state given the Event's data.
- Events that forward data to Rollbar's API: In this case, the event is put through the Marshalling pipeline, the data is transformed if necessary, persisted and then sent.
- Wrangler has been renamed to Marshaller.

## 1.1.0

- A more robust Persistent HTTP Sender error handling strategy allows for better outcomes and recovery in case of server and client errors.
- The Rollbar SDK will now produce more informative logs when dealing with network, HTTP client and/or server errors.
- HTTP client has been modularized in order to support mocking and noop clients.
Expand Down
4 changes: 2 additions & 2 deletions rollbar_dart/example/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
name: rollbar_dart_example
description: Demonstrates how to use rollbar-dart
version: 1.1.0
version: 1.3.0

publish_to: 'none'

environment:
sdk: ">=2.17.0 <3.0.0"
sdk: '>=2.17.0 <3.0.0'

dependencies:
logging: ^1.0.2
Expand Down
2 changes: 1 addition & 1 deletion rollbar_dart/lib/src/notifier/notifier.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import 'package:rollbar_dart/rollbar_dart.dart';
@sealed
abstract class Notifier {
// notifier version to be updated with each new release: [todo] automate
static const version = '1.1.0';
static const version = '1.3.0';
static const name = 'rollbar-dart';

FutureOr<Context> notify(Context state, final Event event);
Expand Down
2 changes: 1 addition & 1 deletion rollbar_dart/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: rollbar_dart
description: Connect your Dart applications to Rollbar for error reporting.
version: 1.1.0
version: 1.3.0
homepage: https://www.rollbar.com
documentation: https://docs.rollbar.com/docs/flutter#dart
repository: https://github.com/rollbar/rollbar-flutter
Expand Down
4 changes: 4 additions & 0 deletions rollbar_flutter/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

## 1.3.0
- Updated the Rollbar Dart SDK to 1.2.0 which includes fixes to two bugs reported by the community, brought by a general refactor of the event processing mechanism.
- The example was updated to reflect the API usages that where triggering the issues.

## 1.2.0
- Updated internal Rollbar Apple SDK from 1.x to 2.3.4.
- Using the newest version of the Rollbar Apple SDK will improve the ability for users to catch _native_ errors and fix them while using the Flutter SDK.
Expand Down
8 changes: 4 additions & 4 deletions rollbar_flutter/example/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
name: rollbar_flutter_example
description: Demonstrates how to use the rollbar_flutter plugin.
version: 1.1.0
version: 1.3.0

publish_to: "none" # Remove this line if you wish to publish to pub.dev
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

environment:
sdk: ">=2.17.0 <3.0.0"
flutter: ">=3.0.0"
sdk: '>=2.17.0 <3.0.0'
flutter: '>=3.0.0'

dependencies:
flutter:
Expand Down
4 changes: 2 additions & 2 deletions rollbar_flutter/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: rollbar_flutter
description: Connect your Flutter applications to Rollbar for error reporting.
version: 1.2.0
version: 1.3.0
homepage: https://www.rollbar.com
documentation: https://docs.rollbar.com/docs/flutter#flutter
repository: https://github.com/rollbar/rollbar-flutter
Expand All @@ -16,7 +16,7 @@ dependencies:
connectivity_plus: ^3.0.0
sqlite3_flutter_libs: '0.5.12'
rollbar_common: ^1.1.0
rollbar_dart: ^1.1.0
rollbar_dart: ^1.3.0

dependency_overrides:
rollbar_common:
Expand Down

0 comments on commit 617e182

Please sign in to comment.