Repository navigation
Closed
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listplatform-iosiOS applications specificallyiOS applications specificallyplatform-macosBuilding on or for macOS specificallyBuilding on or for macOS specificallyteam-iosOwned by iOS platform teamOwned by iOS platform teamtoolAffects the "flutter" command-line tool. See also t: labels.Affects the "flutter" command-line tool. See also t: labels.triaged-iosTriaged by iOS platform teamTriaged by iOS platform team
Description
Failing tests:
test/integration.shard/plist_parser_test.dart: PlistParser.getValueFromFile<String> returns null for a malformed plist file
test/integration.shard/plist_parser_test.dart: PlistParser.replaceKey returns false for a malformed plist file
06:39 +13 ~1 -1: test/integration.shard/plist_parser_test.dart: PlistParser.replaceKey returns false for a malformed plist file [E]
Expected: contains 'foo.plist: Property List error: Unexpected character \x01 at line 1 / JSON error: JSON text did not start with array or object and option to allow fragments not set. around line 1, column 0.\n'
''
Actual: ''
Which: does not contain 'foo.plist: Property List error: Unexpected character \x01 at line 1 / JSON error: JSON text did not start with array or object and option to allow fragments not set. around line 1, column 0.\n'
''
package:matcher expect
test/integration.shard/plist_parser_test.dart 232:5 main.<fn>
dart:async runZoned
test/src/common.dart 228:14 testWithoutContext.<fn>
test/src/common.dart 194:58 test.<fn>.<fn>
dart:io IOOverrides.runWithIOOverrides
test/src/common.dart 194:29 test.<fn>
06:39 +14 ~1 -2: test/integration.shard/plist_parser_test.dart: PlistParser.getValueFromFile<String> returns null for a malformed plist file [E]
Expected: contains 'Property List error: Unexpected character \x01 at line 1 / JSON error: JSON text did not start with array or object and option to allow fragments not set. around line 1, column 0.\n'
''
Actual: ''
Which: does not contain 'Property List error: Unexpected character \x01 at line 1 / JSON error: JSON text did not start with array or object and option to allow fragments not set. around line 1, column 0.\n'
''
package:matcher expect
test/integration.shard/plist_parser_test.dart 144:7 main.<fn>
dart:async runZoned
test/src/common.dart 228:14 testWithoutContext.<fn>
test/src/common.dart 194:58 test.<fn>.<fn>
dart:io IOOverrides.runWithIOOverrides
test/src/common.dart 194:29 test.<fn>
Metadata
Metadata
Assignees
Labels
P1High-priority issues at the top of the work listHigh-priority issues at the top of the work listplatform-iosiOS applications specificallyiOS applications specificallyplatform-macosBuilding on or for macOS specificallyBuilding on or for macOS specificallyteam-iosOwned by iOS platform teamOwned by iOS platform teamtoolAffects the "flutter" command-line tool. See also t: labels.Affects the "flutter" command-line tool. See also t: labels.triaged-iosTriaged by iOS platform teamTriaged by iOS platform team
Activity
okorohelijah commentedon Sep 23, 2026
What this is: Two
plist_parser_test.dartintegration tests fail on macOS 26.6.2 becauselogger.statusTextis''instead of containing/usr/bin/plutil's"Property List error: Unexpected character..."string.PlistParser's own contract did not break —replaceKeyonly returnsfalseinsideon ProcessException catch, andexpect(..., isFalse)passed before line 232 threw, provingplutilstill exited non-zero.What I verified: At
07510ad9a96,PlistParsercallsProcessUtils.runSync(..., throwOnError: true), which logs stdout tologger.statusTextand stderr tologger.errorText(prepended toProcessException: ...). Both tests (#L144-L152, #L232-L238, from #122336) encodeplutil's historical quirk of printing parse diagnostics to stdout with empty stderr. Modeling the stream/exit cases in aFakeProcessManagertest on Linux confirmsreplaceKey == falsewithstatusText == ''happens only ifplutilmoved the diagnostic to stderr or dropped it. Neither macOS 26 Release Notes nor Xcode 26 Release Notes document aplutilchange.What I could not verify: Whether macOS 26.6.2
plutilwrites the diagnostic to stderr or prints nothing — each test aborts atstatusTextbefore checkingerrorText, and ResultDB for build 8670252478857878881 has no extra log artifacts.Confidence: Medium —
runSync's stdout/stderr routing and the passingisFalsecheck isolate the failure toplutil's output stream, but I cannot run macOS 26plutilon Linux.To move this forward: @vashworth — on macOS 26.6.2, does
plutilnow emit the error on stderr?If
errhas the diagnostic, we can move both assertions fromlogger.statusTexttologger.errorText.Pre-triage by
Elijah's_triage_agent— verify before acting on it.vashworth commentedon Sep 24, 2026
@okorohelijah Have you been able to recreate this locally yet? We can't upgrade until this is resolved
[tool] Accept plutil diagnostics from stderr in plist_parser_test (ma…
github-actions commentedon Oct 8, 2026
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.