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

[native_assets_cli] Add example using dart_api_dl.h #858

Merged
merged 9 commits into from
Dec 14, 2023

Conversation

dcharkes
Copy link
Collaborator

Example showing how to use dart_api_dl.h in native assets.

Does not address yet:

@github-actions github-actions bot added type-infra A repository infrastructure change or enhancement package:native_assets_cli labels Dec 13, 2023
@dcharkes
Copy link
Collaborator Author

@mosuem The health check worker fails with exit code 1 but no useful error message.

Run exit 1
  exit 1
  shell: /usr/bin/bash -e {0}
  env:
    FLUTTER_ROOT: /opt/hostedtoolcache/flutter/stable-[3](https://github.com/dart-lang/native/actions/runs/7194479308/job/19595090226?pr=858#step:14:3).16.3-x6[4](https://github.com/dart-lang/native/actions/runs/7194479308/job/19595090226?pr=858#step:14:4)
    PUB_CACHE: /opt/hostedtoolcache/flutter/stable-3.1[6](https://github.com/dart-lang/native/actions/runs/7194479308/job/19595090226?pr=858#step:14:6).3-x64/.pub-cache
Error: Process completed with exit code 1.

How do I figure out what's wrong?

@dcharkes dcharkes requested a review from mosuem December 13, 2023 11:28
@mosuem
Copy link
Member

mosuem commented Dec 13, 2023

@mosuem The health check worker fails with exit code 1 but no useful error message.
How do I figure out what's wrong?

The log shows

Unhandled exception:
Connection closed before full header was received
#0      IOClient.send (package:http/src/io_client.dart:96:7)
<asynchronous suspension>
#1      GitHub.request (package:github/src/common/github.dart:413:30)
<asynchronous suspension>
#2      PaginationHelper.fetchStreamed (package:github/src/common/util/pagination.dart:38:20)
<asynchronous suspension>
#3      PaginationHelper.jsonObjects (package:github/src/common/util/pagination.dart:95:5)
<asynchronous suspension>
#4      _ForwardingStreamSubscription._handleData (dart:async/stream_pipe.dart:152:3)
<asynchronous suspension>
Error: Process completed with exit code 255.

So either a bug from package:github or the Github API.

@dcharkes
Copy link
Collaborator Author

dcharkes commented Dec 13, 2023

The log shows

How do I find the log from the GitHub UI?

edit: Oh it's an earlier step in the steps.

@dcharkes dcharkes requested a review from mosuem December 13, 2023 12:46
auto-submit bot pushed a commit that referenced this pull request Dec 14, 2023
We already have coveralls check coverage for the various packages.

The coverage check is blocking various PRs on this repo:

- #861
- #858
Copy link

auto-submit bot commented Dec 14, 2023

auto label is removed for dart-lang/native/858, due to - The status or check suite health / health has failed. Please fix the issues identified (or deflake) before re-applying this label.

@auto-submit auto-submit bot removed the autosubmit label Dec 14, 2023
Copy link

github-actions bot commented Dec 14, 2023

PR Health

Package publish validation ✔️

Details
Package Version Status
package:jni 0.8.0-wip WIP (no publish necessary)
package:jnigen 0.8.0-wip WIP (no publish necessary)
package:native_assets_cli 0.3.3-wip WIP (no publish necessary)
package:ffigen 11.0.0-wip WIP (no publish necessary)
package:native_toolchain_c 0.3.3-wip WIP (no publish necessary)
package:native_assets_builder 0.3.1-wip WIP (no publish necessary)

Documentation at https://github.com/dart-lang/ecosystem/wiki/Publishing-automation.

License Headers ✔️

Details
// Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
Files
no missing headers

All source files should start with a license header.

Unrelated files missing license headers
Files
pkgs/jni/lib/src/third_party/global_env_extensions.dart
pkgs/jni/lib/src/third_party/generated_bindings.dart
pkgs/jni/lib/src/third_party/jni_bindings_generated.dart
pkgs/jni/lib/src/lang/jcharacter.dart
pkgs/jnigen/android_test_runner/lib/main.dart
pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/_package.dart
pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/_package.dart
pkgs/jnigen/example/kotlin_plugin/example/lib/main.dart
pkgs/jnigen/example/kotlin_plugin/lib/kotlin_bindings.dart
pkgs/jnigen/example/kotlin_plugin/lib/kotlin_plugin.dart
pkgs/jnigen/example/in_app_java/lib/android_utils.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/_init.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocumentInformation.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocument.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/_package.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/PDFTextStripper.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/_package.dart
pkgs/jnigen/example/pdfbox_plugin/lib/pdfbox_plugin.dart
pkgs/jnigen/tool/command_runner.dart
pkgs/jnigen/lib/src/bindings/descriptor.dart
pkgs/jnigen/lib/src/elements/elements.g.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_varargs_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_comment_markup_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_dart_handle_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_regress_384_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_packed_structs_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_functions_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_forward_decl_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_typedef_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_native_func_typedef_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_opaque_dependencies_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_unions_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_struct_fptr_fields_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_imported_types_bindings.dart
pkgs/ffigen/test/native_test/_expected_native_test_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_decl_type_name_collision_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_decl_decl_collision_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_reserved_keyword_collision_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_decl_symbol_address_collision_bindings.dart
pkgs/ffigen/test/large_integration_tests/_expected_libclang_bindings.dart
pkgs/ffigen/test/large_integration_tests/_expected_cjson_bindings.dart
pkgs/ffigen/test/large_integration_tests/_expected_sqlite_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_packed_structs_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_constant_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_sort_bindings_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_typealias_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_global_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_boolean_dartbool_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_enumclass_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_unions_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_function_n_struct_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_struct_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_function_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_internal_conflict_resolution_bindings.dart
pkgs/ffigen/example/objective_c/avf_audio_bindings.dart
pkgs/ffigen/example/shared_bindings/generate.dart
pkgs/ffigen/example/shared_bindings/lib/generated/base_gen.dart
pkgs/ffigen/example/shared_bindings/lib/generated/a_gen.dart
pkgs/ffigen/example/shared_bindings/lib/generated/a_shared_b_gen.dart
pkgs/ffigen/example/ffinative/lib/generated_bindings.dart
pkgs/ffigen/example/swift/swift_api_bindings.dart
pkgs/ffigen/example/simple/generated_bindings.dart
pkgs/ffigen/example/libclang-example/generated_bindings.dart
pkgs/ffigen/lib/src/code_generator/utils.dart
pkgs/ffigen/lib/src/config_provider/config_spec.dart
pkgs/ffigen/lib/src/header_parser/clang_bindings/clang_bindings.dart
tools/delete_pubspec_overrides.dart

Changelog Entry ✔️

Details
Package Changed Files

Changes to files need to be accounted for in their respective changelogs.

Breaking changes ⚠️

Details
Package Change Current Version New Version Needed Version Looking good?
jni None 0.8.0-wip 0.8.0-wip 0.8.0-wip ✔️
jnigen None 0.8.0-wip 0.8.0-wip 0.8.0-wip ✔️
native_assets_cli None 0.3.2 0.3.3-wip 0.3.2 ⚠️
ffigen None 11.0.0-wip 11.0.0-wip 11.0.0-wip ✔️
native_toolchain_c None 0.3.3-wip 0.3.3-wip 0.3.3-wip ✔️
native_assets_builder None 0.3.1-wip 0.3.1-wip 0.3.1-wip ✔️

This check can be disabled by tagging the PR with skip-breaking-check

Copy link

PR Health

Package publish validation ✔️

Details
Package Version Status
package:jni 0.8.0-wip WIP (no publish necessary)
package:jnigen 0.8.0-wip WIP (no publish necessary)
package:native_assets_cli 0.3.2 already published at pub.dev
package:ffigen 11.0.0-wip WIP (no publish necessary)
package:native_toolchain_c 0.3.3-wip WIP (no publish necessary)
package:native_assets_builder 0.3.1-wip WIP (no publish necessary)

Documentation at https://github.com/dart-lang/ecosystem/wiki/Publishing-automation.

License Headers ✔️

Details
// Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
Files
no missing headers

All source files should start with a license header.

Unrelated files missing license headers
Files
pkgs/jni/lib/src/third_party/global_env_extensions.dart
pkgs/jni/lib/src/third_party/generated_bindings.dart
pkgs/jni/lib/src/third_party/jni_bindings_generated.dart
pkgs/jni/lib/src/lang/jcharacter.dart
pkgs/jnigen/android_test_runner/lib/main.dart
pkgs/jnigen/test/jackson_core_test/third_party/c_based/dart_bindings/com/fasterxml/jackson/core/_package.dart
pkgs/jnigen/test/jackson_core_test/third_party/dart_only/dart_bindings/com/fasterxml/jackson/core/_package.dart
pkgs/jnigen/example/kotlin_plugin/example/lib/main.dart
pkgs/jnigen/example/kotlin_plugin/lib/kotlin_bindings.dart
pkgs/jnigen/example/kotlin_plugin/lib/kotlin_plugin.dart
pkgs/jnigen/example/in_app_java/lib/android_utils.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/_init.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocumentInformation.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/PDDocument.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/pdmodel/_package.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/PDFTextStripper.dart
pkgs/jnigen/example/pdfbox_plugin/lib/src/third_party/org/apache/pdfbox/text/_package.dart
pkgs/jnigen/example/pdfbox_plugin/lib/pdfbox_plugin.dart
pkgs/jnigen/tool/command_runner.dart
pkgs/jnigen/lib/src/bindings/descriptor.dart
pkgs/jnigen/lib/src/elements/elements.g.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_varargs_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_comment_markup_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_dart_handle_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_regress_384_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_packed_structs_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_functions_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_forward_decl_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_typedef_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_native_func_typedef_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_opaque_dependencies_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_unions_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_struct_fptr_fields_bindings.dart
pkgs/ffigen/test/header_parser_tests/expected_bindings/_expected_imported_types_bindings.dart
pkgs/ffigen/test/native_test/_expected_native_test_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_decl_type_name_collision_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_decl_decl_collision_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_reserved_keyword_collision_bindings.dart
pkgs/ffigen/test/collision_tests/expected_bindings/_expected_decl_symbol_address_collision_bindings.dart
pkgs/ffigen/test/large_integration_tests/_expected_libclang_bindings.dart
pkgs/ffigen/test/large_integration_tests/_expected_cjson_bindings.dart
pkgs/ffigen/test/large_integration_tests/_expected_sqlite_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_packed_structs_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_constant_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_sort_bindings_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_typealias_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_global_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_boolean_dartbool_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_enumclass_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_unions_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_function_n_struct_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_struct_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_function_bindings.dart
pkgs/ffigen/test/code_generator_tests/expected_bindings/_expected_internal_conflict_resolution_bindings.dart
pkgs/ffigen/example/objective_c/avf_audio_bindings.dart
pkgs/ffigen/example/shared_bindings/generate.dart
pkgs/ffigen/example/shared_bindings/lib/generated/base_gen.dart
pkgs/ffigen/example/shared_bindings/lib/generated/a_gen.dart
pkgs/ffigen/example/shared_bindings/lib/generated/a_shared_b_gen.dart
pkgs/ffigen/example/ffinative/lib/generated_bindings.dart
pkgs/ffigen/example/swift/swift_api_bindings.dart
pkgs/ffigen/example/simple/generated_bindings.dart
pkgs/ffigen/example/libclang-example/generated_bindings.dart
pkgs/ffigen/lib/src/code_generator/utils.dart
pkgs/ffigen/lib/src/config_provider/config_spec.dart
pkgs/ffigen/lib/src/header_parser/clang_bindings/clang_bindings.dart
tools/delete_pubspec_overrides.dart

Changelog Entry ❗

Details
Package Changed Files
package:native_assets_cli pkgs/native_assets_cli/example/use_dart_api/README.md
pkgs/native_assets_cli/example/use_dart_api/pubspec.yaml

Changes to files need to be accounted for in their respective changelogs.

This check can be disabled by tagging the PR with skip-changelog-check

Breaking changes ✔️

Details
Package Change Current Version New Version Needed Version Looking good?
jni None 0.8.0-wip 0.8.0-wip 0.8.0-wip ✔️
jnigen None 0.8.0-wip 0.8.0-wip 0.8.0-wip ✔️
native_assets_cli None 0.3.2 0.3.2 0.3.2 ✔️
ffigen None 11.0.0-wip 11.0.0-wip 11.0.0-wip ✔️
native_toolchain_c None 0.3.3-wip 0.3.3-wip 0.3.3-wip ✔️
native_assets_builder None 0.3.1-wip 0.3.1-wip 0.3.1-wip ✔️

@dcharkes
Copy link
Collaborator Author

@mosuem Isn't the changelog entry detection somewhat strict?

@auto-submit auto-submit bot merged commit dbe57a1 into main Dec 14, 2023
22 checks passed
@auto-submit auto-submit bot deleted the dart-test-handles branch December 14, 2023 16:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit package:native_assets_cli type-infra A repository infrastructure change or enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants