Page MenuHomePhabricator

Mostly remove "STDERR" and "STDOUT" constants from Arcanist
ClosedPublic

Authored by epriestley on Apr 28 2022, 10:25 PM.
Tags
None
Referenced Files
F17868115: D21794.id51955.diff
Mon, Jul 28, 7:17 AM
F17845200: D21794.diff
Sun, Jul 27, 3:09 AM
F17842489: D21794.diff
Sat, Jul 26, 11:42 PM
F17797033: D21794.diff
Fri, Jul 25, 1:30 AM
F17788956: D21794.id51954.diff
Thu, Jul 24, 6:17 PM
F17674626: D21794.diff
Sun, Jul 13, 7:26 AM
F17661835: D21794.id51955.diff
Sat, Jul 12, 4:40 PM
F17661531: D21794.id51950.diff
Sat, Jul 12, 4:28 PM
Subscribers

Details

Summary

Ref T13675. Ref T13556. The "STDOUT" and "STDERR" constants are defined by the PHP CLI SAPI, in cli_register_file_handles().

The "native arc" embedded PHP wrapper doesn't define these, and there's no real reason to define them, since they're just defined in terms of the PHP stream wrappers ("php://stdin", etc) anyway.

This patch isn't exhaustive (and a subsequent change should add lint, rejecting these magic constants) but is just trying to make native arc functional.

Test Plan

Created this revision with a standalone native arc binary.

Diff Detail

Repository
rARC Arcanist
Branch
stdio
Lint
Lint Errors
SeverityLocationCodeMessage
Errorsrc/filesystem/PhutilErrorLog.php:31XHP20Tautological Expression
Unit
Test Failures
Build Status
Buildable 25692
Build 35520: arc lint + arc unit

Unit TestsFailed

TimeTest
1,193 msArcanistBundleTestCase::testGitRepository
EXCEPTION (Exception): This patch has binary data. The PHP zlib extension is required to apply patches with binary data to git. Install the PHP zlib extension to continue. #0 /Users/epriestley/dev/core/lib/arcanist/src/parser/ArcanistBundle.php(823): ArcanistBundle::newBase85Data('\x89PNG\r\n\x1A\n\x00\x00\x00\rIHD...', '\n') #1 /Users/epriestley/dev/core/lib/arcanist/src/parser/ArcanistBundle.php(813): ArcanistBundle->emitBinaryDiffBody('\x89PNG\r\n\x1A\n\x00\x00\x00\rIHD...')
0 msAbstractDirectedGraphTestCase::testCyclicGraph
1 assertion(s) passed.
0 msAbstractDirectedGraphTestCase::testEdgeLoadFailure
1 assertion(s) passed.
0 msAbstractDirectedGraphTestCase::testNonTreeGraph
1 assertion(s) passed.
0 msAbstractDirectedGraphTestCase::testNoncyclicGraph
1 assertion(s) passed.
View Full Test Results (1 Failed · 240 Passed)

Event Timeline

epriestley created this revision.
cspeckmim added inline comments.
src/utils/PhutilSystem.php
31

This and the next function look swapped. This is getStderr but is initializing and returning stdout, and vice-versa below

src/utils/PhutilSystem.php
31

Ah, quite. Thanks!

  • Fix stderr vs stdout mixup.
This revision was not accepted when it landed; it landed in state Needs Review.May 3 2022, 6:58 PM
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.