Skip to content

deps(ffigen): pin ffigen to 19.0.0 #3163

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

Merged
merged 14 commits into from
Aug 14, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@
- Add `DioException` response data to error breadcrumb ([#3164](https://github.com/getsentry/sentry-dart/pull/3164))
- Bumped `dio` min verion to `5.2.0`

### Dependencies

- Pin `ffigen` to `19.0.0` and add `objective_c` version `8.0.0` package used in `ffigen` on iOS and macOS ([#3163](https://github.com/getsentry/sentry-dart/pull/3163))

## 9.7.0-beta.1

### Features
Expand Down
1 change: 1 addition & 0 deletions packages/flutter/analysis_options.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ analyzer:
exclude:
- test/*.mocks.dart
- microbenchmarks/**
- lib/src/native/cocoa/binding.dart
language:
strict-casts: true
strict-inference: true
Expand Down
50 changes: 33 additions & 17 deletions packages/flutter/lib/src/native/c/binding.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// ignore_for_file: unused_field
// ignore_for_file: unused_field

// AUTO GENERATED FILE, DO NOT EDIT.
//
Expand Down Expand Up @@ -131,16 +131,16 @@ class SentryNative {
_value_new_objectPtr.asFunction<sentry_value_u Function()>();

/// Returns the type of the value passed.
int value_get_type(
sentry_value_type_t value_get_type(
sentry_value_u value,
) {
return _value_get_type(
return sentry_value_type_t.fromValue(_value_get_type(
value,
);
));
}

late final _value_get_typePtr =
_lookup<ffi.NativeFunction<ffi.Int32 Function(sentry_value_u)>>(
_lookup<ffi.NativeFunction<ffi.UnsignedInt Function(sentry_value_u)>>(
'sentry_value_get_type');
late final _value_get_type =
_value_get_typePtr.asFunction<int Function(sentry_value_u)>();
Expand Down Expand Up @@ -499,7 +499,8 @@ class SentryNative {
late final _options_get_dist = _options_get_distPtr.asFunction<
ffi.Pointer<ffi.Char> Function(ffi.Pointer<sentry_options_s>)>();

/// Enables or disables debug printing mode.
/// Enables or disables debug printing mode. To change the log level from the
/// default DEBUG level, use `sentry_options_set_logger_level`.
void options_set_debug(
ffi.Pointer<sentry_options_s> opts,
int debug,
Expand Down Expand Up @@ -855,6 +856,32 @@ class SentryNative {
_sdk_namePtr.asFunction<ffi.Pointer<ffi.Char> Function()>();
}

/// Type of a sentry value.
enum sentry_value_type_t {
SENTRY_VALUE_TYPE_NULL(0),
SENTRY_VALUE_TYPE_BOOL(1),
SENTRY_VALUE_TYPE_INT32(2),
SENTRY_VALUE_TYPE_DOUBLE(3),
SENTRY_VALUE_TYPE_STRING(4),
SENTRY_VALUE_TYPE_LIST(5),
SENTRY_VALUE_TYPE_OBJECT(6);

final int value;
const sentry_value_type_t(this.value);

static sentry_value_type_t fromValue(int value) => switch (value) {
0 => SENTRY_VALUE_TYPE_NULL,
1 => SENTRY_VALUE_TYPE_BOOL,
2 => SENTRY_VALUE_TYPE_INT32,
3 => SENTRY_VALUE_TYPE_DOUBLE,
4 => SENTRY_VALUE_TYPE_STRING,
5 => SENTRY_VALUE_TYPE_LIST,
6 => SENTRY_VALUE_TYPE_OBJECT,
_ =>
throw ArgumentError('Unknown value for sentry_value_type_t: $value'),
};
}

/// Represents a sentry protocol value.
///
/// The members of this type should never be accessed. They are only here
Expand All @@ -877,17 +904,6 @@ final class sentry_value_u extends ffi.Union {
external double _double;
}

/// Type of a sentry value.
abstract class sentry_value_type_t {
static const int SENTRY_VALUE_TYPE_NULL = 0;
static const int SENTRY_VALUE_TYPE_BOOL = 1;
static const int SENTRY_VALUE_TYPE_INT32 = 2;
static const int SENTRY_VALUE_TYPE_DOUBLE = 3;
static const int SENTRY_VALUE_TYPE_STRING = 4;
static const int SENTRY_VALUE_TYPE_LIST = 5;
static const int SENTRY_VALUE_TYPE_OBJECT = 6;
}

/// The Sentry Client Options.
///
/// See https://docs.sentry.io/platforms/native/configuration/
Expand Down
Loading
Loading