Skip to content

Commit 44b1dc4

Browse files
committed
Merge branch 'main' into allow-list-env-vars
2 parents 7a07ef7 + d56a5b5 commit 44b1dc4

File tree

76 files changed

+3486
-679
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+3486
-679
lines changed

.github/workflows/ffi.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
sdk: [dev]
3333
steps:
3434
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
35-
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
35+
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
3636
with:
3737
sdk: ${{ matrix.sdk }}
3838
- id: install
@@ -62,7 +62,7 @@ jobs:
6262
sdk: [beta, dev]
6363
steps:
6464
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
65-
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
65+
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
6666
with:
6767
sdk: ${{ matrix.sdk }}
6868
- id: install

.github/workflows/ffigen.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
fail-fast: false
3333
steps:
3434
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
35-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
35+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
3636
with:
3737
channel: 'stable'
3838
- id: install
@@ -54,7 +54,7 @@ jobs:
5454
working-directory: pkgs/ffigen/
5555
steps:
5656
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
57-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
57+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
5858
with:
5959
channel: 'stable'
6060
- name: Install dependencies
@@ -75,7 +75,7 @@ jobs:
7575
working-directory: pkgs/ffigen/
7676
steps:
7777
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
78-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
78+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
7979
with:
8080
channel: 'stable'
8181
- name: Install dependencies
@@ -106,7 +106,7 @@ jobs:
106106
working-directory: pkgs/ffigen/
107107
steps:
108108
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
109-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
109+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
110110
with:
111111
channel: 'stable'
112112
- name: Install dependencies
@@ -124,7 +124,7 @@ jobs:
124124
working-directory: pkgs/ffigen/
125125
steps:
126126
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
127-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
127+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
128128
with:
129129
channel: 'stable'
130130
- name: Install dependencies
@@ -152,7 +152,7 @@ jobs:
152152
working-directory: pkgs/ffigen/
153153
steps:
154154
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
155-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
155+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
156156
with:
157157
channel: "master"
158158
- name: Install dependencies

.github/workflows/ffigen_weekly.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
working-directory: pkgs/ffigen/
2929
steps:
3030
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
31-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
31+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
3232
with:
3333
channel: 'stable'
3434
- name: Install dependencies

.github/workflows/jnigen.yaml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
sdk: [stable]
4242
steps:
4343
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
44-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
44+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
4545
with:
4646
channel: ${{ matrix.sdk }}
4747
cache: true
@@ -77,7 +77,7 @@ jobs:
7777
sdk: [stable, beta]
7878
steps:
7979
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
80-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
80+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
8181
with:
8282
channel: ${{ matrix.sdk }}
8383
cache: true
@@ -128,7 +128,7 @@ jobs:
128128
working-directory: ./pkgs/jni
129129
steps:
130130
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
131-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
131+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
132132
with:
133133
channel: 'stable'
134134
cache: true
@@ -167,7 +167,7 @@ jobs:
167167
working-directory: ./pkgs/jni
168168
steps:
169169
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
170-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
170+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
171171
with:
172172
channel: 'stable'
173173
cache: true
@@ -216,7 +216,7 @@ jobs:
216216
working-directory: ./pkgs/jni
217217
steps:
218218
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
219-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
219+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
220220
with:
221221
channel: 'stable'
222222
cache: true
@@ -243,7 +243,7 @@ jobs:
243243
with:
244244
version: latest
245245
platform: x64
246-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
246+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
247247
with:
248248
channel: 'stable'
249249
cache: true
@@ -269,7 +269,7 @@ jobs:
269269
working-directory: ./pkgs/jni
270270
steps:
271271
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
272-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
272+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
273273
with:
274274
channel: 'stable'
275275
cache: true
@@ -294,7 +294,7 @@ jobs:
294294
uses: ConorMacBride/install-package@3e7ad059e07782ee54fa35f827df52aae0626f30
295295
with:
296296
brew: clang-format
297-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
297+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
298298
with:
299299
channel: 'stable'
300300
cache: true
@@ -317,7 +317,7 @@ jobs:
317317
working-directory: ./pkgs/jni/example
318318
steps:
319319
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
320-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
320+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
321321
with:
322322
channel: 'stable'
323323
cache: true
@@ -341,7 +341,7 @@ jobs:
341341
working-directory: ./pkgs/jni/example
342342
steps:
343343
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
344-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
344+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
345345
with:
346346
channel: 'stable'
347347
cache: true
@@ -365,7 +365,7 @@ jobs:
365365
with:
366366
distribution: 'zulu'
367367
java-version: '17'
368-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
368+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
369369
with:
370370
channel: 'stable'
371371
cache: true
@@ -380,7 +380,7 @@ jobs:
380380
working-directory: ./pkgs/jnigen/example/pdfbox_plugin
381381
steps:
382382
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
383-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
383+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
384384
with:
385385
channel: 'stable'
386386
cache: true

.github/workflows/native.yaml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ jobs:
4646
steps:
4747
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
4848

49-
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
49+
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
5050
with:
5151
sdk: ${{ matrix.sdk }}
5252

@@ -120,6 +120,15 @@ jobs:
120120
- run: dart pub get -C example/link/app_with_asset_treeshaking/
121121
if: ${{ matrix.package == 'native_assets_cli' }}
122122

123+
- run: dart pub get -C test_data/fail_build/
124+
if: ${{ matrix.package == 'native_assets_builder' }}
125+
126+
- run: dart pub get -C test_data/depend_on_fail_build/
127+
if: ${{ matrix.package == 'native_assets_builder' }}
128+
129+
- run: dart pub get -C test_data/depend_on_fail_build_app/
130+
if: ${{ matrix.package == 'native_assets_builder' }}
131+
123132
- run: dart analyze --fatal-infos
124133
# Run on dev to ensure we're not depending on deprecated SDK things.
125134

.github/workflows/native_toolchain_c.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434
steps:
3535
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
3636

37-
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
37+
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
3838
with:
3939
sdk: ${{ matrix.sdk }}
4040

.github/workflows/objective_c.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
fail-fast: false
3232
steps:
3333
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
34-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
34+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
3535
with:
3636
channel: 'stable'
3737
- id: install
@@ -52,7 +52,7 @@ jobs:
5252
working-directory: pkgs/objective_c/
5353
steps:
5454
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
55-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
55+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
5656
with:
5757
channel: 'stable'
5858
- name: Install dependencies
@@ -88,7 +88,7 @@ jobs:
8888
working-directory: pkgs/objective_c/example/
8989
steps:
9090
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
91-
- uses: subosito/flutter-action@44ac965b96f18d999802d4b807e3256d5a3f9fa1
91+
- uses: subosito/flutter-action@74af56c5ed2697ba4621264652728e8d217e53d3
9292
with:
9393
channel: 'stable'
9494
- name: Install dependencies

.github/workflows/swift2objc.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
fail-fast: false
3030
steps:
3131
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
32-
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
32+
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
3333
with:
3434
sdk: stable
3535
- id: install
@@ -50,7 +50,7 @@ jobs:
5050
working-directory: pkgs/swift2objc/
5151
steps:
5252
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
53-
- uses: dart-lang/setup-dart@0a8a0fc875eb934c15d08629302413c671d3f672
53+
- uses: dart-lang/setup-dart@e630b99d28a3b71860378cafdc2a067c71107f94
5454
with:
5555
sdk: stable
5656
- name: Install dependencies

pkgs/ffigen/lib/ffigen.dart

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,12 @@
88
/// https://pub.dev/packages/ffigen for details.
99
library ffigen;
1010

11-
export 'src/config_provider.dart' show Config, YamlConfig;
11+
export 'src/config_provider.dart'
12+
show
13+
Config,
14+
DeclarationFilters,
15+
ExternalVersions,
16+
Language,
17+
Versions,
18+
YamlConfig;
1219
export 'src/ffigen.dart' show FfiGen;

pkgs/ffigen/lib/src/code_generator/pointer.dart

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,15 @@ class ObjCObjectPointer extends PointerType {
154154

155155
@override
156156
String? generateRetain(String value) => 'objc_retain($value)';
157+
158+
@override
159+
bool isSupertypeOf(Type other) {
160+
other = other.typealiasType;
161+
// id/Object* is a supertype of all ObjC objects and blocks.
162+
return other is ObjCObjectPointer ||
163+
other is ObjCInterface ||
164+
other is ObjCBlock;
165+
}
157166
}
158167

159168
/// A pointer to an Objective C block.
@@ -168,4 +177,10 @@ class ObjCBlockPointer extends ObjCObjectPointer {
168177

169178
@override
170179
String? generateRetain(String value) => 'objc_retainBlock($value)';
180+
181+
@override
182+
bool isSupertypeOf(Type other) {
183+
other = other.typealiasType;
184+
return other is ObjCBlockPointer || other is ObjCBlock;
185+
}
171186
}

pkgs/ffigen/lib/src/config_provider.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@
66
library config_provider;
77

88
export 'config_provider/config.dart';
9+
export 'config_provider/config_types.dart';
910
export 'config_provider/yaml_config.dart';

pkgs/ffigen/lib/src/header_parser/parser.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import 'package:logging/logging.dart';
1212
import '../code_generator.dart';
1313
import '../code_generator/utils.dart';
1414
import '../config_provider.dart';
15-
import '../config_provider/config_types.dart';
1615
import '../strings.dart' as strings;
1716
import '../visitor/apply_config_filters.dart';
1817
import '../visitor/ast.dart';

pkgs/ffigen/lib/src/header_parser/sub_parsers/objcinterfacedecl_parser.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ void _parseSuperType(clang_types.CXCursor cursor, ObjCInterface itf) {
174174
kind: ObjCMethodKind.propertySetter,
175175
isClassMethod: isClassMethod,
176176
isOptional: isOptionalMethod,
177-
returnType: NativeType(SupportedNativeType.voidType),
177+
returnType: voidType,
178178
family: null,
179179
);
180180
setter.params

pkgs/ffigen/lib/src/visitor/fix_overridden_methods.dart

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,9 @@ class FixOverriddenMethodsVisitation extends Visitation {
130130
final (root, rootMethod) = _findRootWithMethod(node, method);
131131
// If method and rootMethod are the same kind, then there's nothing to do.
132132
if ((method.kind == ObjCMethodKind.propertyGetter) ==
133-
(rootMethod.kind == ObjCMethodKind.propertyGetter)) continue;
133+
(rootMethod.kind == ObjCMethodKind.propertyGetter)) {
134+
continue;
135+
}
134136
_convertAllSubtreeMethodsToProperties(root, rootMethod);
135137
}
136138
}

pkgs/ffigen/test/large_integration_tests/large_objc_test.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import 'dart:io';
1414

1515
import 'package:ffigen/ffigen.dart';
1616
import 'package:ffigen/src/code_generator/utils.dart';
17-
import 'package:ffigen/src/config_provider/config.dart';
1817
import 'package:ffigen/src/config_provider/config_types.dart';
1918
import 'package:logging/logging.dart';
2019
import 'package:pub_semver/pub_semver.dart';

0 commit comments

Comments
 (0)