Thanks to visit codestin.com
Credit goes to github.com

Skip to content

iOS,macOS: Migrate logging to Logger/FlutterLogger #168568

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 5 commits into from
May 15, 2025

Conversation

cbracken
Copy link
Member

@cbracken cbracken commented May 8, 2025

In new Swift code in the iOS/macOS embedder, we currently lack core features currently provided by shared internal C++ library code in FML. This provides a logging implementation that can be used across the iOS/macOS embedders, whether in Swift, Objective-C, or C++ code, and migrates the iOS and macOS embedders to use it.

This patch also introduces gn support for authoring Swift Testing tests.

  • Introduces a SwiftTestingRunner class that launches the Swift Testing test runner, which runs all tests annotated with @Test linked into the current executable.
  • Introduces a SwiftTestingRunnerMain class that implements a main entrypoint that launches the SwiftTestingRunner.
  • Introduces a gn source_set target (//flutter/shell/platform/darwin/common:swift_testing_main) that includes the Swift Testing main entrypoint, such that executable targets can add it to their deps to automatically be built as a Swift Testing runner.
  • Adds a framework_common_swift_unittests executable target for the common framework unit tests, and wires that into the build and run_tests.py for macOS.

Issue: #168564
Issue: #144791

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@cbracken cbracken requested a review from a team as a code owner May 8, 2025 21:35
@github-actions github-actions bot added platform-ios iOS applications specifically engine flutter/engine repository. See also e: labels. a: desktop Running on desktop team-ios Owned by iOS platform team platform-macos labels May 8, 2025
@cbracken cbracken force-pushed the swift-logger branch 7 times, most recently from d026490 to 5971bb2 Compare May 13, 2025 20:10
@cbracken cbracken force-pushed the swift-logger branch 8 times, most recently from 097a49c to 354f336 Compare May 15, 2025 00:33
cbracken added 5 commits May 14, 2025 20:26
In new Swift code in the iOS/macOS embedder, we currently lack core
features currently provided by shared internal C++ library code in FML.
This provides a logging implementation that can be used across the
iOS/macOS embedders, whether in Swift, Objective-C, or C++ code.

Issue: flutter#168564
This migrates off the private API for Swift Package Manager, and onto
the official v0 public ABI.
@cbracken cbracken added the autosubmit Merge PR when tree becomes green via auto submit App label May 15, 2025
@auto-submit auto-submit bot added this pull request to the merge queue May 15, 2025
Merged via the queue into flutter:master with commit 540d19c May 15, 2025
180 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label May 15, 2025
@cbracken cbracken deleted the swift-logger branch May 15, 2025 05:26
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 15, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request May 15, 2025
flutter/flutter@0b9f928...9a78af5

2025-05-15 [email protected] Manual pub package roll (flutter/flutter#168916)
2025-05-15 [email protected] Remove unnecessary `bringup: true` for release-channel only `Linux flutter_packaging`. (flutter/flutter#168761)
2025-05-15 [email protected] Revert: "Run `flutter_packaging` builders on release candidates (flutter/flutter#168917)
2025-05-15 [email protected] Roll Dart SDK from a6c25e31caa7 to c9640c3a4440 (1 revision) (flutter/flutter#168911)
2025-05-15 [email protected] Roll Packages from 1468581 to 2dff621 (4 revisions) (flutter/flutter#168908)
2025-05-15 [email protected] Roll Dart SDK from b3520981e0f0 to a6c25e31caa7 (11 revisions) (flutter/flutter#168895)
2025-05-15 [email protected] Roll Fuchsia Linux SDK from fSvuEJgRmHxnewRJr... to Jj-iDG5uPOsFgY2_H... (flutter/flutter#168893)
2025-05-15 [email protected] Fix mac_ios_engine_ddm config with missing ci/ios_debug_sim_ddm config (flutter/flutter#168888)
2025-05-15 [email protected] [native assets] Remove `KernelSnapshot` dependency in build (flutter/flutter#168742)
2025-05-15 [email protected] iOS,macOS: Migrate logging to Logger/FlutterLogger (flutter/flutter#168568)
2025-05-15 [email protected] Skip hot reload breakpoints test when running with web (flutter/flutter#168873)
2025-05-15 [email protected] CupertinoSliverNavigationBar respects accessibility text scaling (flutter/flutter#168866)
2025-05-15 [email protected] [display_list] paint cleanup. (flutter/flutter#168082)
2025-05-15 [email protected] Add a new CI build for iOS DDM-enabled artifacts (flutter/flutter#168717)
2025-05-15 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (#168396)" (flutter/flutter#168880)
2025-05-14 [email protected] Implements UISceneDelegate dynamically w/ FlutterLaunchEngine (flutter/flutter#168396)
2025-05-14 [email protected] Mark web_tool_tests_1_2 as bringup. (flutter/flutter#168871)
2025-05-14 [email protected] Marks Mac_mokey run_debug_test_android to be unflaky (flutter/flutter#167634)
2025-05-14 [email protected] Reland "Clip search artifacts in CupertinoSliverNavigationBar searchable-to-searchable transitions" (flutter/flutter#168772)
2025-05-14 [email protected] Remove references to `team-release`. (flutter/flutter#168780)
2025-05-14 [email protected] Make Cupertino sheet set the systemUIStyle through an AnnotatedRegion (flutter/flutter#168182)
2025-05-14 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Use live region in error text input decorator for Android (#165531)" (flutter/flutter#168848)
2025-05-14 [email protected] Normalize BottomAppBarTheme (flutter/flutter#168586)
2025-05-14 [email protected] Roll Packages from 2e166de to 1468581 (2 revisions) (flutter/flutter#168828)
2025-05-14 [email protected] macOS,iOS: fix swift target triple (flutter/flutter#168749)
2025-05-14 [email protected] Further update `Engine-artifacts.md`. (flutter/flutter#168779)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
cbracken added a commit to cbracken/flutter that referenced this pull request May 15, 2025
This migrates FlutterResizeSynchronizer from an Objective-C
implementaton to a Swift implementation.

This is serves a couple purposes:
* adds the first Swift tests for the macOS embedder.
* adds Swift usage of the Logger I added in flutter#168568.

Issue: flutter#168564
Issue: flutter#144791
cbracken added a commit to cbracken/flutter that referenced this pull request May 15, 2025
This migrates FlutterResizeSynchronizer from an Objective-C
implementaton to a Swift implementation.

This is serves a couple purposes:
* adds the first Swift tests for the macOS embedder.
* adds Swift usage of the Logger I added in flutter#168568.

Issue: flutter#168564
Issue: flutter#144791
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: desktop Running on desktop engine flutter/engine repository. See also e: labels. platform-ios iOS applications specifically platform-macos team-ios Owned by iOS platform team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants