Skip to content
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

Merge package:ffigen into dart-lang/native #185

Merged
merged 283 commits into from
Nov 14, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
283 commits
Select commit Hold shift + click to select a range
e07937e
[ffigen] Remove structs members for bit field members, Added tests (#85)
mannprerak2 Aug 20, 2020
74a808b
[ffigen] Fix missing typedef dependencies (#90)
mannprerak2 Aug 24, 2020
82875d4
[ffigen] Improve logs (#87)
mannprerak2 Aug 24, 2020
9566c7e
[ffigen] Removed dart:cli usage, use dylib version from ffigen's pubs…
mannprerak2 Aug 24, 2020
eb3cae2
[ffigen] Added support for c99 bool (#86)
mannprerak2 Aug 24, 2020
f760287
[ffigen] Clarify LLVM error messages (#93)
mannprerak2 Aug 24, 2020
8e287ce
[ffigen] Added support for including/excluding/renaming unnamed_enums…
mannprerak2 Aug 27, 2020
4a17f0d
[ffigen] Update README.md (#97)
mit-mit Aug 27, 2020
74a89af
[ffigen] Update lib/src/README.md (#100)
mannprerak2 Aug 31, 2020
ad56104
[ffigen] Bump version to 1.0.0, minor fixes (#101)
mannprerak2 Aug 31, 2020
026ffe1
[ffigen] Handle function types in functions/typedefs as function poin…
mannprerak2 Sep 7, 2020
ed2cf4d
[ffigen] Update readme (#104)
mannprerak2 Sep 15, 2020
46dc624
[ffigen] Fixed errors due to extended ASCII and control characters in…
mannprerak2 Sep 22, 2020
a4923ab
[ffigen] Updated tool to use dart format when sdk >=2.10.0 (#110)
mannprerak2 Oct 2, 2020
13a64f3
[ffigen] Handled proper conversion of macro doubles. (#113)
mannprerak2 Oct 12, 2020
7a7a823
[ffigen] Fixed missing typedefs nested under return type of another t…
mannprerak2 Oct 30, 2020
59708c6
[ffigen] Added workaround to map typedef names to a NativeType. (#119)
mannprerak2 Nov 12, 2020
3f86713
[ffigen] Added support for Dart_Handle to be generated as Handle (#121)
mannprerak2 Nov 23, 2020
68e4fa0
[ffigen] Migrate to GitHub Actions (#124)
athomas Dec 21, 2020
d98fee1
[ffigen] Null safety migration (#122)
mannprerak2 Jan 5, 2021
2ab4701
[ffigen] Remove usage of package:collection. (#130)
mannprerak2 Jan 5, 2021
fb8ac4e
[ffigen] Add include path for systems with LLVM 11 (e.g. Debian 11) (…
jpnurmi Jan 11, 2021
4a9672f
[ffigen] Removed usage of --no-sound-null-safety flag. (#136)
mannprerak2 Jan 11, 2021
06131d6
[ffigen] Update README.md (#152)
mit-mit Feb 23, 2021
7f3948f
[ffigen] Support for Nested structs (#133) (#161)
mannprerak2 Mar 1, 2021
bee5db2
[ffigen] Support for passing/returning Structs by value. (#134) (#163)
mannprerak2 Mar 1, 2021
7ae4d24
[ffigen] Remove setup phase and usage of --no-sound-null-safety flag …
mannprerak2 Mar 1, 2021
bd78139
[ffigen] Added support for Global variables (#139) (#165)
mannprerak2 Mar 1, 2021
f75b3e8
[ffigen] Use Opaque to represent empty Structs (#142, #143) (#166)
mannprerak2 Mar 1, 2021
3cf6fc0
[ffigen] Skip inline functions (#147) (#167)
mannprerak2 Mar 1, 2021
d785fee
[ffigen] Stable release: Update dependencies to sound null safety, mi…
mannprerak2 Mar 1, 2021
d1a04a0
[ffigen] Fixes for `const` in name error, unnamed inline structs and …
mannprerak2 Mar 2, 2021
a34723f
[ffigen] Ignore name of typedef struct pointer declaration, recursive…
mannprerak2 Mar 3, 2021
8cd3d69
[ffigen] Support for Dynamic linking (#174)
mannprerak2 Mar 4, 2021
18189c4
[ffigen] Added subkey symbol-address to expose native pointers and ty…
mannprerak2 Mar 5, 2021
e2038ad
[ffigen] Fix generation of duplicate constants with multiple entry po…
mannprerak2 Mar 5, 2021
710842f
[ffigen] Fixed generation of empty Opaque structs due to forward decl…
mannprerak2 Mar 5, 2021
1c59892
[ffigen] Added option to generate dependency-only structs as opaque (…
mannprerak2 Mar 8, 2021
3c138e5
[ffigen] Fix `sort: true` not working, remove //+ from full comments.…
mannprerak2 Mar 8, 2021
02ef1a3
[ffigen] Fix global rename in README.md (#188)
dcharkes Mar 9, 2021
8fb2f9f
[ffigen] Added new command-line option `--compiler-opts`. (#192)
mannprerak2 Mar 10, 2021
7e106e4
[ffigen] Automatically add std lib for macos, allow passing list to c…
mannprerak2 Mar 15, 2021
8d26a11
[ffigen] Added key `llvm-path`. Deprecate `llvm-lib`. (#194)
mannprerak2 Mar 15, 2021
108d09f
[ffigen] Add /usr/lib to default locations and update readme. (#196)
mannprerak2 Mar 24, 2021
14f7c96
[ffigen] Support Char_U type kind (#202)
ardera Apr 6, 2021
6152bb4
[ffigen] Fix error caused by duplicate declaration names and collisio…
mannprerak2 Apr 6, 2021
1d65b28
[ffigen] Update LICENSE (#203)
franklinyow Apr 7, 2021
9f8e6d4
[ffigen] Support for Packed struct (#205)
mannprerak2 Apr 16, 2021
78cafc8
[ffigen] Support for inline arrays in structs (#206)
mannprerak2 Apr 19, 2021
53a193d
[ffigen] Update readme to clarify C support. (#209)
mannprerak2 Apr 28, 2021
09e8bed
[ffigen] Bump version to 3.0.0 (#216)
mannprerak2 May 19, 2021
362cc70
[ffigen] Added support for generating Unions (#215)
mannprerak2 May 20, 2021
4bed075
[ffigen] Allow users to specify complete dylib path (#221)
mannprerak2 May 21, 2021
ae89d3f
[ffigen] Add `structs` and `enums`'s rename to readme (#225)
Sunbreak May 31, 2021
eb7b654
[ffigen] Generate dart typedefs for C typedefs (#224)
mannprerak2 Jun 3, 2021
16ecf9f
[ffigen] Move from package:pedantic to pacakge:lints (#230)
mannprerak2 Jun 4, 2021
9a5ceb7
[ffigen] Added config for exposing typedefs to Native and Dart type. …
mannprerak2 Jun 7, 2021
7646422
[ffigen] Update library.dart dartfmt comment (#234)
mit-mit Jun 21, 2021
c7a25fb
[ffigen] Bump version to 4.0.0 (#247)
dcharkes Sep 8, 2021
94464ea
[ffigen] Added support for marking functions as Leaf. (#252)
mannprerak2 Oct 4, 2021
ba4d058
[ffigen] Added fix for member name and type name collision in structs…
mannprerak2 Oct 28, 2021
b74c78a
[ffigen] Exclude all on empty include list (#254)
lukaslihotzki Nov 12, 2021
68a2e76
[ffigen] Suggest using `dart pub add -d ffigen` (#259)
jonasfj Dec 8, 2021
0f708a7
[ffigen] Support for ABI-specific integers (#261)
mannprerak2 Jan 22, 2022
a8305d6
[ffigen] Move to new analyzer checks (#264)
kevmoo Feb 1, 2022
f210680
[ffigen] Release Patch 4.1.3 (#266)
mannprerak2 Feb 1, 2022
bf2f951
[ffigen] Merge branch 'stable' into merge_stable
mannprerak2 Feb 1, 2022
b1d4a13
[ffigen] Merge pull request #269 from mannprerak2/merge_stable
dcharkes Feb 1, 2022
3f80cd0
[ffigen] Fix size_t and wchar_t default dart types. (#274)
mannprerak2 Feb 9, 2022
b570afb
[ffigen] Add default location for LLVM on M1 Mac (#278)
KyleFin Feb 25, 2022
489e1e6
[ffigen] BindingsIndex refactor (#283)
liamappelbe Mar 16, 2022
f2a9239
[ffigen] First bits of Objective C support (#281)
liamappelbe Mar 18, 2022
793585f
[ffigen] Test on mac, to cover objective C (#289)
liamappelbe Mar 26, 2022
730572f
[ffigen] Objective C interfaces (#287)
liamappelbe Apr 6, 2022
ecbdca2
[ffigen] Add contributing info (#291)
dcharkes Apr 6, 2022
bdfd97a
[ffigen] Add a warning message to objective C support (#292)
liamappelbe Apr 7, 2022
cecaba7
[ffigen] Remove bool special casing (#294)
liamappelbe Apr 8, 2022
4f93f6e
[ffigen] Make type polymorphic (#290)
liamappelbe Apr 8, 2022
54ced0d
[ffigen] Add an integration test for objective C (#293)
liamappelbe Apr 8, 2022
3c6c376
[ffigen] Fix handling of void methods (#308)
liamappelbe Apr 11, 2022
eece4af
[ffigen] NSString <-> String converters (#310)
liamappelbe Apr 11, 2022
01511cf
[ffigen] Coerce BOOL to bool (#311)
liamappelbe Apr 12, 2022
fc201ac
[ffigen] Add support for readonly and class properties (#314)
brianquinlan Apr 13, 2022
2015d3e
[ffigen] Generate complete method signatures. (#319)
brianquinlan Apr 13, 2022
d461aa8
[ffigen] Fix instructions for adding `package:ffi` (#318)
miDeb Apr 14, 2022
07af7fb
[ffigen] Move property tests into "native_objc_test" group
brianquinlan Apr 14, 2022
a6c2e23
[ffigen] Generate a nice error if files generated by test/setup.dart …
brianquinlan Apr 14, 2022
205549b
[ffigen] Move ObjCBuiltInFunctions to its own file and its singleton …
liamappelbe Apr 15, 2022
66f0cc0
[ffigen] Provide a command to regenerate golden bindings. (#322)
brianquinlan Apr 18, 2022
cb7825b
[ffigen] Create more tests and move them to separate files. (#330)
brianquinlan Apr 18, 2022
5560f58
[ffigen] Update pubspec.yaml (#332)
devoncarew Apr 19, 2022
4af99f9
[ffigen] Configurable filtering for ObjC interfaces (#313)
liamappelbe Apr 19, 2022
e317fc2
[ffigen] Improve Type deduping in objc_msgSend (#326)
liamappelbe Apr 19, 2022
4da279f
[ffigen] Move ObjC classes and SELs to NativeLibrary (#331)
liamappelbe Apr 19, 2022
0b95430
[ffigen] Make all NSObject references nullable in the generated dart …
brianquinlan Apr 27, 2022
afe4f0d
[ffigen] Don't automatically include system headers (#342)
liamappelbe Apr 29, 2022
3ce2926
[ffigen] Add the ability to cast from a pointer to an interface. (#346)
brianquinlan Apr 29, 2022
7aa6d58
[ffigen] Make properties that set/get objective-c instances nullable …
brianquinlan Apr 29, 2022
47d147e
[ffigen] Fix coverage configuration (#337)
liamappelbe May 2, 2022
c1bafec
[ffigen] Categories (#349)
liamappelbe May 2, 2022
287abc4
[ffigen] Block support (#333)
liamappelbe May 3, 2022
f22e746
[ffigen] Fix a bug where duplicate methods were added to some classes…
liamappelbe May 4, 2022
60883c9
[ffigen] Fix ObjC @class declarations (#352)
liamappelbe May 11, 2022
9148781
[ffigen] Don't remove trailing underscores from method names (#357)
liamappelbe May 11, 2022
3216293
[ffigen] Add a registry for ObjC built in interfaces (#358)
liamappelbe May 11, 2022
3e584af
[ffigen] Update names of compound members to reflect what is generate…
abitofevrything May 12, 2022
cd1fec4
[ffigen] Remove ObjC tests that check golden generated code (#363)
liamappelbe May 12, 2022
7b376db
[ffigen] Use ABI-specific integers from `dart:ffi` (#365)
simolus3 May 12, 2022
2a05b4f
[ffigen] Mention ObjectiveC support in changelog (#366)
dcharkes May 12, 2022
04332de
[ffigen] Update pubspec of examples (#367)
dcharkes May 12, 2022
383859a
[ffigen] Cleanup some code around ObjC goldens (#368)
dcharkes May 12, 2022
01d9ba6
[ffigen] Fix coverage for ObjC tests (#370)
liamappelbe May 12, 2022
7258410
[ffigen] Use `package:ffi` 1.2.1 (#371)
dcharkes May 13, 2022
6ba5f5c
[ffigen] Automatic ref counting for ObjC objects (#372)
liamappelbe May 20, 2022
b603353
[ffigen] Initialize the Block isa field (#378)
liamappelbe May 23, 2022
5006581
[ffigen] Support constructing blocks from closures (#382)
liamappelbe May 25, 2022
5c613df
[ffigen] docs(changelog): remove extra # (#377)
SkinnyMind May 25, 2022
3f345cb
[ffigen] Handle NS_RETURNS_RETAINED and methods that start with new/a…
liamappelbe May 25, 2022
9f46691
[ffigen] Add a static isInstance method to ObjC classes (#383)
liamappelbe May 25, 2022
4e2b86d
[ffigen] Add xcode tools llvm as default path (#389)
dcharkes May 27, 2022
50e0ba8
[ffigen] Add the ability to control reference counting behavior in ca…
brianquinlan May 27, 2022
b54e57d
[ffigen] Test autorelease pools and more copying cases (#385)
liamappelbe May 27, 2022
edd6041
[ffigen] Test assign/retain/copy properties (#390)
liamappelbe May 27, 2022
c3643b6
[ffigen] Removed config `dart-bool`. Booleans are now always generate…
mannprerak2 May 30, 2022
4cf58c7
[ffigen] bump package:ffi (#394)
dcharkes May 31, 2022
9858cfc
[ffigen] Update README.md (#396)
mannprerak2 Jun 7, 2022
e1d384d
[ffigen] Fix `include-directives` on Windows (#397)
dcharkes Jun 9, 2022
6cad238
[ffigen] Add Windows CI (#399)
dcharkes Jun 14, 2022
0179324
[ffigen] More ways to find XCode's libclang on MacOS (#402)
dcharkes Jun 14, 2022
153aad5
[ffigen] Use `ldconfig` to find libclang (#403)
dcharkes Jun 14, 2022
b15555b
[ffigen] Bump `package:ffi` (#405)
dcharkes Jun 21, 2022
04dc916
[ffigen] Add a call method to Blocks (#407)
liamappelbe Jun 24, 2022
151ed12
[ffigen] Fixing mac bot by explicitly setting the objective C sysroot…
liamappelbe Jul 1, 2022
ed819e3
[ffigen] Skip methods that have incomplete types (#412)
liamappelbe Jul 6, 2022
691eb2b
[ffigen] Check that property types aren't incomplete (#415)
liamappelbe Jul 7, 2022
c71be7b
[ffigen] ObjC example (#416)
liamappelbe Jul 8, 2022
5507e99
[ffigen] Update clang to fix CI failure (#425)
liamappelbe Jul 21, 2022
e0dc7c5
[ffigen] Throw an error if ObjC class fails to load (#423)
liamappelbe Jul 21, 2022
7592ecb
[ffigen] Memory management for Blocks (#429)
liamappelbe Jul 28, 2022
43a485c
[ffigen] Add exclude-all-by-default config flag (#431)
liamappelbe Aug 1, 2022
f28313b
[ffigen] Add an objective-C module prefix option (#438)
liamappelbe Aug 8, 2022
409e87a
[ffigen] Fix obscure NSTimeZone parsing bug (#440)
liamappelbe Aug 9, 2022
a88db78
[ffigen] Run Flutter FFI plugin template ffigen on CI (#433)
dcharkes Aug 15, 2022
a97fe3f
[ffigen] Increase timeout Flutter integration test (#446)
dcharkes Aug 15, 2022
22c9006
[ffigen] Add a swift example (#441)
liamappelbe Aug 15, 2022
50f0615
[ffigen] `FfiNative` support (#447)
dcharkes Aug 18, 2022
4d93839
[ffigen] `ffi-native` -> `asset` stop logger warning (#449)
dcharkes Aug 18, 2022
2081ac0
[ffigen] Fix function deduplication (#450)
liamappelbe Aug 25, 2022
a2465f9
[ffigen] Work around analyzer bug for FfiNatives (#455)
dcharkes Sep 15, 2022
820c2b1
[ffigen] Correctly handle strings with null characters (#454)
liamappelbe Sep 16, 2022
6ef32d5
[ffigen] Remove list_diff package (#456)
liamappelbe Sep 22, 2022
5c4b3ab
[ffigen] Pointer.fromFunction leaks, so store result in static variab…
liamappelbe Sep 26, 2022
2a430c6
[ffigen] NativeFunc's child should be a FunctionType (#461)
liamappelbe Sep 27, 2022
4fe8783
[ffigen] Update LICENSE (#457)
dcharkes Sep 27, 2022
27d9b9f
[ffigen] Fix mac bot (#466)
liamappelbe Sep 29, 2022
30cc93d
[ffigen] Assume relative paths are relative to the config file (#465)
liamappelbe Sep 30, 2022
0aba098
[ffigen] Remove ignoreFilter from typedef parsing. (#462)
mannprerak2 Oct 2, 2022
848ac94
[ffigen] Remove unnecessary root cursor filtering (#471)
liamappelbe Oct 6, 2022
5563b5c
[ffigen] Fix some noisy warnings that often show up in ObjC binding g…
liamappelbe Oct 6, 2022
0fb321c
[ffigen] Add a step for building cursor definition map. (#474)
mannprerak2 Oct 12, 2022
637134b
[ffigen] Zero initialize unused Block fields (#475)
liamappelbe Oct 14, 2022
e50394b
[ffigen] Use tmpDir over working directory (#464)
TzviPM Oct 19, 2022
07d8c72
[ffigen] Symbol file import export (#468)
mannprerak2 Oct 24, 2022
1972596
[ffigen] Prevent warnings in FfiNative example (#479)
dcharkes Oct 25, 2022
18f9499
[ffigen] blast_repo fixes (#481)
kevmoo Nov 9, 2022
77ee870
[ffigen] Bump coverallsapp/github-action from 1.1.2 to 1.1.3 (#482)
dependabot[bot] Nov 10, 2022
878ec39
[ffigen] Remove the built in flag from ObjC interfaces (#487)
liamappelbe Nov 18, 2022
e19d7d6
[ffigen] Added new llvm versions to linuxDylibLocations (#489)
HosseinYousefi Nov 23, 2022
faebd8b
[ffigen] Allow user compiler options to override built-in options (#495)
liamappelbe Dec 13, 2022
82c0e16
[ffigen] Code cleanup (#496)
dcharkes Dec 13, 2022
4c5f570
[ffigen] Add new supported typedef - `uintptr_t` (mapped to `ffi.Uint…
mannprerak2 Dec 16, 2022
8f00f5f
[ffigen] Update example in README.md (#501)
mannprerak2 Dec 27, 2022
4e3eeb5
[ffigen] Bump actions/checkout from 3.1.0 to 3.2.0 (#502)
dependabot[bot] Jan 2, 2023
d9ae6e2
[ffigen] Add a bit more introduction to readme (#505)
mit-mit Jan 23, 2023
55b84ad
[ffigen] Fix formatting (#509)
dcharkes Feb 2, 2023
bcdbe76
[ffigen] Bump actions/checkout from 3.2.0 to 3.3.0 (#507)
dependabot[bot] Feb 2, 2023
6c47900
[ffigen] Bump dart-lang/setup-dart from 1.3 to 1.4 (#508)
dependabot[bot] Feb 2, 2023
5ab08fd
[ffigen] Add support nested anonymous union/struct (#511)
nikitadol Feb 9, 2023
f27c722
[ffigen] Fix path normalization for absolute paths and globs starting…
mannprerak2 Feb 16, 2023
b94aa02
[ffigen] Bump SDK constraint to 4.0.0 (#517)
dcharkes Feb 16, 2023
abace99
[ffigen] Bump coverallsapp/github-action from 1.1.3 to 1.2.4 (#523)
dependabot[bot] Mar 2, 2023
06d224f
[ffigen] Fix macro file parser (#524)
mannprerak2 Mar 6, 2023
1161187
[ffigen] Bump dependencies and fix lints (#527)
dcharkes Mar 8, 2023
b26e13d
[ffigen] Automatically generate `ignore_for_file: type=lint` if not s…
mannprerak2 Mar 10, 2023
d7eb3f1
[ffigen] Detect Scoop LLVM installation on Windows (#535)
mahesh-hegde Mar 15, 2023
0727f8a
[ffigen] Bump subosito/flutter-action from 2.8.0 to 2.10.0 (#544)
dependabot[bot] Apr 3, 2023
6110c11
[ffigen] Bump dart-lang/setup-dart from 1.4.0 to 1.5.0 (#541)
dependabot[bot] Apr 3, 2023
0279f34
[ffigen] Bump actions/checkout from 3.3.0 to 3.5.0 (#542)
dependabot[bot] Apr 3, 2023
a80742b
[ffigen] Parameter names in function pointer fields (#537)
mahesh-hegde Apr 3, 2023
8bfec3d
[ffigen] Bump coverallsapp/github-action from 1.2.4 to 2.0.0 (#543)
dependabot[bot] Apr 3, 2023
9543583
[ffigen] Update version and changelog (#546)
mahesh-hegde Apr 4, 2023
fd98f92
[ffigen] Add common code path for test configs (#491)
TzviPM Apr 7, 2023
ac318a2
[ffigen] Explicit '' as name for anon structs/unions (#552)
TzviPM Apr 13, 2023
767f244
[ffigen] 3.0 Class modifiers (#553)
dcharkes Apr 19, 2023
ba48bf7
[ffigen] Change native test bindings name for consistency (#556)
TzviPM Apr 19, 2023
97f6ecc
[ffigen] Add description to typedef test (#557)
TzviPM Apr 20, 2023
e01f63d
[ffigen] Merge commit 'ac318a25ecd7bea6685f8b3f8cabbdea16519936' into…
dcharkes Apr 24, 2023
730a997
[ffigen] Merge pull request #560 from dart-lang/stable-to-7-x
dcharkes Apr 24, 2023
54215ca
[ffigen] Handle multi anonymous struct with same USR (#559)
mannprerak2 Apr 25, 2023
1efea34
[ffigen] Merge stable to master, bump version (#561)
mannprerak2 Apr 26, 2023
f0ab18e
[ffigen] Use `@Native` syntax (#562)
dcharkes May 1, 2023
79e845f
[ffigen] Support for generating Variadic functions (#515)
mannprerak2 May 1, 2023
4175439
[ffigen] Bump actions/checkout from 3.5.0 to 3.5.2 (#563)
dependabot[bot] May 2, 2023
21c4801
[ffigen] Bump coverallsapp/github-action from 2.0.0 to 2.1.2 (#564)
dependabot[bot] May 2, 2023
8059f72
[ffigen] Add topics in pubspec.yaml (#567)
mit-mit May 2, 2023
c06c233
[ffigen] Bump version to 8.0.0 stable (#566)
dcharkes May 2, 2023
013eee2
[ffigen] Add the ability to get a pointer to an objective C object (#…
brianquinlan May 2, 2023
6648a18
[ffigen] Fix invalid code generated due to anoymous structs/unions (#…
mannprerak2 May 12, 2023
ede5a9c
[ffigen] Set SDK version to 3.0 stable (#573)
dcharkes May 12, 2023
29739cf
[ffigen] Fixed invalid code generated due to zero-length arrays in st…
mannprerak2 May 15, 2023
cd0d754
[ffigen] blast_repo fixes (#576)
devoncarew May 16, 2023
19c89a3
[ffigen] Rename `master` branch to `main` (#582)
dcharkes May 17, 2023
09eeb53
[ffigen] add LLVM installation instructions for Fedora (#584)
CicadaCinema May 30, 2023
4854160
[ffigen] Bump actions/checkout from 3.5.2 to 3.5.3 (#589)
dependabot[bot] Jul 1, 2023
34714a4
[ffigen] Bump coverallsapp/github-action from 2.1.2 to 2.2.0 (#590)
dependabot[bot] Jul 1, 2023
3a5a9be
[ffigen] Add ffigen yaml schema (#586)
mannprerak2 Jul 12, 2023
cc604f9
[ffigen] Fix doc comment missing on struct/union array fields, update…
mannprerak2 Jul 24, 2023
ac1b049
[ffigen] Allow extern inline functions to be generated. (#594)
mannprerak2 Jul 24, 2023
b5b238c
[ffigen] Bump coverallsapp/github-action from 2.2.0 to 2.2.1 (#596)
dependabot[bot] Aug 1, 2023
128d61e
[ffigen] Mention installing xcode command line tools on mac
liamappelbe Aug 29, 2023
e0814e1
[ffigen] Listener/Async Blocks (#601)
liamappelbe Aug 30, 2023
92d5137
[ffigen] Fix null inference weirdness (#605)
liamappelbe Aug 31, 2023
2042ea0
[ffigen] fix: objc block trampoline invalid return type (#607)
vaind Sep 1, 2023
79e36f0
[ffigen] Fix #577 (#609)
liamappelbe Sep 1, 2023
1176680
[ffigen] Merge commit 'ac1b0498ecc81ef4f358c4fc93c770c7ff07d9a6' into…
dcharkes Sep 1, 2023
fa98464
[ffigen] Bump actions/checkout from 3.5.3 to 3.6.0 (#611)
dependabot[bot] Sep 1, 2023
908ae22
[ffigen] Merge pull request #610 from dart-lang/roll-stable-to-9.0.1
dcharkes Sep 4, 2023
1e1eeee
[ffigen] Use stret and fpret variants of objc_msgSend where appropria…
liamappelbe Sep 4, 2023
4e53697
[ffigen] Better block names (#606)
liamappelbe Sep 7, 2023
e0b7486
[ffigen] Fix ObjC `instancetype` inheritance issue. (#618)
liamappelbe Sep 12, 2023
f3b2369
[ffigen] Simplify flutter_plugin_ffi_test (#620)
liamappelbe Sep 15, 2023
cb14754
[ffigen] Better typedefs for `NativeFunction`s (#621)
liamappelbe Sep 19, 2023
5c7b78c
[ffigen] Separate getDartType and getUserType (#623)
liamappelbe Sep 24, 2023
24d7b67
[ffigen] Handle ObjC nullable annotations (#624)
liamappelbe Sep 28, 2023
f2b9291
[ffigen] Bump coverallsapp/github-action from 2.2.1 to 2.2.3 (#628)
dependabot[bot] Oct 1, 2023
4b6894f
[ffigen] Bump actions/checkout from 3.6.0 to 4.1.0 (#626)
dependabot[bot] Oct 1, 2023
0f1ed37
[ffigen] Bump dart-lang/setup-dart from 1.5.0 to 1.5.1 (#627)
dependabot[bot] Oct 2, 2023
c71d38b
[ffigen] Refactor `sameFfiDartAndCType` to not require a `Writer` (#629)
liamappelbe Oct 10, 2023
8b765d7
[ffigen] Typedefs for Dart types (#625)
liamappelbe Oct 11, 2023
86abba5
[ffigen] Enable use_super_parameters lint (#631)
parlough Oct 14, 2023
8aeb62c
[ffigen] Use getDartType rather than getFfiDartType in ObjC block cod…
liamappelbe Oct 27, 2023
0d205b9
[ffigen] Fix generated asset/assetId property for ffi-native (#634)
nmfisher Nov 1, 2023
9dcd6ef
[ffigen] Bump subosito/flutter-action from 2.10.0 to 2.12.0 (#638)
dependabot[bot] Nov 1, 2023
bf2e60d
[ffigen] Bump dart-lang/setup-dart from 1.5.1 to 1.6.0 (#637)
dependabot[bot] Nov 1, 2023
e2d6f4c
[ffigen] Bump actions/checkout from 4.1.0 to 4.1.1 (#636)
dependabot[bot] Nov 1, 2023
2491826
[ffigen] ObjC static functions (#633)
liamappelbe Nov 2, 2023
1920cc9
[ffigen] Prepare for merge into dart-lang/native (#641)
liamappelbe Nov 13, 2023
85e4257
[ffigen] Change ffigen to use dart-lang/native's directory stucture
liamappelbe Nov 13, 2023
3634229
Merge package:ffigen into dart-lang/native
liamappelbe Nov 13, 2023
ff47496
Switch publish workflow to use the beta SDK
liamappelbe Nov 13, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
139 changes: 139 additions & 0 deletions .github/workflows/ffigen.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
name: ffigen CI

on:
# Run on PRs and pushes to the default branch.
push:
branches: [main, stable]
paths:
- '.github/workflows/ffigen.yml'
- 'pkgs/ffigen/**'
pull_request:
branches: [main, stable]
paths:
- '.github/workflows/ffigen.yml'
- 'pkgs/ffigen/**'
schedule:
- cron: "0 0 * * 0"

env:
PUB_ENVIRONMENT: bot.github

jobs:
# Check code formatting and static analysis on a single OS (macos).
analyze:
runs-on: macos-latest
defaults:
run:
working-directory: pkgs/ffigen/
strategy:
fail-fast: false
matrix:
# TODO: Change to 3.2.0 stable once it's released.
sdk: [3.2.0-210.4.beta]
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: dart-lang/setup-dart@b64355ae6ca0b5d484f0106a033dd1388965d06d
with:
sdk: ${{ matrix.sdk }}
- id: install
name: Install dependencies
run: dart pub get && dart pub get --directory="example/shared_bindings"
- name: Check formatting
run: dart format --output=none --set-exit-if-changed .
if: always() && steps.install.outcome == 'success'
- name: Build test dylib and bindings
run: dart test/setup.dart
- name: Analyze code
run: dart analyze --fatal-infos
if: always() && steps.install.outcome == 'success'

test-linux:
needs: analyze
runs-on: ubuntu-22.04
defaults:
run:
working-directory: pkgs/ffigen/
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: dart-lang/setup-dart@b64355ae6ca0b5d484f0106a033dd1388965d06d
with:
sdk: 3.2.0-210.4.beta
- name: Install dependencies
run: dart pub get
- name: Install libclang-14-dev
run: sudo apt-get install libclang-14-dev
- name: Build test dylib and bindings
run: dart test/setup.dart
- name: Run VM tests
run: dart test --platform vm --concurrency=1

test-mac:
needs: analyze
runs-on: macos-latest
defaults:
run:
working-directory: pkgs/ffigen/
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: dart-lang/setup-dart@b64355ae6ca0b5d484f0106a033dd1388965d06d
with:
sdk: 3.2.0-210.4.beta
- name: Install dependencies
run: dart pub get
- name: Build test dylib and bindings
run: dart test/setup.dart
- name: Run VM tests
run: dart test --platform vm --concurrency=1
- name: Collect coverage
run: ./tool/coverage.sh
- name: Upload coverage
uses: coverallsapp/github-action@3dfc5567390f6fa9267c0ee9c251e4c8c3f18949
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: pkgs/ffigen/lcov.info

test-windows:
needs: analyze
runs-on: windows-latest
defaults:
run:
working-directory: pkgs/ffigen/
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: dart-lang/setup-dart@b64355ae6ca0b5d484f0106a033dd1388965d06d
with:
sdk: 3.2.0-210.4.beta
- name: Install dependencies
run: dart pub get
- name: Build test dylib and bindings
run: dart test/setup.dart
- name: Run VM tests
run: dart test --platform vm --concurrency=1

# Sanity check the latest `flutter create --template plugin_ffi`.
# This will break if we change the Flutter template or the generated code.
# But, getting libclang on the LUCI infrastructure has proven to be
# non-trivial. See discussion on
# https://github.com/flutter/flutter/issues/105513.
# If we need to change the generated code, we should temporarily disable this
# test, or temporarily disable the requirement for all bots to be green to
# merge PRs.
# Running this sanity check on one OS should be sufficient. Chosing Windows
# because it is the most likely to break.
test-windows-flutter:
needs: analyze
runs-on: windows-latest
defaults:
run:
working-directory: pkgs/ffigen/
steps:
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
- uses: subosito/flutter-action@2783a3f08e1baf891508463f8c6653c258246225
with:
channel: "master"
- name: Install dependencies
run: flutter pub get
- name: Build test dylib and bindings
run: dart test/setup.dart
- name: Run VM tests
run: flutter pub run test test_flutter/ --platform vm
1 change: 1 addition & 0 deletions .github/workflows/publish.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,4 @@ jobs:
pull-requests: write # Required for writing the pull request note
with:
write-comments: false
sdk: beta
44 changes: 44 additions & 0 deletions pkgs/ffigen/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# See https://dart.dev/guides/libraries/private-files

# Files and directories created by pub.
.dart_tool/
.packages
pubspec.lock

# IDE and debugger files.
.clangd
.gdb_history
.history
.vscode
compile_commands.json

# Directory created by dartdoc.
# If you don't generate documentation locally you can remove this line.
doc/api/

# Avoid committing generated Javascript files:
*.dart.js
*.info.json # Produced by the --dump-info flag.
*.js # When generated by dart2js. Don't specify *.js if your
# project includes source files written in JavaScript.
*.js_
*.js.deps
*.js.map

# Generated shared libraries.
*.so
*.so.*
*.dylib
*.dll

# Directory for quick experiments.
experiments/

# Files generated by tests for debugging purposes.
test/debug_generated/*
!test/debug_generated/readme.md
lcov.info
coverage.json

# Files generated by various OSs.
.DS_Store
8 changes: 8 additions & 0 deletions pkgs/ffigen/AUTHORS
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Below is a list of people and organizations that have contributed
# to the Dart project. Names should be added to the list like so:
#
# Name/Organization <email address>

Google LLC

Prerak Mann <[email protected]>
Loading
Loading