Skip to content
Draft
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
2 changes: 1 addition & 1 deletion packages/talker_flutter/example/macos/Podfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
platform :osx, '10.14'
platform :osx, '10.15'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
Expand Down
10 changes: 5 additions & 5 deletions packages/talker_flutter/example/macos/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ EXTERNAL SOURCES:
:path: Flutter/ephemeral/.symlinks/plugins/share_plus/macos

SPEC CHECKSUMS:
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
share_plus: 1fa619de8392a4398bfaf176d441853922614e89
FlutterMacOS: d0db08ddef1a9af05a5ec4b724367152bb0500b1
path_provider_foundation: bb55f6dbba17d0dccd6737fe6f7f34fbd0376880
share_plus: 510bf0af1a42cd602274b4629920c9649c52f4cc

PODFILE CHECKSUM: 236401fc2c932af29a9fcf0e97baeeb2d750d367
PODFILE CHECKSUM: 9ebaf0ce3d369aaa26a9ea0e159195ed94724cf3

COCOAPODS: 1.15.2
COCOAPODS: 1.16.2
Original file line number Diff line number Diff line change
Expand Up @@ -557,7 +557,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
Expand Down Expand Up @@ -639,7 +639,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
Expand Down Expand Up @@ -689,7 +689,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MACOSX_DEPLOYMENT_TARGET = 10.15;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
enableGPUValidationMode = "1"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,8 @@ class AppDelegate: FlutterAppDelegate {
override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
return true
}

override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool {
return true
}
}
10 changes: 8 additions & 2 deletions packages/talker_logger/lib/src/logger_io.dart
Original file line number Diff line number Diff line change
@@ -1,2 +1,8 @@
// ignore: avoid_print
void outputLog(String message) => message.split('\n').forEach(print);
import 'dart:io';

/// Outputs log message to stdout
///
/// Uses [stdout.writeln] instead of [print] to ensure proper output
/// on iOS simulators. The standard [print] function may not flush
/// its buffer properly on iOS simulators, causing logs to not appear.
void outputLog(String message) => message.split('\n').forEach(stdout.writeln);
31 changes: 31 additions & 0 deletions packages/talker_logger/test/output_log_test.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
import 'package:talker_logger/src/logger_io.dart' as logger_io;
import 'package:test/test.dart';

void main() {
group('outputLog', () {
test('should output single line message', () {
// This test verifies that outputLog can handle single line messages
// We cannot easily capture stdout in tests, so we just verify it doesn't throw
expect(() => logger_io.outputLog('Test message'), returnsNormally);
});

test('should output multi-line message', () {
// This test verifies that outputLog can handle multi-line messages
// Each line should be written separately
expect(
() => logger_io.outputLog('Line 1\nLine 2\nLine 3'),
returnsNormally,
);
});

test('should handle empty message', () {
// This test verifies that outputLog can handle empty messages
expect(() => logger_io.outputLog(''), returnsNormally);
});

test('should handle message with only newlines', () {
// This test verifies that outputLog can handle messages with only newlines
expect(() => logger_io.outputLog('\n\n\n'), returnsNormally);
});
});
}