diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php --- a/src/__phutil_library_map__.php +++ b/src/__phutil_library_map__.php @@ -45,450 +45,6 @@ 'AphrontSchemaQueryException' => 'aphront/storage/exception/AphrontSchemaQueryException.php', 'AphrontScopedUnguardedWriteCapability' => 'aphront/writeguard/AphrontScopedUnguardedWriteCapability.php', 'AphrontWriteGuard' => 'aphront/writeguard/AphrontWriteGuard.php', - 'BaseHTTPFuture' => 'future/http/BaseHTTPFuture.php', - 'CaseInsensitiveArray' => 'utils/CaseInsensitiveArray.php', - 'CaseInsensitiveArrayTestCase' => 'utils/__tests__/CaseInsensitiveArrayTestCase.php', - 'CommandException' => 'future/exec/CommandException.php', - 'ConduitClient' => 'conduit/ConduitClient.php', - 'ConduitClientException' => 'conduit/ConduitClientException.php', - 'ConduitClientTestCase' => 'conduit/__tests__/ConduitClientTestCase.php', - 'ConduitFuture' => 'conduit/ConduitFuture.php', - 'ExecFuture' => 'future/exec/ExecFuture.php', - 'ExecFutureTestCase' => 'future/exec/__tests__/ExecFutureTestCase.php', - 'ExecPassthruTestCase' => 'future/exec/__tests__/ExecPassthruTestCase.php', - 'FileFinder' => 'filesystem/FileFinder.php', - 'FileFinderTestCase' => 'filesystem/__tests__/FileFinderTestCase.php', - 'FileList' => 'filesystem/FileList.php', - 'Filesystem' => 'filesystem/Filesystem.php', - 'FilesystemException' => 'filesystem/FilesystemException.php', - 'FilesystemTestCase' => 'filesystem/__tests__/FilesystemTestCase.php', - 'Future' => 'future/Future.php', - 'FutureIterator' => 'future/FutureIterator.php', - 'FutureIteratorTestCase' => 'future/__tests__/FutureIteratorTestCase.php', - 'FutureProxy' => 'future/FutureProxy.php', - 'HTTPFuture' => 'future/http/HTTPFuture.php', - 'HTTPFutureCURLResponseStatus' => 'future/http/status/HTTPFutureCURLResponseStatus.php', - 'HTTPFutureCertificateResponseStatus' => 'future/http/status/HTTPFutureCertificateResponseStatus.php', - 'HTTPFutureHTTPResponseStatus' => 'future/http/status/HTTPFutureHTTPResponseStatus.php', - 'HTTPFutureParseResponseStatus' => 'future/http/status/HTTPFutureParseResponseStatus.php', - 'HTTPFutureResponseStatus' => 'future/http/status/HTTPFutureResponseStatus.php', - 'HTTPFutureTransportResponseStatus' => 'future/http/status/HTTPFutureTransportResponseStatus.php', - 'HTTPSFuture' => 'future/http/HTTPSFuture.php', - 'ImmediateFuture' => 'future/ImmediateFuture.php', - 'LibphutilUSEnglishTranslation' => 'internationalization/translation/LibphutilUSEnglishTranslation.php', - 'LinesOfALarge' => 'filesystem/linesofalarge/LinesOfALarge.php', - 'LinesOfALargeExecFuture' => 'filesystem/linesofalarge/LinesOfALargeExecFuture.php', - 'LinesOfALargeExecFutureTestCase' => 'filesystem/linesofalarge/__tests__/LinesOfALargeExecFutureTestCase.php', - 'LinesOfALargeFile' => 'filesystem/linesofalarge/LinesOfALargeFile.php', - 'LinesOfALargeFileTestCase' => 'filesystem/linesofalarge/__tests__/LinesOfALargeFileTestCase.php', - 'MFilterTestHelper' => 'utils/__tests__/MFilterTestHelper.php', - 'PHPASTParserTestCase' => 'parser/xhpast/__tests__/PHPASTParserTestCase.php', - 'PhageAction' => 'phage/action/PhageAction.php', - 'PhageAgentAction' => 'phage/action/PhageAgentAction.php', - 'PhageAgentBootloader' => 'phage/bootloader/PhageAgentBootloader.php', - 'PhageAgentTestCase' => 'phage/__tests__/PhageAgentTestCase.php', - 'PhageExecuteAction' => 'phage/action/PhageExecuteAction.php', - 'PhageLocalAction' => 'phage/action/PhageLocalAction.php', - 'PhagePHPAgent' => 'phage/agent/PhagePHPAgent.php', - 'PhagePHPAgentBootloader' => 'phage/bootloader/PhagePHPAgentBootloader.php', - 'PhagePlanAction' => 'phage/action/PhagePlanAction.php', - 'Phobject' => 'object/Phobject.php', - 'PhobjectTestCase' => 'object/__tests__/PhobjectTestCase.php', - 'PhutilAPCKeyValueCache' => 'cache/PhutilAPCKeyValueCache.php', - 'PhutilAWSCloudFormationFuture' => 'future/aws/PhutilAWSCloudFormationFuture.php', - 'PhutilAWSCloudWatchFuture' => 'future/aws/PhutilAWSCloudWatchFuture.php', - 'PhutilAWSEC2Future' => 'future/aws/PhutilAWSEC2Future.php', - 'PhutilAWSException' => 'future/aws/PhutilAWSException.php', - 'PhutilAWSFuture' => 'future/aws/PhutilAWSFuture.php', - 'PhutilAWSManagementWorkflow' => 'future/aws/management/PhutilAWSManagementWorkflow.php', - 'PhutilAWSS3DeleteManagementWorkflow' => 'future/aws/management/PhutilAWSS3DeleteManagementWorkflow.php', - 'PhutilAWSS3Future' => 'future/aws/PhutilAWSS3Future.php', - 'PhutilAWSS3GetManagementWorkflow' => 'future/aws/management/PhutilAWSS3GetManagementWorkflow.php', - 'PhutilAWSS3ManagementWorkflow' => 'future/aws/management/PhutilAWSS3ManagementWorkflow.php', - 'PhutilAWSS3PutManagementWorkflow' => 'future/aws/management/PhutilAWSS3PutManagementWorkflow.php', - 'PhutilAWSv4Signature' => 'future/aws/PhutilAWSv4Signature.php', - 'PhutilAWSv4SignatureTestCase' => 'future/aws/__tests__/PhutilAWSv4SignatureTestCase.php', - 'PhutilAggregateException' => 'error/PhutilAggregateException.php', - 'PhutilAllCapsEnglishLocale' => 'internationalization/locales/PhutilAllCapsEnglishLocale.php', - 'PhutilAmazonAuthAdapter' => 'auth/PhutilAmazonAuthAdapter.php', - 'PhutilArgumentParser' => 'parser/argument/PhutilArgumentParser.php', - 'PhutilArgumentParserException' => 'parser/argument/exception/PhutilArgumentParserException.php', - 'PhutilArgumentParserTestCase' => 'parser/argument/__tests__/PhutilArgumentParserTestCase.php', - 'PhutilArgumentSpecification' => 'parser/argument/PhutilArgumentSpecification.php', - 'PhutilArgumentSpecificationException' => 'parser/argument/exception/PhutilArgumentSpecificationException.php', - 'PhutilArgumentSpecificationTestCase' => 'parser/argument/__tests__/PhutilArgumentSpecificationTestCase.php', - 'PhutilArgumentSpellingCorrector' => 'parser/argument/PhutilArgumentSpellingCorrector.php', - 'PhutilArgumentSpellingCorrectorTestCase' => 'parser/argument/__tests__/PhutilArgumentSpellingCorrectorTestCase.php', - 'PhutilArgumentUsageException' => 'parser/argument/exception/PhutilArgumentUsageException.php', - 'PhutilArgumentWorkflow' => 'parser/argument/workflow/PhutilArgumentWorkflow.php', - 'PhutilArray' => 'utils/PhutilArray.php', - 'PhutilArrayTestCase' => 'utils/__tests__/PhutilArrayTestCase.php', - 'PhutilArrayWithDefaultValue' => 'utils/PhutilArrayWithDefaultValue.php', - 'PhutilAsanaAuthAdapter' => 'auth/PhutilAsanaAuthAdapter.php', - 'PhutilAsanaFuture' => 'future/asana/PhutilAsanaFuture.php', - 'PhutilAuthAdapter' => 'auth/PhutilAuthAdapter.php', - 'PhutilAuthConfigurationException' => 'auth/exception/PhutilAuthConfigurationException.php', - 'PhutilAuthCredentialException' => 'auth/exception/PhutilAuthCredentialException.php', - 'PhutilAuthException' => 'auth/exception/PhutilAuthException.php', - 'PhutilAuthUserAbortedException' => 'auth/exception/PhutilAuthUserAbortedException.php', - 'PhutilBacktraceSignalHandler' => 'future/exec/PhutilBacktraceSignalHandler.php', - 'PhutilBallOfPHP' => 'phage/util/PhutilBallOfPHP.php', - 'PhutilBinaryAnalyzer' => 'filesystem/binary/PhutilBinaryAnalyzer.php', - 'PhutilBinaryAnalyzerTestCase' => 'filesystem/binary/__tests__/PhutilBinaryAnalyzerTestCase.php', - 'PhutilBitbucketAuthAdapter' => 'auth/PhutilBitbucketAuthAdapter.php', - 'PhutilBootloader' => 'moduleutils/PhutilBootloader.php', - 'PhutilBootloaderException' => 'moduleutils/PhutilBootloaderException.php', - 'PhutilBritishEnglishLocale' => 'internationalization/locales/PhutilBritishEnglishLocale.php', - 'PhutilBufferedIterator' => 'utils/PhutilBufferedIterator.php', - 'PhutilBufferedIteratorTestCase' => 'utils/__tests__/PhutilBufferedIteratorTestCase.php', - 'PhutilBugtraqParser' => 'parser/PhutilBugtraqParser.php', - 'PhutilBugtraqParserTestCase' => 'parser/__tests__/PhutilBugtraqParserTestCase.php', - 'PhutilCIDRBlock' => 'ip/PhutilCIDRBlock.php', - 'PhutilCIDRList' => 'ip/PhutilCIDRList.php', - 'PhutilCLikeCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilCLikeCodeSnippetContextFreeGrammar.php', - 'PhutilCalendarAbsoluteDateTime' => 'parser/calendar/data/PhutilCalendarAbsoluteDateTime.php', - 'PhutilCalendarContainerNode' => 'parser/calendar/data/PhutilCalendarContainerNode.php', - 'PhutilCalendarDateTime' => 'parser/calendar/data/PhutilCalendarDateTime.php', - 'PhutilCalendarDateTimeTestCase' => 'parser/calendar/data/__tests__/PhutilCalendarDateTimeTestCase.php', - 'PhutilCalendarDocumentNode' => 'parser/calendar/data/PhutilCalendarDocumentNode.php', - 'PhutilCalendarDuration' => 'parser/calendar/data/PhutilCalendarDuration.php', - 'PhutilCalendarEventNode' => 'parser/calendar/data/PhutilCalendarEventNode.php', - 'PhutilCalendarNode' => 'parser/calendar/data/PhutilCalendarNode.php', - 'PhutilCalendarProxyDateTime' => 'parser/calendar/data/PhutilCalendarProxyDateTime.php', - 'PhutilCalendarRawNode' => 'parser/calendar/data/PhutilCalendarRawNode.php', - 'PhutilCalendarRecurrenceList' => 'parser/calendar/data/PhutilCalendarRecurrenceList.php', - 'PhutilCalendarRecurrenceRule' => 'parser/calendar/data/PhutilCalendarRecurrenceRule.php', - 'PhutilCalendarRecurrenceRuleTestCase' => 'parser/calendar/data/__tests__/PhutilCalendarRecurrenceRuleTestCase.php', - 'PhutilCalendarRecurrenceSet' => 'parser/calendar/data/PhutilCalendarRecurrenceSet.php', - 'PhutilCalendarRecurrenceSource' => 'parser/calendar/data/PhutilCalendarRecurrenceSource.php', - 'PhutilCalendarRecurrenceTestCase' => 'parser/calendar/data/__tests__/PhutilCalendarRecurrenceTestCase.php', - 'PhutilCalendarRelativeDateTime' => 'parser/calendar/data/PhutilCalendarRelativeDateTime.php', - 'PhutilCalendarRootNode' => 'parser/calendar/data/PhutilCalendarRootNode.php', - 'PhutilCalendarUserNode' => 'parser/calendar/data/PhutilCalendarUserNode.php', - 'PhutilCallbackFilterIterator' => 'utils/PhutilCallbackFilterIterator.php', - 'PhutilCallbackSignalHandler' => 'future/exec/PhutilCallbackSignalHandler.php', - 'PhutilChannel' => 'channel/PhutilChannel.php', - 'PhutilChannelChannel' => 'channel/PhutilChannelChannel.php', - 'PhutilChannelTestCase' => 'channel/__tests__/PhutilChannelTestCase.php', - 'PhutilChunkedIterator' => 'utils/PhutilChunkedIterator.php', - 'PhutilChunkedIteratorTestCase' => 'utils/__tests__/PhutilChunkedIteratorTestCase.php', - 'PhutilClassMapQuery' => 'symbols/PhutilClassMapQuery.php', - 'PhutilCloudWatchMetric' => 'future/aws/PhutilCloudWatchMetric.php', - 'PhutilCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilCodeSnippetContextFreeGrammar.php', - 'PhutilCommandString' => 'xsprintf/PhutilCommandString.php', - 'PhutilConsole' => 'console/PhutilConsole.php', - 'PhutilConsoleBlock' => 'console/view/PhutilConsoleBlock.php', - 'PhutilConsoleError' => 'console/view/PhutilConsoleError.php', - 'PhutilConsoleFormatter' => 'console/PhutilConsoleFormatter.php', - 'PhutilConsoleInfo' => 'console/view/PhutilConsoleInfo.php', - 'PhutilConsoleList' => 'console/view/PhutilConsoleList.php', - 'PhutilConsoleLogLine' => 'console/view/PhutilConsoleLogLine.php', - 'PhutilConsoleMessage' => 'console/PhutilConsoleMessage.php', - 'PhutilConsoleMetrics' => 'console/PhutilConsoleMetrics.php', - 'PhutilConsoleMetricsSignalHandler' => 'future/exec/PhutilConsoleMetricsSignalHandler.php', - 'PhutilConsoleProgressBar' => 'console/PhutilConsoleProgressBar.php', - 'PhutilConsoleServer' => 'console/PhutilConsoleServer.php', - 'PhutilConsoleServerChannel' => 'console/PhutilConsoleServerChannel.php', - 'PhutilConsoleSkip' => 'console/view/PhutilConsoleSkip.php', - 'PhutilConsoleStdinNotInteractiveException' => 'console/PhutilConsoleStdinNotInteractiveException.php', - 'PhutilConsoleSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilConsoleSyntaxHighlighter.php', - 'PhutilConsoleTable' => 'console/view/PhutilConsoleTable.php', - 'PhutilConsoleView' => 'console/view/PhutilConsoleView.php', - 'PhutilConsoleWarning' => 'console/view/PhutilConsoleWarning.php', - 'PhutilConsoleWrapTestCase' => 'console/__tests__/PhutilConsoleWrapTestCase.php', - 'PhutilContextFreeGrammar' => 'grammar/PhutilContextFreeGrammar.php', - 'PhutilCowsay' => 'utils/PhutilCowsay.php', - 'PhutilCowsayTestCase' => 'utils/__tests__/PhutilCowsayTestCase.php', - 'PhutilCsprintfTestCase' => 'xsprintf/__tests__/PhutilCsprintfTestCase.php', - 'PhutilCzechLocale' => 'internationalization/locales/PhutilCzechLocale.php', - 'PhutilDaemon' => 'daemon/PhutilDaemon.php', - 'PhutilDaemonHandle' => 'daemon/PhutilDaemonHandle.php', - 'PhutilDaemonOverseer' => 'daemon/PhutilDaemonOverseer.php', - 'PhutilDaemonOverseerModule' => 'daemon/PhutilDaemonOverseerModule.php', - 'PhutilDaemonPool' => 'daemon/PhutilDaemonPool.php', - 'PhutilDefaultSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilDefaultSyntaxHighlighter.php', - 'PhutilDefaultSyntaxHighlighterEngine' => 'markup/syntax/engine/PhutilDefaultSyntaxHighlighterEngine.php', - 'PhutilDefaultSyntaxHighlighterEnginePygmentsFuture' => 'markup/syntax/highlighter/pygments/PhutilDefaultSyntaxHighlighterEnginePygmentsFuture.php', - 'PhutilDefaultSyntaxHighlighterEngineTestCase' => 'markup/syntax/engine/__tests__/PhutilDefaultSyntaxHighlighterEngineTestCase.php', - 'PhutilDeferredLog' => 'filesystem/PhutilDeferredLog.php', - 'PhutilDeferredLogTestCase' => 'filesystem/__tests__/PhutilDeferredLogTestCase.php', - 'PhutilDiffBinaryAnalyzer' => 'filesystem/binary/PhutilDiffBinaryAnalyzer.php', - 'PhutilDirectedScalarGraph' => 'utils/PhutilDirectedScalarGraph.php', - 'PhutilDirectoryFixture' => 'filesystem/PhutilDirectoryFixture.php', - 'PhutilDirectoryKeyValueCache' => 'cache/PhutilDirectoryKeyValueCache.php', - 'PhutilDisqusAuthAdapter' => 'auth/PhutilDisqusAuthAdapter.php', - 'PhutilDivinerSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilDivinerSyntaxHighlighter.php', - 'PhutilDocblockParser' => 'parser/PhutilDocblockParser.php', - 'PhutilDocblockParserTestCase' => 'parser/__tests__/PhutilDocblockParserTestCase.php', - 'PhutilEditDistanceMatrix' => 'utils/PhutilEditDistanceMatrix.php', - 'PhutilEditDistanceMatrixTestCase' => 'utils/__tests__/PhutilEditDistanceMatrixTestCase.php', - 'PhutilEditorConfig' => 'parser/PhutilEditorConfig.php', - 'PhutilEditorConfigTestCase' => 'parser/__tests__/PhutilEditorConfigTestCase.php', - 'PhutilEmailAddress' => 'parser/PhutilEmailAddress.php', - 'PhutilEmailAddressTestCase' => 'parser/__tests__/PhutilEmailAddressTestCase.php', - 'PhutilEmojiLocale' => 'internationalization/locales/PhutilEmojiLocale.php', - 'PhutilEmptyAuthAdapter' => 'auth/PhutilEmptyAuthAdapter.php', - 'PhutilEnglishCanadaLocale' => 'internationalization/locales/PhutilEnglishCanadaLocale.php', - 'PhutilErrorHandler' => 'error/PhutilErrorHandler.php', - 'PhutilErrorHandlerTestCase' => 'error/__tests__/PhutilErrorHandlerTestCase.php', - 'PhutilErrorTrap' => 'error/PhutilErrorTrap.php', - 'PhutilEvent' => 'events/PhutilEvent.php', - 'PhutilEventConstants' => 'events/constant/PhutilEventConstants.php', - 'PhutilEventEngine' => 'events/PhutilEventEngine.php', - 'PhutilEventListener' => 'events/PhutilEventListener.php', - 'PhutilEventType' => 'events/constant/PhutilEventType.php', - 'PhutilExampleBufferedIterator' => 'utils/PhutilExampleBufferedIterator.php', - 'PhutilExcessiveServiceCallsDaemon' => 'daemon/torture/PhutilExcessiveServiceCallsDaemon.php', - 'PhutilExecChannel' => 'channel/PhutilExecChannel.php', - 'PhutilExecPassthru' => 'future/exec/PhutilExecPassthru.php', - 'PhutilExecutableFuture' => 'future/exec/PhutilExecutableFuture.php', - 'PhutilExecutionEnvironment' => 'utils/PhutilExecutionEnvironment.php', - 'PhutilExtensionsTestCase' => 'moduleutils/__tests__/PhutilExtensionsTestCase.php', - 'PhutilFacebookAuthAdapter' => 'auth/PhutilFacebookAuthAdapter.php', - 'PhutilFatalDaemon' => 'daemon/torture/PhutilFatalDaemon.php', - 'PhutilFileLock' => 'filesystem/PhutilFileLock.php', - 'PhutilFileLockTestCase' => 'filesystem/__tests__/PhutilFileLockTestCase.php', - 'PhutilFileTree' => 'filesystem/PhutilFileTree.php', - 'PhutilFrenchLocale' => 'internationalization/locales/PhutilFrenchLocale.php', - 'PhutilGermanLocale' => 'internationalization/locales/PhutilGermanLocale.php', - 'PhutilGitBinaryAnalyzer' => 'filesystem/binary/PhutilGitBinaryAnalyzer.php', - 'PhutilGitHubAuthAdapter' => 'auth/PhutilGitHubAuthAdapter.php', - 'PhutilGitHubFuture' => 'future/github/PhutilGitHubFuture.php', - 'PhutilGitHubResponse' => 'future/github/PhutilGitHubResponse.php', - 'PhutilGitURI' => 'parser/PhutilGitURI.php', - 'PhutilGitURITestCase' => 'parser/__tests__/PhutilGitURITestCase.php', - 'PhutilGoogleAuthAdapter' => 'auth/PhutilGoogleAuthAdapter.php', - 'PhutilHTTPEngineExtension' => 'future/http/PhutilHTTPEngineExtension.php', - 'PhutilHTTPResponse' => 'parser/http/PhutilHTTPResponse.php', - 'PhutilHTTPResponseParser' => 'parser/http/PhutilHTTPResponseParser.php', - 'PhutilHTTPResponseParserTestCase' => 'parser/http/__tests__/PhutilHTTPResponseParserTestCase.php', - 'PhutilHangForeverDaemon' => 'daemon/torture/PhutilHangForeverDaemon.php', - 'PhutilHashingIterator' => 'utils/PhutilHashingIterator.php', - 'PhutilHashingIteratorTestCase' => 'utils/__tests__/PhutilHashingIteratorTestCase.php', - 'PhutilHelpArgumentWorkflow' => 'parser/argument/workflow/PhutilHelpArgumentWorkflow.php', - 'PhutilHgsprintfTestCase' => 'xsprintf/__tests__/PhutilHgsprintfTestCase.php', - 'PhutilHighIntensityIntervalDaemon' => 'daemon/torture/PhutilHighIntensityIntervalDaemon.php', - 'PhutilICSParser' => 'parser/calendar/ics/PhutilICSParser.php', - 'PhutilICSParserException' => 'parser/calendar/ics/PhutilICSParserException.php', - 'PhutilICSParserTestCase' => 'parser/calendar/ics/__tests__/PhutilICSParserTestCase.php', - 'PhutilICSWriter' => 'parser/calendar/ics/PhutilICSWriter.php', - 'PhutilICSWriterTestCase' => 'parser/calendar/ics/__tests__/PhutilICSWriterTestCase.php', - 'PhutilINIParserException' => 'parser/exception/PhutilINIParserException.php', - 'PhutilIPAddress' => 'ip/PhutilIPAddress.php', - 'PhutilIPAddressTestCase' => 'ip/__tests__/PhutilIPAddressTestCase.php', - 'PhutilIPv4Address' => 'ip/PhutilIPv4Address.php', - 'PhutilIPv6Address' => 'ip/PhutilIPv6Address.php', - 'PhutilInRequestKeyValueCache' => 'cache/PhutilInRequestKeyValueCache.php', - 'PhutilInteractiveEditor' => 'console/PhutilInteractiveEditor.php', - 'PhutilInvalidRuleParserGeneratorException' => 'parser/generator/exception/PhutilInvalidRuleParserGeneratorException.php', - 'PhutilInvalidStateException' => 'exception/PhutilInvalidStateException.php', - 'PhutilInvalidStateExceptionTestCase' => 'exception/__tests__/PhutilInvalidStateExceptionTestCase.php', - 'PhutilInvisibleSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilInvisibleSyntaxHighlighter.php', - 'PhutilIrreducibleRuleParserGeneratorException' => 'parser/generator/exception/PhutilIrreducibleRuleParserGeneratorException.php', - 'PhutilJIRAAuthAdapter' => 'auth/PhutilJIRAAuthAdapter.php', - 'PhutilJSON' => 'parser/PhutilJSON.php', - 'PhutilJSONFragmentLexer' => 'lexer/PhutilJSONFragmentLexer.php', - 'PhutilJSONFragmentLexerHighlighterTestCase' => 'markup/syntax/highlighter/__tests__/PhutilJSONFragmentLexerHighlighterTestCase.php', - 'PhutilJSONParser' => 'parser/PhutilJSONParser.php', - 'PhutilJSONParserException' => 'parser/exception/PhutilJSONParserException.php', - 'PhutilJSONParserTestCase' => 'parser/__tests__/PhutilJSONParserTestCase.php', - 'PhutilJSONProtocolChannel' => 'channel/PhutilJSONProtocolChannel.php', - 'PhutilJSONProtocolChannelTestCase' => 'channel/__tests__/PhutilJSONProtocolChannelTestCase.php', - 'PhutilJSONTestCase' => 'parser/__tests__/PhutilJSONTestCase.php', - 'PhutilJavaCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilJavaCodeSnippetContextFreeGrammar.php', - 'PhutilJavaFragmentLexer' => 'lexer/PhutilJavaFragmentLexer.php', - 'PhutilKeyValueCache' => 'cache/PhutilKeyValueCache.php', - 'PhutilKeyValueCacheNamespace' => 'cache/PhutilKeyValueCacheNamespace.php', - 'PhutilKeyValueCacheProfiler' => 'cache/PhutilKeyValueCacheProfiler.php', - 'PhutilKeyValueCacheProxy' => 'cache/PhutilKeyValueCacheProxy.php', - 'PhutilKeyValueCacheStack' => 'cache/PhutilKeyValueCacheStack.php', - 'PhutilKeyValueCacheTestCase' => 'cache/__tests__/PhutilKeyValueCacheTestCase.php', - 'PhutilKoreanLocale' => 'internationalization/locales/PhutilKoreanLocale.php', - 'PhutilLDAPAuthAdapter' => 'auth/PhutilLDAPAuthAdapter.php', - 'PhutilLanguageGuesser' => 'parser/PhutilLanguageGuesser.php', - 'PhutilLanguageGuesserTestCase' => 'parser/__tests__/PhutilLanguageGuesserTestCase.php', - 'PhutilLexer' => 'lexer/PhutilLexer.php', - 'PhutilLexerSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilLexerSyntaxHighlighter.php', - 'PhutilLibraryConflictException' => 'moduleutils/PhutilLibraryConflictException.php', - 'PhutilLibraryMapBuilder' => 'moduleutils/PhutilLibraryMapBuilder.php', - 'PhutilLibraryTestCase' => '__tests__/PhutilLibraryTestCase.php', - 'PhutilLipsumContextFreeGrammar' => 'grammar/PhutilLipsumContextFreeGrammar.php', - 'PhutilLocale' => 'internationalization/PhutilLocale.php', - 'PhutilLocaleTestCase' => 'internationalization/__tests__/PhutilLocaleTestCase.php', - 'PhutilLock' => 'filesystem/PhutilLock.php', - 'PhutilLockException' => 'filesystem/PhutilLockException.php', - 'PhutilLogFileChannel' => 'channel/PhutilLogFileChannel.php', - 'PhutilLunarPhase' => 'utils/PhutilLunarPhase.php', - 'PhutilLunarPhaseTestCase' => 'utils/__tests__/PhutilLunarPhaseTestCase.php', - 'PhutilMarkupEngine' => 'markup/PhutilMarkupEngine.php', - 'PhutilMarkupTestCase' => 'markup/__tests__/PhutilMarkupTestCase.php', - 'PhutilMemcacheKeyValueCache' => 'cache/PhutilMemcacheKeyValueCache.php', - 'PhutilMercurialBinaryAnalyzer' => 'filesystem/binary/PhutilMercurialBinaryAnalyzer.php', - 'PhutilMethodNotImplementedException' => 'error/PhutilMethodNotImplementedException.php', - 'PhutilMetricsChannel' => 'channel/PhutilMetricsChannel.php', - 'PhutilMissingSymbolException' => 'symbols/exception/PhutilMissingSymbolException.php', - 'PhutilModuleUtilsTestCase' => 'moduleutils/__tests__/PhutilModuleUtilsTestCase.php', - 'PhutilNiceDaemon' => 'daemon/torture/PhutilNiceDaemon.php', - 'PhutilNumber' => 'internationalization/PhutilNumber.php', - 'PhutilOAuth1AuthAdapter' => 'auth/PhutilOAuth1AuthAdapter.php', - 'PhutilOAuth1Future' => 'future/oauth/PhutilOAuth1Future.php', - 'PhutilOAuth1FutureTestCase' => 'future/oauth/__tests__/PhutilOAuth1FutureTestCase.php', - 'PhutilOAuthAuthAdapter' => 'auth/PhutilOAuthAuthAdapter.php', - 'PhutilOnDiskKeyValueCache' => 'cache/PhutilOnDiskKeyValueCache.php', - 'PhutilOpaqueEnvelope' => 'error/PhutilOpaqueEnvelope.php', - 'PhutilOpaqueEnvelopeKey' => 'error/PhutilOpaqueEnvelopeKey.php', - 'PhutilOpaqueEnvelopeTestCase' => 'error/__tests__/PhutilOpaqueEnvelopeTestCase.php', - 'PhutilPHPCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilPHPCodeSnippetContextFreeGrammar.php', - 'PhutilPHPFragmentLexer' => 'lexer/PhutilPHPFragmentLexer.php', - 'PhutilPHPFragmentLexerHighlighterTestCase' => 'markup/syntax/highlighter/__tests__/PhutilPHPFragmentLexerHighlighterTestCase.php', - 'PhutilPHPFragmentLexerTestCase' => 'lexer/__tests__/PhutilPHPFragmentLexerTestCase.php', - 'PhutilPHPObjectProtocolChannel' => 'channel/PhutilPHPObjectProtocolChannel.php', - 'PhutilPHPObjectProtocolChannelTestCase' => 'channel/__tests__/PhutilPHPObjectProtocolChannelTestCase.php', - 'PhutilParserGenerator' => 'parser/PhutilParserGenerator.php', - 'PhutilParserGeneratorException' => 'parser/generator/exception/PhutilParserGeneratorException.php', - 'PhutilParserGeneratorTestCase' => 'parser/__tests__/PhutilParserGeneratorTestCase.php', - 'PhutilPayPalAPIFuture' => 'future/paypal/PhutilPayPalAPIFuture.php', - 'PhutilPerson' => 'internationalization/PhutilPerson.php', - 'PhutilPersonTest' => 'internationalization/__tests__/PhutilPersonTest.php', - 'PhutilPhabricatorAuthAdapter' => 'auth/PhutilPhabricatorAuthAdapter.php', - 'PhutilPhtTestCase' => 'internationalization/__tests__/PhutilPhtTestCase.php', - 'PhutilPirateEnglishLocale' => 'internationalization/locales/PhutilPirateEnglishLocale.php', - 'PhutilPortugueseBrazilLocale' => 'internationalization/locales/PhutilPortugueseBrazilLocale.php', - 'PhutilPortuguesePortugalLocale' => 'internationalization/locales/PhutilPortuguesePortugalLocale.php', - 'PhutilPostmarkFuture' => 'future/postmark/PhutilPostmarkFuture.php', - 'PhutilPregsprintfTestCase' => 'xsprintf/__tests__/PhutilPregsprintfTestCase.php', - 'PhutilProcessGroupDaemon' => 'daemon/torture/PhutilProcessGroupDaemon.php', - 'PhutilProseDiff' => 'utils/PhutilProseDiff.php', - 'PhutilProseDiffTestCase' => 'utils/__tests__/PhutilProseDiffTestCase.php', - 'PhutilProseDifferenceEngine' => 'utils/PhutilProseDifferenceEngine.php', - 'PhutilProtocolChannel' => 'channel/PhutilProtocolChannel.php', - 'PhutilProxyException' => 'error/PhutilProxyException.php', - 'PhutilProxyIterator' => 'utils/PhutilProxyIterator.php', - 'PhutilPygmentizeBinaryAnalyzer' => 'filesystem/binary/PhutilPygmentizeBinaryAnalyzer.php', - 'PhutilPygmentizeParser' => 'parser/PhutilPygmentizeParser.php', - 'PhutilPygmentizeParserTestCase' => 'parser/__tests__/PhutilPygmentizeParserTestCase.php', - 'PhutilPygmentsSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilPygmentsSyntaxHighlighter.php', - 'PhutilPythonFragmentLexer' => 'lexer/PhutilPythonFragmentLexer.php', - 'PhutilQsprintfInterface' => 'xsprintf/PhutilQsprintfInterface.php', - 'PhutilQueryStringParser' => 'parser/PhutilQueryStringParser.php', - 'PhutilQueryStringParserTestCase' => 'parser/__tests__/PhutilQueryStringParserTestCase.php', - 'PhutilRainbowSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilRainbowSyntaxHighlighter.php', - 'PhutilRawEnglishLocale' => 'internationalization/locales/PhutilRawEnglishLocale.php', - 'PhutilReadableSerializer' => 'readableserializer/PhutilReadableSerializer.php', - 'PhutilReadableSerializerTestCase' => 'readableserializer/__tests__/PhutilReadableSerializerTestCase.php', - 'PhutilRealNameContextFreeGrammar' => 'grammar/PhutilRealNameContextFreeGrammar.php', - 'PhutilRemarkupBlockInterpreter' => 'markup/engine/remarkup/blockrule/PhutilRemarkupBlockInterpreter.php', - 'PhutilRemarkupBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupBlockRule.php', - 'PhutilRemarkupBlockStorage' => 'markup/engine/remarkup/PhutilRemarkupBlockStorage.php', - 'PhutilRemarkupBoldRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupBoldRule.php', - 'PhutilRemarkupCodeBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupCodeBlockRule.php', - 'PhutilRemarkupDefaultBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupDefaultBlockRule.php', - 'PhutilRemarkupDelRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupDelRule.php', - 'PhutilRemarkupDocumentLinkRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupDocumentLinkRule.php', - 'PhutilRemarkupEngine' => 'markup/engine/PhutilRemarkupEngine.php', - 'PhutilRemarkupEngineTestCase' => 'markup/engine/__tests__/PhutilRemarkupEngineTestCase.php', - 'PhutilRemarkupEscapeRemarkupRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupEscapeRemarkupRule.php', - 'PhutilRemarkupHeaderBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupHeaderBlockRule.php', - 'PhutilRemarkupHighlightRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupHighlightRule.php', - 'PhutilRemarkupHorizontalRuleBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupHorizontalRuleBlockRule.php', - 'PhutilRemarkupHyperlinkRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupHyperlinkRule.php', - 'PhutilRemarkupInlineBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupInlineBlockRule.php', - 'PhutilRemarkupInterpreterBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupInterpreterBlockRule.php', - 'PhutilRemarkupItalicRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupItalicRule.php', - 'PhutilRemarkupLinebreaksRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupLinebreaksRule.php', - 'PhutilRemarkupListBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupListBlockRule.php', - 'PhutilRemarkupLiteralBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupLiteralBlockRule.php', - 'PhutilRemarkupMonospaceRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupMonospaceRule.php', - 'PhutilRemarkupNoteBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupNoteBlockRule.php', - 'PhutilRemarkupQuotesBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupQuotesBlockRule.php', - 'PhutilRemarkupReplyBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupReplyBlockRule.php', - 'PhutilRemarkupRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupRule.php', - 'PhutilRemarkupSimpleTableBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupSimpleTableBlockRule.php', - 'PhutilRemarkupTableBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupTableBlockRule.php', - 'PhutilRemarkupTestInterpreterRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupTestInterpreterRule.php', - 'PhutilRemarkupUnderlineRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupUnderlineRule.php', - 'PhutilRope' => 'utils/PhutilRope.php', - 'PhutilRopeTestCase' => 'utils/__tests__/PhutilRopeTestCase.php', - 'PhutilSafeHTML' => 'markup/PhutilSafeHTML.php', - 'PhutilSafeHTMLProducerInterface' => 'markup/PhutilSafeHTMLProducerInterface.php', - 'PhutilSafeHTMLTestCase' => 'markup/__tests__/PhutilSafeHTMLTestCase.php', - 'PhutilSaturateStdoutDaemon' => 'daemon/torture/PhutilSaturateStdoutDaemon.php', - 'PhutilSearchQueryCompiler' => 'search/PhutilSearchQueryCompiler.php', - 'PhutilSearchQueryCompilerSyntaxException' => 'search/PhutilSearchQueryCompilerSyntaxException.php', - 'PhutilSearchQueryCompilerTestCase' => 'search/__tests__/PhutilSearchQueryCompilerTestCase.php', - 'PhutilSearchQueryToken' => 'search/PhutilSearchQueryToken.php', - 'PhutilSearchStemmer' => 'search/PhutilSearchStemmer.php', - 'PhutilSearchStemmerTestCase' => 'search/__tests__/PhutilSearchStemmerTestCase.php', - 'PhutilServiceProfiler' => 'serviceprofiler/PhutilServiceProfiler.php', - 'PhutilShellLexer' => 'lexer/PhutilShellLexer.php', - 'PhutilShellLexerTestCase' => 'lexer/__tests__/PhutilShellLexerTestCase.php', - 'PhutilSignalHandler' => 'future/exec/PhutilSignalHandler.php', - 'PhutilSignalRouter' => 'future/exec/PhutilSignalRouter.php', - 'PhutilSimpleOptions' => 'parser/PhutilSimpleOptions.php', - 'PhutilSimpleOptionsLexer' => 'lexer/PhutilSimpleOptionsLexer.php', - 'PhutilSimpleOptionsLexerTestCase' => 'lexer/__tests__/PhutilSimpleOptionsLexerTestCase.php', - 'PhutilSimpleOptionsTestCase' => 'parser/__tests__/PhutilSimpleOptionsTestCase.php', - 'PhutilSimplifiedChineseLocale' => 'internationalization/locales/PhutilSimplifiedChineseLocale.php', - 'PhutilSlackAuthAdapter' => 'auth/PhutilSlackAuthAdapter.php', - 'PhutilSlackFuture' => 'future/slack/PhutilSlackFuture.php', - 'PhutilSocketChannel' => 'channel/PhutilSocketChannel.php', - 'PhutilSortVector' => 'utils/PhutilSortVector.php', - 'PhutilSpanishSpainLocale' => 'internationalization/locales/PhutilSpanishSpainLocale.php', - 'PhutilSprite' => 'sprites/PhutilSprite.php', - 'PhutilSpriteSheet' => 'sprites/PhutilSpriteSheet.php', - 'PhutilStreamIterator' => 'utils/PhutilStreamIterator.php', - 'PhutilSubversionBinaryAnalyzer' => 'filesystem/binary/PhutilSubversionBinaryAnalyzer.php', - 'PhutilSymbolLoader' => 'symbols/PhutilSymbolLoader.php', - 'PhutilSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilSyntaxHighlighter.php', - 'PhutilSyntaxHighlighterEngine' => 'markup/syntax/engine/PhutilSyntaxHighlighterEngine.php', - 'PhutilSyntaxHighlighterException' => 'markup/syntax/highlighter/PhutilSyntaxHighlighterException.php', - 'PhutilSystem' => 'utils/PhutilSystem.php', - 'PhutilSystemTestCase' => 'utils/__tests__/PhutilSystemTestCase.php', - 'PhutilTerminalString' => 'xsprintf/PhutilTerminalString.php', - 'PhutilTestPhobject' => 'object/__tests__/PhutilTestPhobject.php', - 'PhutilTortureTestDaemon' => 'daemon/torture/PhutilTortureTestDaemon.php', - 'PhutilTraditionalChineseLocale' => 'internationalization/locales/PhutilTraditionalChineseLocale.php', - 'PhutilTranslation' => 'internationalization/PhutilTranslation.php', - 'PhutilTranslationTestCase' => 'internationalization/__tests__/PhutilTranslationTestCase.php', - 'PhutilTranslator' => 'internationalization/PhutilTranslator.php', - 'PhutilTranslatorTestCase' => 'internationalization/__tests__/PhutilTranslatorTestCase.php', - 'PhutilTsprintfTestCase' => 'xsprintf/__tests__/PhutilTsprintfTestCase.php', - 'PhutilTwitchAuthAdapter' => 'auth/PhutilTwitchAuthAdapter.php', - 'PhutilTwitchFuture' => 'future/twitch/PhutilTwitchFuture.php', - 'PhutilTwitterAuthAdapter' => 'auth/PhutilTwitterAuthAdapter.php', - 'PhutilTypeCheckException' => 'parser/exception/PhutilTypeCheckException.php', - 'PhutilTypeExtraParametersException' => 'parser/exception/PhutilTypeExtraParametersException.php', - 'PhutilTypeLexer' => 'lexer/PhutilTypeLexer.php', - 'PhutilTypeMissingParametersException' => 'parser/exception/PhutilTypeMissingParametersException.php', - 'PhutilTypeSpec' => 'parser/PhutilTypeSpec.php', - 'PhutilTypeSpecTestCase' => 'parser/__tests__/PhutilTypeSpecTestCase.php', - 'PhutilURI' => 'parser/PhutilURI.php', - 'PhutilURITestCase' => 'parser/__tests__/PhutilURITestCase.php', - 'PhutilUSEnglishLocale' => 'internationalization/locales/PhutilUSEnglishLocale.php', - 'PhutilUTF8StringTruncator' => 'utils/PhutilUTF8StringTruncator.php', - 'PhutilUTF8TestCase' => 'utils/__tests__/PhutilUTF8TestCase.php', - 'PhutilUnknownSymbolParserGeneratorException' => 'parser/generator/exception/PhutilUnknownSymbolParserGeneratorException.php', - 'PhutilUnreachableRuleParserGeneratorException' => 'parser/generator/exception/PhutilUnreachableRuleParserGeneratorException.php', - 'PhutilUnreachableTerminalParserGeneratorException' => 'parser/generator/exception/PhutilUnreachableTerminalParserGeneratorException.php', - 'PhutilUrisprintfTestCase' => 'xsprintf/__tests__/PhutilUrisprintfTestCase.php', - 'PhutilUtilsTestCase' => 'utils/__tests__/PhutilUtilsTestCase.php', - 'PhutilVeryWowEnglishLocale' => 'internationalization/locales/PhutilVeryWowEnglishLocale.php', - 'PhutilWordPressAuthAdapter' => 'auth/PhutilWordPressAuthAdapter.php', - 'PhutilWordPressFuture' => 'future/wordpress/PhutilWordPressFuture.php', - 'PhutilXHPASTBinary' => 'parser/xhpast/bin/PhutilXHPASTBinary.php', - 'PhutilXHPASTSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilXHPASTSyntaxHighlighter.php', - 'PhutilXHPASTSyntaxHighlighterFuture' => 'markup/syntax/highlighter/xhpast/PhutilXHPASTSyntaxHighlighterFuture.php', - 'PhutilXHPASTSyntaxHighlighterTestCase' => 'markup/syntax/highlighter/__tests__/PhutilXHPASTSyntaxHighlighterTestCase.php', - 'QueryFuture' => 'future/query/QueryFuture.php', - 'TempFile' => 'filesystem/TempFile.php', - 'TestAbstractDirectedGraph' => 'utils/__tests__/TestAbstractDirectedGraph.php', - 'XHPASTNode' => 'parser/xhpast/api/XHPASTNode.php', - 'XHPASTNodeTestCase' => 'parser/xhpast/api/__tests__/XHPASTNodeTestCase.php', - 'XHPASTSyntaxErrorException' => 'parser/xhpast/api/XHPASTSyntaxErrorException.php', - 'XHPASTToken' => 'parser/xhpast/api/XHPASTToken.php', - 'XHPASTTree' => 'parser/xhpast/api/XHPASTTree.php', - 'XHPASTTreeTestCase' => 'parser/xhpast/api/__tests__/XHPASTTreeTestCase.php', - 'XsprintfUnknownConversionException' => 'xsprintf/exception/XsprintfUnknownConversionException.php', 'ArcanistAbstractMethodBodyXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistAbstractMethodBodyXHPASTLinterRule.php', 'ArcanistAbstractMethodBodyXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistAbstractMethodBodyXHPASTLinterRuleTestCase.php', 'ArcanistAbstractPrivateMethodXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistAbstractPrivateMethodXHPASTLinterRule.php', @@ -498,6 +54,7 @@ 'ArcanistAliasWorkflow' => 'toolset/ArcanistAliasWorkflow.php', 'ArcanistAmendWorkflow' => 'workflow/ArcanistAmendWorkflow.php', 'ArcanistAnoidWorkflow' => 'workflow/ArcanistAnoidWorkflow.php', + 'ArcanistArcConfigurationEngineExtension' => 'config/ArcanistArcConfigurationEngineExtension.php', 'ArcanistArcToolset' => 'toolset/ArcanistArcToolset.php', 'ArcanistArcWorkflow' => 'workflow/ArcanistArcWorkflow.php', 'ArcanistArrayCombineXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistArrayCombineXHPASTLinterRule.php', @@ -577,10 +134,16 @@ 'ArcanistConcatenationOperatorXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistConcatenationOperatorXHPASTLinterRule.php', 'ArcanistConcatenationOperatorXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistConcatenationOperatorXHPASTLinterRuleTestCase.php', 'ArcanistConduitCall' => 'conduit/ArcanistConduitCall.php', + 'ArcanistConduitConfigurationEngineExtension' => 'config/ArcanistConduitConfigurationEngineExtension.php', 'ArcanistConduitEngine' => 'conduit/ArcanistConduitEngine.php', + 'ArcanistConfigOption' => 'config/ArcanistConfigOption.php', 'ArcanistConfigurationDrivenLintEngine' => 'lint/engine/ArcanistConfigurationDrivenLintEngine.php', 'ArcanistConfigurationDrivenUnitTestEngine' => 'unit/engine/ArcanistConfigurationDrivenUnitTestEngine.php', + 'ArcanistConfigurationEngine' => 'config/ArcanistConfigurationEngine.php', + 'ArcanistConfigurationEngineExtension' => 'config/ArcanistConfigurationEngineExtension.php', 'ArcanistConfigurationManager' => 'configuration/ArcanistConfigurationManager.php', + 'ArcanistConfigurationSource' => 'config/source/ArcanistConfigurationSource.php', + 'ArcanistConfigurationSourceList' => 'config/ArcanistConfigurationSourceList.php', 'ArcanistConsoleLintRenderer' => 'lint/renderer/ArcanistConsoleLintRenderer.php', 'ArcanistConsoleLintRendererTestCase' => 'lint/renderer/__tests__/ArcanistConsoleLintRendererTestCase.php', 'ArcanistConstructorParenthesesXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistConstructorParenthesesXHPASTLinterRule.php', @@ -598,6 +161,7 @@ 'ArcanistDeclarationParenthesesXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistDeclarationParenthesesXHPASTLinterRuleTestCase.php', 'ArcanistDefaultParametersXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistDefaultParametersXHPASTLinterRule.php', 'ArcanistDefaultParametersXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistDefaultParametersXHPASTLinterRuleTestCase.php', + 'ArcanistDefaultsConfigurationSource' => 'config/source/ArcanistDefaultsConfigurationSource.php', 'ArcanistDeprecationXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistDeprecationXHPASTLinterRule.php', 'ArcanistDeprecationXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistDeprecationXHPASTLinterRuleTestCase.php', 'ArcanistDiffByteSizeException' => 'exception/ArcanistDiffByteSizeException.php', @@ -637,10 +201,12 @@ 'ArcanistExtractUseXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistExtractUseXHPASTLinterRule.php', 'ArcanistExtractUseXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistExtractUseXHPASTLinterRuleTestCase.php', 'ArcanistFeatureWorkflow' => 'workflow/ArcanistFeatureWorkflow.php', + 'ArcanistFileConfigurationSource' => 'config/source/ArcanistFileConfigurationSource.php', 'ArcanistFileDataRef' => 'upload/ArcanistFileDataRef.php', 'ArcanistFileUploader' => 'upload/ArcanistFileUploader.php', 'ArcanistFilenameLinter' => 'lint/linter/ArcanistFilenameLinter.php', 'ArcanistFilenameLinterTestCase' => 'lint/linter/__tests__/ArcanistFilenameLinterTestCase.php', + 'ArcanistFilesystemConfigurationSource' => 'config/source/ArcanistFilesystemConfigurationSource.php', 'ArcanistFlagWorkflow' => 'workflow/ArcanistFlagWorkflow.php', 'ArcanistFlake8Linter' => 'lint/linter/ArcanistFlake8Linter.php', 'ArcanistFlake8LinterTestCase' => 'lint/linter/__tests__/ArcanistFlake8LinterTestCase.php', @@ -658,6 +224,7 @@ 'ArcanistGitLandEngine' => 'land/ArcanistGitLandEngine.php', 'ArcanistGitRevisionHardpointLoader' => 'loader/ArcanistGitRevisionHardpointLoader.php', 'ArcanistGitUpstreamPath' => 'repository/api/ArcanistGitUpstreamPath.php', + 'ArcanistGitWorkingCopy' => 'workingcopy/ArcanistGitWorkingCopy.php', 'ArcanistGlobalVariableXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistGlobalVariableXHPASTLinterRule.php', 'ArcanistGlobalVariableXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistGlobalVariableXHPASTLinterRuleTestCase.php', 'ArcanistGoLintLinter' => 'lint/linter/ArcanistGoLintLinter.php', @@ -736,6 +303,7 @@ 'ArcanistListAssignmentXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistListAssignmentXHPASTLinterRule.php', 'ArcanistListAssignmentXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistListAssignmentXHPASTLinterRuleTestCase.php', 'ArcanistListWorkflow' => 'workflow/ArcanistListWorkflow.php', + 'ArcanistLocalConfigurationSource' => 'config/source/ArcanistLocalConfigurationSource.php', 'ArcanistLogicalOperatorsXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistLogicalOperatorsXHPASTLinterRule.php', 'ArcanistLogicalOperatorsXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistLogicalOperatorsXHPASTLinterRuleTestCase.php', 'ArcanistLowercaseFunctionsXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistLowercaseFunctionsXHPASTLinterRule.php', @@ -745,6 +313,7 @@ 'ArcanistMercurialHardpointLoader' => 'loader/ArcanistMercurialHardpointLoader.php', 'ArcanistMercurialParser' => 'repository/parser/ArcanistMercurialParser.php', 'ArcanistMercurialParserTestCase' => 'repository/parser/__tests__/ArcanistMercurialParserTestCase.php', + 'ArcanistMercurialWorkingCopy' => 'workingcopy/ArcanistMercurialWorkingCopy.php', 'ArcanistMercurialWorkingCopyCommitHardpointLoader' => 'loader/ArcanistMercurialWorkingCopyCommitHardpointLoader.php', 'ArcanistMergeConflictLinter' => 'lint/linter/ArcanistMergeConflictLinter.php', 'ArcanistMergeConflictLinterTestCase' => 'lint/linter/__tests__/ArcanistMergeConflictLinterTestCase.php', @@ -805,6 +374,7 @@ 'ArcanistPlusOperatorOnStringsXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistPlusOperatorOnStringsXHPASTLinterRuleTestCase.php', 'ArcanistPregQuoteMisuseXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistPregQuoteMisuseXHPASTLinterRule.php', 'ArcanistPregQuoteMisuseXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistPregQuoteMisuseXHPASTLinterRuleTestCase.php', + 'ArcanistProjectConfigurationSource' => 'config/source/ArcanistProjectConfigurationSource.php', 'ArcanistPublicPropertyXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistPublicPropertyXHPASTLinterRule.php', 'ArcanistPublicPropertyXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistPublicPropertyXHPASTLinterRuleTestCase.php', 'ArcanistPuppetLintLinter' => 'lint/linter/ArcanistPuppetLintLinter.php', @@ -834,6 +404,7 @@ 'ArcanistRuboCopLinterTestCase' => 'lint/linter/__tests__/ArcanistRuboCopLinterTestCase.php', 'ArcanistRubyLinter' => 'lint/linter/ArcanistRubyLinter.php', 'ArcanistRubyLinterTestCase' => 'lint/linter/__tests__/ArcanistRubyLinterTestCase.php', + 'ArcanistRuntimeConfigurationSource' => 'config/source/ArcanistRuntimeConfigurationSource.php', 'ArcanistScriptAndRegexLinter' => 'lint/linter/ArcanistScriptAndRegexLinter.php', 'ArcanistSelfClassReferenceXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistSelfClassReferenceXHPASTLinterRule.php', 'ArcanistSelfClassReferenceXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistSelfClassReferenceXHPASTLinterRuleTestCase.php', @@ -855,8 +426,10 @@ 'ArcanistStaticThisXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistStaticThisXHPASTLinterRuleTestCase.php', 'ArcanistStopWorkflow' => 'workflow/ArcanistStopWorkflow.php', 'ArcanistSubversionAPI' => 'repository/api/ArcanistSubversionAPI.php', + 'ArcanistSubversionWorkingCopy' => 'workingcopy/ArcanistSubversionWorkingCopy.php', 'ArcanistSummaryLintRenderer' => 'lint/renderer/ArcanistSummaryLintRenderer.php', 'ArcanistSyntaxErrorXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistSyntaxErrorXHPASTLinterRule.php', + 'ArcanistSystemConfigurationSource' => 'config/source/ArcanistSystemConfigurationSource.php', 'ArcanistTasksWorkflow' => 'workflow/ArcanistTasksWorkflow.php', 'ArcanistTautologicalExpressionXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistTautologicalExpressionXHPASTLinterRule.php', 'ArcanistTautologicalExpressionXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistTautologicalExpressionXHPASTLinterRuleTestCase.php', @@ -905,6 +478,7 @@ 'ArcanistUselessOverridingMethodXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistUselessOverridingMethodXHPASTLinterRule.php', 'ArcanistUselessOverridingMethodXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistUselessOverridingMethodXHPASTLinterRuleTestCase.php', 'ArcanistUserAbortException' => 'exception/usage/ArcanistUserAbortException.php', + 'ArcanistUserConfigurationSource' => 'config/source/ArcanistUserConfigurationSource.php', 'ArcanistVariableReferenceSpacingXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistVariableReferenceSpacingXHPASTLinterRule.php', 'ArcanistVariableReferenceSpacingXHPASTLinterRuleTestCase' => 'lint/linter/xhpast/rules/__tests__/ArcanistVariableReferenceSpacingXHPASTLinterRuleTestCase.php', 'ArcanistVariableVariableXHPASTLinterRule' => 'lint/linter/xhpast/rules/ArcanistVariableVariableXHPASTLinterRule.php', @@ -913,7 +487,8 @@ 'ArcanistWeldWorkflow' => 'workflow/ArcanistWeldWorkflow.php', 'ArcanistWhichWorkflow' => 'workflow/ArcanistWhichWorkflow.php', 'ArcanistWorkflow' => 'toolset/ArcanistWorkflow.php', - 'ArcanistWorkingCopyIdentity' => 'workingcopyidentity/ArcanistWorkingCopyIdentity.php', + 'ArcanistWorkingCopy' => 'workingcopy/ArcanistWorkingCopy.php', + 'ArcanistWorkingCopyConfigurationSource' => 'config/source/ArcanistWorkingCopyConfigurationSource.php', 'ArcanistWorkingCopyStateRef' => 'ref/ArcanistWorkingCopyStateRef.php', 'ArcanistXHPASTLintNamingHook' => 'lint/linter/xhpast/ArcanistXHPASTLintNamingHook.php', 'ArcanistXHPASTLintNamingHookTestCase' => 'lint/linter/xhpast/__tests__/ArcanistXHPASTLintNamingHookTestCase.php', @@ -925,20 +500,464 @@ 'ArcanistXMLLinter' => 'lint/linter/ArcanistXMLLinter.php', 'ArcanistXMLLinterTestCase' => 'lint/linter/__tests__/ArcanistXMLLinterTestCase.php', 'ArcanistXUnitTestResultParser' => 'unit/parser/ArcanistXUnitTestResultParser.php', + 'BaseHTTPFuture' => 'future/http/BaseHTTPFuture.php', 'CSharpToolsTestEngine' => 'unit/engine/CSharpToolsTestEngine.php', + 'CaseInsensitiveArray' => 'utils/CaseInsensitiveArray.php', + 'CaseInsensitiveArrayTestCase' => 'utils/__tests__/CaseInsensitiveArrayTestCase.php', + 'CommandException' => 'future/exec/CommandException.php', + 'ConduitClient' => 'conduit/ConduitClient.php', + 'ConduitClientException' => 'conduit/ConduitClientException.php', + 'ConduitClientTestCase' => 'conduit/__tests__/ConduitClientTestCase.php', + 'ConduitFuture' => 'conduit/ConduitFuture.php', + 'ExecFuture' => 'future/exec/ExecFuture.php', + 'ExecFutureTestCase' => 'future/exec/__tests__/ExecFutureTestCase.php', + 'ExecPassthruTestCase' => 'future/exec/__tests__/ExecPassthruTestCase.php', + 'FileFinder' => 'filesystem/FileFinder.php', + 'FileFinderTestCase' => 'filesystem/__tests__/FileFinderTestCase.php', + 'FileList' => 'filesystem/FileList.php', + 'Filesystem' => 'filesystem/Filesystem.php', + 'FilesystemException' => 'filesystem/FilesystemException.php', + 'FilesystemTestCase' => 'filesystem/__tests__/FilesystemTestCase.php', + 'Future' => 'future/Future.php', + 'FutureIterator' => 'future/FutureIterator.php', + 'FutureIteratorTestCase' => 'future/__tests__/FutureIteratorTestCase.php', + 'FutureProxy' => 'future/FutureProxy.php', + 'HTTPFuture' => 'future/http/HTTPFuture.php', + 'HTTPFutureCURLResponseStatus' => 'future/http/status/HTTPFutureCURLResponseStatus.php', + 'HTTPFutureCertificateResponseStatus' => 'future/http/status/HTTPFutureCertificateResponseStatus.php', + 'HTTPFutureHTTPResponseStatus' => 'future/http/status/HTTPFutureHTTPResponseStatus.php', + 'HTTPFutureParseResponseStatus' => 'future/http/status/HTTPFutureParseResponseStatus.php', + 'HTTPFutureResponseStatus' => 'future/http/status/HTTPFutureResponseStatus.php', + 'HTTPFutureTransportResponseStatus' => 'future/http/status/HTTPFutureTransportResponseStatus.php', + 'HTTPSFuture' => 'future/http/HTTPSFuture.php', + 'ImmediateFuture' => 'future/ImmediateFuture.php', + 'LibphutilUSEnglishTranslation' => 'internationalization/translation/LibphutilUSEnglishTranslation.php', + 'LinesOfALarge' => 'filesystem/linesofalarge/LinesOfALarge.php', + 'LinesOfALargeExecFuture' => 'filesystem/linesofalarge/LinesOfALargeExecFuture.php', + 'LinesOfALargeExecFutureTestCase' => 'filesystem/linesofalarge/__tests__/LinesOfALargeExecFutureTestCase.php', + 'LinesOfALargeFile' => 'filesystem/linesofalarge/LinesOfALargeFile.php', + 'LinesOfALargeFileTestCase' => 'filesystem/linesofalarge/__tests__/LinesOfALargeFileTestCase.php', + 'MFilterTestHelper' => 'utils/__tests__/MFilterTestHelper.php', 'NoseTestEngine' => 'unit/engine/NoseTestEngine.php', + 'PHPASTParserTestCase' => 'parser/xhpast/__tests__/PHPASTParserTestCase.php', + 'PhageAction' => 'phage/action/PhageAction.php', + 'PhageAgentAction' => 'phage/action/PhageAgentAction.php', + 'PhageAgentBootloader' => 'phage/bootloader/PhageAgentBootloader.php', + 'PhageAgentTestCase' => 'phage/__tests__/PhageAgentTestCase.php', + 'PhageExecuteAction' => 'phage/action/PhageExecuteAction.php', + 'PhageLocalAction' => 'phage/action/PhageLocalAction.php', + 'PhagePHPAgent' => 'phage/agent/PhagePHPAgent.php', + 'PhagePHPAgentBootloader' => 'phage/bootloader/PhagePHPAgentBootloader.php', + 'PhagePlanAction' => 'phage/action/PhagePlanAction.php', 'PhageWorkflow' => 'phage/workflow/PhageWorkflow.php', + 'Phobject' => 'object/Phobject.php', + 'PhobjectTestCase' => 'object/__tests__/PhobjectTestCase.php', 'PhpunitTestEngine' => 'unit/engine/PhpunitTestEngine.php', 'PhpunitTestEngineTestCase' => 'unit/engine/__tests__/PhpunitTestEngineTestCase.php', + 'PhutilAPCKeyValueCache' => 'cache/PhutilAPCKeyValueCache.php', + 'PhutilAWSCloudFormationFuture' => 'future/aws/PhutilAWSCloudFormationFuture.php', + 'PhutilAWSCloudWatchFuture' => 'future/aws/PhutilAWSCloudWatchFuture.php', + 'PhutilAWSEC2Future' => 'future/aws/PhutilAWSEC2Future.php', + 'PhutilAWSException' => 'future/aws/PhutilAWSException.php', + 'PhutilAWSFuture' => 'future/aws/PhutilAWSFuture.php', + 'PhutilAWSManagementWorkflow' => 'future/aws/management/PhutilAWSManagementWorkflow.php', + 'PhutilAWSS3DeleteManagementWorkflow' => 'future/aws/management/PhutilAWSS3DeleteManagementWorkflow.php', + 'PhutilAWSS3Future' => 'future/aws/PhutilAWSS3Future.php', + 'PhutilAWSS3GetManagementWorkflow' => 'future/aws/management/PhutilAWSS3GetManagementWorkflow.php', + 'PhutilAWSS3ManagementWorkflow' => 'future/aws/management/PhutilAWSS3ManagementWorkflow.php', + 'PhutilAWSS3PutManagementWorkflow' => 'future/aws/management/PhutilAWSS3PutManagementWorkflow.php', + 'PhutilAWSv4Signature' => 'future/aws/PhutilAWSv4Signature.php', + 'PhutilAWSv4SignatureTestCase' => 'future/aws/__tests__/PhutilAWSv4SignatureTestCase.php', + 'PhutilAggregateException' => 'error/PhutilAggregateException.php', + 'PhutilAllCapsEnglishLocale' => 'internationalization/locales/PhutilAllCapsEnglishLocale.php', + 'PhutilAmazonAuthAdapter' => 'auth/PhutilAmazonAuthAdapter.php', + 'PhutilArgumentParser' => 'parser/argument/PhutilArgumentParser.php', + 'PhutilArgumentParserException' => 'parser/argument/exception/PhutilArgumentParserException.php', + 'PhutilArgumentParserTestCase' => 'parser/argument/__tests__/PhutilArgumentParserTestCase.php', + 'PhutilArgumentSpecification' => 'parser/argument/PhutilArgumentSpecification.php', + 'PhutilArgumentSpecificationException' => 'parser/argument/exception/PhutilArgumentSpecificationException.php', + 'PhutilArgumentSpecificationTestCase' => 'parser/argument/__tests__/PhutilArgumentSpecificationTestCase.php', + 'PhutilArgumentSpellingCorrector' => 'parser/argument/PhutilArgumentSpellingCorrector.php', + 'PhutilArgumentSpellingCorrectorTestCase' => 'parser/argument/__tests__/PhutilArgumentSpellingCorrectorTestCase.php', + 'PhutilArgumentUsageException' => 'parser/argument/exception/PhutilArgumentUsageException.php', + 'PhutilArgumentWorkflow' => 'parser/argument/workflow/PhutilArgumentWorkflow.php', + 'PhutilArray' => 'utils/PhutilArray.php', + 'PhutilArrayTestCase' => 'utils/__tests__/PhutilArrayTestCase.php', + 'PhutilArrayWithDefaultValue' => 'utils/PhutilArrayWithDefaultValue.php', + 'PhutilAsanaAuthAdapter' => 'auth/PhutilAsanaAuthAdapter.php', + 'PhutilAsanaFuture' => 'future/asana/PhutilAsanaFuture.php', + 'PhutilAuthAdapter' => 'auth/PhutilAuthAdapter.php', + 'PhutilAuthConfigurationException' => 'auth/exception/PhutilAuthConfigurationException.php', + 'PhutilAuthCredentialException' => 'auth/exception/PhutilAuthCredentialException.php', + 'PhutilAuthException' => 'auth/exception/PhutilAuthException.php', + 'PhutilAuthUserAbortedException' => 'auth/exception/PhutilAuthUserAbortedException.php', + 'PhutilBacktraceSignalHandler' => 'future/exec/PhutilBacktraceSignalHandler.php', + 'PhutilBallOfPHP' => 'phage/util/PhutilBallOfPHP.php', + 'PhutilBinaryAnalyzer' => 'filesystem/binary/PhutilBinaryAnalyzer.php', + 'PhutilBinaryAnalyzerTestCase' => 'filesystem/binary/__tests__/PhutilBinaryAnalyzerTestCase.php', + 'PhutilBitbucketAuthAdapter' => 'auth/PhutilBitbucketAuthAdapter.php', + 'PhutilBootloader' => 'moduleutils/PhutilBootloader.php', + 'PhutilBootloaderException' => 'moduleutils/PhutilBootloaderException.php', + 'PhutilBritishEnglishLocale' => 'internationalization/locales/PhutilBritishEnglishLocale.php', + 'PhutilBufferedIterator' => 'utils/PhutilBufferedIterator.php', + 'PhutilBufferedIteratorTestCase' => 'utils/__tests__/PhutilBufferedIteratorTestCase.php', + 'PhutilBugtraqParser' => 'parser/PhutilBugtraqParser.php', + 'PhutilBugtraqParserTestCase' => 'parser/__tests__/PhutilBugtraqParserTestCase.php', + 'PhutilCIDRBlock' => 'ip/PhutilCIDRBlock.php', + 'PhutilCIDRList' => 'ip/PhutilCIDRList.php', + 'PhutilCLikeCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilCLikeCodeSnippetContextFreeGrammar.php', + 'PhutilCalendarAbsoluteDateTime' => 'parser/calendar/data/PhutilCalendarAbsoluteDateTime.php', + 'PhutilCalendarContainerNode' => 'parser/calendar/data/PhutilCalendarContainerNode.php', + 'PhutilCalendarDateTime' => 'parser/calendar/data/PhutilCalendarDateTime.php', + 'PhutilCalendarDateTimeTestCase' => 'parser/calendar/data/__tests__/PhutilCalendarDateTimeTestCase.php', + 'PhutilCalendarDocumentNode' => 'parser/calendar/data/PhutilCalendarDocumentNode.php', + 'PhutilCalendarDuration' => 'parser/calendar/data/PhutilCalendarDuration.php', + 'PhutilCalendarEventNode' => 'parser/calendar/data/PhutilCalendarEventNode.php', + 'PhutilCalendarNode' => 'parser/calendar/data/PhutilCalendarNode.php', + 'PhutilCalendarProxyDateTime' => 'parser/calendar/data/PhutilCalendarProxyDateTime.php', + 'PhutilCalendarRawNode' => 'parser/calendar/data/PhutilCalendarRawNode.php', + 'PhutilCalendarRecurrenceList' => 'parser/calendar/data/PhutilCalendarRecurrenceList.php', + 'PhutilCalendarRecurrenceRule' => 'parser/calendar/data/PhutilCalendarRecurrenceRule.php', + 'PhutilCalendarRecurrenceRuleTestCase' => 'parser/calendar/data/__tests__/PhutilCalendarRecurrenceRuleTestCase.php', + 'PhutilCalendarRecurrenceSet' => 'parser/calendar/data/PhutilCalendarRecurrenceSet.php', + 'PhutilCalendarRecurrenceSource' => 'parser/calendar/data/PhutilCalendarRecurrenceSource.php', + 'PhutilCalendarRecurrenceTestCase' => 'parser/calendar/data/__tests__/PhutilCalendarRecurrenceTestCase.php', + 'PhutilCalendarRelativeDateTime' => 'parser/calendar/data/PhutilCalendarRelativeDateTime.php', + 'PhutilCalendarRootNode' => 'parser/calendar/data/PhutilCalendarRootNode.php', + 'PhutilCalendarUserNode' => 'parser/calendar/data/PhutilCalendarUserNode.php', + 'PhutilCallbackFilterIterator' => 'utils/PhutilCallbackFilterIterator.php', + 'PhutilCallbackSignalHandler' => 'future/exec/PhutilCallbackSignalHandler.php', + 'PhutilChannel' => 'channel/PhutilChannel.php', + 'PhutilChannelChannel' => 'channel/PhutilChannelChannel.php', + 'PhutilChannelTestCase' => 'channel/__tests__/PhutilChannelTestCase.php', + 'PhutilChunkedIterator' => 'utils/PhutilChunkedIterator.php', + 'PhutilChunkedIteratorTestCase' => 'utils/__tests__/PhutilChunkedIteratorTestCase.php', + 'PhutilClassMapQuery' => 'symbols/PhutilClassMapQuery.php', + 'PhutilCloudWatchMetric' => 'future/aws/PhutilCloudWatchMetric.php', + 'PhutilCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilCodeSnippetContextFreeGrammar.php', + 'PhutilCommandString' => 'xsprintf/PhutilCommandString.php', + 'PhutilConsole' => 'console/PhutilConsole.php', + 'PhutilConsoleBlock' => 'console/view/PhutilConsoleBlock.php', + 'PhutilConsoleError' => 'console/view/PhutilConsoleError.php', + 'PhutilConsoleFormatter' => 'console/PhutilConsoleFormatter.php', + 'PhutilConsoleInfo' => 'console/view/PhutilConsoleInfo.php', + 'PhutilConsoleList' => 'console/view/PhutilConsoleList.php', + 'PhutilConsoleLogLine' => 'console/view/PhutilConsoleLogLine.php', + 'PhutilConsoleMessage' => 'console/PhutilConsoleMessage.php', + 'PhutilConsoleMetrics' => 'console/PhutilConsoleMetrics.php', + 'PhutilConsoleMetricsSignalHandler' => 'future/exec/PhutilConsoleMetricsSignalHandler.php', + 'PhutilConsoleProgressBar' => 'console/PhutilConsoleProgressBar.php', + 'PhutilConsoleServer' => 'console/PhutilConsoleServer.php', + 'PhutilConsoleServerChannel' => 'console/PhutilConsoleServerChannel.php', + 'PhutilConsoleSkip' => 'console/view/PhutilConsoleSkip.php', + 'PhutilConsoleStdinNotInteractiveException' => 'console/PhutilConsoleStdinNotInteractiveException.php', + 'PhutilConsoleSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilConsoleSyntaxHighlighter.php', + 'PhutilConsoleTable' => 'console/view/PhutilConsoleTable.php', + 'PhutilConsoleView' => 'console/view/PhutilConsoleView.php', + 'PhutilConsoleWarning' => 'console/view/PhutilConsoleWarning.php', + 'PhutilConsoleWrapTestCase' => 'console/__tests__/PhutilConsoleWrapTestCase.php', + 'PhutilContextFreeGrammar' => 'grammar/PhutilContextFreeGrammar.php', + 'PhutilCowsay' => 'utils/PhutilCowsay.php', + 'PhutilCowsayTestCase' => 'utils/__tests__/PhutilCowsayTestCase.php', + 'PhutilCsprintfTestCase' => 'xsprintf/__tests__/PhutilCsprintfTestCase.php', + 'PhutilCzechLocale' => 'internationalization/locales/PhutilCzechLocale.php', + 'PhutilDaemon' => 'daemon/PhutilDaemon.php', + 'PhutilDaemonHandle' => 'daemon/PhutilDaemonHandle.php', + 'PhutilDaemonOverseer' => 'daemon/PhutilDaemonOverseer.php', + 'PhutilDaemonOverseerModule' => 'daemon/PhutilDaemonOverseerModule.php', + 'PhutilDaemonPool' => 'daemon/PhutilDaemonPool.php', + 'PhutilDefaultSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilDefaultSyntaxHighlighter.php', + 'PhutilDefaultSyntaxHighlighterEngine' => 'markup/syntax/engine/PhutilDefaultSyntaxHighlighterEngine.php', + 'PhutilDefaultSyntaxHighlighterEnginePygmentsFuture' => 'markup/syntax/highlighter/pygments/PhutilDefaultSyntaxHighlighterEnginePygmentsFuture.php', + 'PhutilDefaultSyntaxHighlighterEngineTestCase' => 'markup/syntax/engine/__tests__/PhutilDefaultSyntaxHighlighterEngineTestCase.php', + 'PhutilDeferredLog' => 'filesystem/PhutilDeferredLog.php', + 'PhutilDeferredLogTestCase' => 'filesystem/__tests__/PhutilDeferredLogTestCase.php', + 'PhutilDiffBinaryAnalyzer' => 'filesystem/binary/PhutilDiffBinaryAnalyzer.php', + 'PhutilDirectedScalarGraph' => 'utils/PhutilDirectedScalarGraph.php', + 'PhutilDirectoryFixture' => 'filesystem/PhutilDirectoryFixture.php', + 'PhutilDirectoryKeyValueCache' => 'cache/PhutilDirectoryKeyValueCache.php', + 'PhutilDisqusAuthAdapter' => 'auth/PhutilDisqusAuthAdapter.php', + 'PhutilDivinerSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilDivinerSyntaxHighlighter.php', + 'PhutilDocblockParser' => 'parser/PhutilDocblockParser.php', + 'PhutilDocblockParserTestCase' => 'parser/__tests__/PhutilDocblockParserTestCase.php', + 'PhutilEditDistanceMatrix' => 'utils/PhutilEditDistanceMatrix.php', + 'PhutilEditDistanceMatrixTestCase' => 'utils/__tests__/PhutilEditDistanceMatrixTestCase.php', + 'PhutilEditorConfig' => 'parser/PhutilEditorConfig.php', + 'PhutilEditorConfigTestCase' => 'parser/__tests__/PhutilEditorConfigTestCase.php', + 'PhutilEmailAddress' => 'parser/PhutilEmailAddress.php', + 'PhutilEmailAddressTestCase' => 'parser/__tests__/PhutilEmailAddressTestCase.php', + 'PhutilEmojiLocale' => 'internationalization/locales/PhutilEmojiLocale.php', + 'PhutilEmptyAuthAdapter' => 'auth/PhutilEmptyAuthAdapter.php', + 'PhutilEnglishCanadaLocale' => 'internationalization/locales/PhutilEnglishCanadaLocale.php', + 'PhutilErrorHandler' => 'error/PhutilErrorHandler.php', + 'PhutilErrorHandlerTestCase' => 'error/__tests__/PhutilErrorHandlerTestCase.php', + 'PhutilErrorTrap' => 'error/PhutilErrorTrap.php', + 'PhutilEvent' => 'events/PhutilEvent.php', + 'PhutilEventConstants' => 'events/constant/PhutilEventConstants.php', + 'PhutilEventEngine' => 'events/PhutilEventEngine.php', + 'PhutilEventListener' => 'events/PhutilEventListener.php', + 'PhutilEventType' => 'events/constant/PhutilEventType.php', + 'PhutilExampleBufferedIterator' => 'utils/PhutilExampleBufferedIterator.php', + 'PhutilExcessiveServiceCallsDaemon' => 'daemon/torture/PhutilExcessiveServiceCallsDaemon.php', + 'PhutilExecChannel' => 'channel/PhutilExecChannel.php', + 'PhutilExecPassthru' => 'future/exec/PhutilExecPassthru.php', + 'PhutilExecutableFuture' => 'future/exec/PhutilExecutableFuture.php', + 'PhutilExecutionEnvironment' => 'utils/PhutilExecutionEnvironment.php', + 'PhutilExtensionsTestCase' => 'moduleutils/__tests__/PhutilExtensionsTestCase.php', + 'PhutilFacebookAuthAdapter' => 'auth/PhutilFacebookAuthAdapter.php', + 'PhutilFatalDaemon' => 'daemon/torture/PhutilFatalDaemon.php', + 'PhutilFileLock' => 'filesystem/PhutilFileLock.php', + 'PhutilFileLockTestCase' => 'filesystem/__tests__/PhutilFileLockTestCase.php', + 'PhutilFileTree' => 'filesystem/PhutilFileTree.php', + 'PhutilFrenchLocale' => 'internationalization/locales/PhutilFrenchLocale.php', + 'PhutilGermanLocale' => 'internationalization/locales/PhutilGermanLocale.php', + 'PhutilGitBinaryAnalyzer' => 'filesystem/binary/PhutilGitBinaryAnalyzer.php', + 'PhutilGitHubAuthAdapter' => 'auth/PhutilGitHubAuthAdapter.php', + 'PhutilGitHubFuture' => 'future/github/PhutilGitHubFuture.php', + 'PhutilGitHubResponse' => 'future/github/PhutilGitHubResponse.php', + 'PhutilGitURI' => 'parser/PhutilGitURI.php', + 'PhutilGitURITestCase' => 'parser/__tests__/PhutilGitURITestCase.php', + 'PhutilGoogleAuthAdapter' => 'auth/PhutilGoogleAuthAdapter.php', + 'PhutilHTTPEngineExtension' => 'future/http/PhutilHTTPEngineExtension.php', + 'PhutilHTTPResponse' => 'parser/http/PhutilHTTPResponse.php', + 'PhutilHTTPResponseParser' => 'parser/http/PhutilHTTPResponseParser.php', + 'PhutilHTTPResponseParserTestCase' => 'parser/http/__tests__/PhutilHTTPResponseParserTestCase.php', + 'PhutilHangForeverDaemon' => 'daemon/torture/PhutilHangForeverDaemon.php', + 'PhutilHashingIterator' => 'utils/PhutilHashingIterator.php', + 'PhutilHashingIteratorTestCase' => 'utils/__tests__/PhutilHashingIteratorTestCase.php', + 'PhutilHelpArgumentWorkflow' => 'parser/argument/workflow/PhutilHelpArgumentWorkflow.php', + 'PhutilHgsprintfTestCase' => 'xsprintf/__tests__/PhutilHgsprintfTestCase.php', + 'PhutilHighIntensityIntervalDaemon' => 'daemon/torture/PhutilHighIntensityIntervalDaemon.php', + 'PhutilICSParser' => 'parser/calendar/ics/PhutilICSParser.php', + 'PhutilICSParserException' => 'parser/calendar/ics/PhutilICSParserException.php', + 'PhutilICSParserTestCase' => 'parser/calendar/ics/__tests__/PhutilICSParserTestCase.php', + 'PhutilICSWriter' => 'parser/calendar/ics/PhutilICSWriter.php', + 'PhutilICSWriterTestCase' => 'parser/calendar/ics/__tests__/PhutilICSWriterTestCase.php', + 'PhutilINIParserException' => 'parser/exception/PhutilINIParserException.php', + 'PhutilIPAddress' => 'ip/PhutilIPAddress.php', + 'PhutilIPAddressTestCase' => 'ip/__tests__/PhutilIPAddressTestCase.php', + 'PhutilIPv4Address' => 'ip/PhutilIPv4Address.php', + 'PhutilIPv6Address' => 'ip/PhutilIPv6Address.php', + 'PhutilInRequestKeyValueCache' => 'cache/PhutilInRequestKeyValueCache.php', + 'PhutilInteractiveEditor' => 'console/PhutilInteractiveEditor.php', + 'PhutilInvalidRuleParserGeneratorException' => 'parser/generator/exception/PhutilInvalidRuleParserGeneratorException.php', + 'PhutilInvalidStateException' => 'exception/PhutilInvalidStateException.php', + 'PhutilInvalidStateExceptionTestCase' => 'exception/__tests__/PhutilInvalidStateExceptionTestCase.php', + 'PhutilInvisibleSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilInvisibleSyntaxHighlighter.php', + 'PhutilIrreducibleRuleParserGeneratorException' => 'parser/generator/exception/PhutilIrreducibleRuleParserGeneratorException.php', + 'PhutilJIRAAuthAdapter' => 'auth/PhutilJIRAAuthAdapter.php', + 'PhutilJSON' => 'parser/PhutilJSON.php', + 'PhutilJSONFragmentLexer' => 'lexer/PhutilJSONFragmentLexer.php', + 'PhutilJSONFragmentLexerHighlighterTestCase' => 'markup/syntax/highlighter/__tests__/PhutilJSONFragmentLexerHighlighterTestCase.php', + 'PhutilJSONParser' => 'parser/PhutilJSONParser.php', + 'PhutilJSONParserException' => 'parser/exception/PhutilJSONParserException.php', + 'PhutilJSONParserTestCase' => 'parser/__tests__/PhutilJSONParserTestCase.php', + 'PhutilJSONProtocolChannel' => 'channel/PhutilJSONProtocolChannel.php', + 'PhutilJSONProtocolChannelTestCase' => 'channel/__tests__/PhutilJSONProtocolChannelTestCase.php', + 'PhutilJSONTestCase' => 'parser/__tests__/PhutilJSONTestCase.php', + 'PhutilJavaCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilJavaCodeSnippetContextFreeGrammar.php', + 'PhutilJavaFragmentLexer' => 'lexer/PhutilJavaFragmentLexer.php', + 'PhutilKeyValueCache' => 'cache/PhutilKeyValueCache.php', + 'PhutilKeyValueCacheNamespace' => 'cache/PhutilKeyValueCacheNamespace.php', + 'PhutilKeyValueCacheProfiler' => 'cache/PhutilKeyValueCacheProfiler.php', + 'PhutilKeyValueCacheProxy' => 'cache/PhutilKeyValueCacheProxy.php', + 'PhutilKeyValueCacheStack' => 'cache/PhutilKeyValueCacheStack.php', + 'PhutilKeyValueCacheTestCase' => 'cache/__tests__/PhutilKeyValueCacheTestCase.php', + 'PhutilKoreanLocale' => 'internationalization/locales/PhutilKoreanLocale.php', + 'PhutilLDAPAuthAdapter' => 'auth/PhutilLDAPAuthAdapter.php', + 'PhutilLanguageGuesser' => 'parser/PhutilLanguageGuesser.php', + 'PhutilLanguageGuesserTestCase' => 'parser/__tests__/PhutilLanguageGuesserTestCase.php', + 'PhutilLexer' => 'lexer/PhutilLexer.php', + 'PhutilLexerSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilLexerSyntaxHighlighter.php', + 'PhutilLibraryConflictException' => 'moduleutils/PhutilLibraryConflictException.php', + 'PhutilLibraryMapBuilder' => 'moduleutils/PhutilLibraryMapBuilder.php', + 'PhutilLibraryTestCase' => '__tests__/PhutilLibraryTestCase.php', + 'PhutilLipsumContextFreeGrammar' => 'grammar/PhutilLipsumContextFreeGrammar.php', + 'PhutilLocale' => 'internationalization/PhutilLocale.php', + 'PhutilLocaleTestCase' => 'internationalization/__tests__/PhutilLocaleTestCase.php', + 'PhutilLock' => 'filesystem/PhutilLock.php', + 'PhutilLockException' => 'filesystem/PhutilLockException.php', + 'PhutilLogFileChannel' => 'channel/PhutilLogFileChannel.php', + 'PhutilLunarPhase' => 'utils/PhutilLunarPhase.php', + 'PhutilLunarPhaseTestCase' => 'utils/__tests__/PhutilLunarPhaseTestCase.php', + 'PhutilMarkupEngine' => 'markup/PhutilMarkupEngine.php', + 'PhutilMarkupTestCase' => 'markup/__tests__/PhutilMarkupTestCase.php', + 'PhutilMemcacheKeyValueCache' => 'cache/PhutilMemcacheKeyValueCache.php', + 'PhutilMercurialBinaryAnalyzer' => 'filesystem/binary/PhutilMercurialBinaryAnalyzer.php', + 'PhutilMethodNotImplementedException' => 'error/PhutilMethodNotImplementedException.php', + 'PhutilMetricsChannel' => 'channel/PhutilMetricsChannel.php', + 'PhutilMissingSymbolException' => 'symbols/exception/PhutilMissingSymbolException.php', + 'PhutilModuleUtilsTestCase' => 'moduleutils/__tests__/PhutilModuleUtilsTestCase.php', + 'PhutilNiceDaemon' => 'daemon/torture/PhutilNiceDaemon.php', + 'PhutilNumber' => 'internationalization/PhutilNumber.php', + 'PhutilOAuth1AuthAdapter' => 'auth/PhutilOAuth1AuthAdapter.php', + 'PhutilOAuth1Future' => 'future/oauth/PhutilOAuth1Future.php', + 'PhutilOAuth1FutureTestCase' => 'future/oauth/__tests__/PhutilOAuth1FutureTestCase.php', + 'PhutilOAuthAuthAdapter' => 'auth/PhutilOAuthAuthAdapter.php', + 'PhutilOnDiskKeyValueCache' => 'cache/PhutilOnDiskKeyValueCache.php', + 'PhutilOpaqueEnvelope' => 'error/PhutilOpaqueEnvelope.php', + 'PhutilOpaqueEnvelopeKey' => 'error/PhutilOpaqueEnvelopeKey.php', + 'PhutilOpaqueEnvelopeTestCase' => 'error/__tests__/PhutilOpaqueEnvelopeTestCase.php', + 'PhutilPHPCodeSnippetContextFreeGrammar' => 'grammar/code/PhutilPHPCodeSnippetContextFreeGrammar.php', + 'PhutilPHPFragmentLexer' => 'lexer/PhutilPHPFragmentLexer.php', + 'PhutilPHPFragmentLexerHighlighterTestCase' => 'markup/syntax/highlighter/__tests__/PhutilPHPFragmentLexerHighlighterTestCase.php', + 'PhutilPHPFragmentLexerTestCase' => 'lexer/__tests__/PhutilPHPFragmentLexerTestCase.php', + 'PhutilPHPObjectProtocolChannel' => 'channel/PhutilPHPObjectProtocolChannel.php', + 'PhutilPHPObjectProtocolChannelTestCase' => 'channel/__tests__/PhutilPHPObjectProtocolChannelTestCase.php', + 'PhutilParserGenerator' => 'parser/PhutilParserGenerator.php', + 'PhutilParserGeneratorException' => 'parser/generator/exception/PhutilParserGeneratorException.php', + 'PhutilParserGeneratorTestCase' => 'parser/__tests__/PhutilParserGeneratorTestCase.php', + 'PhutilPayPalAPIFuture' => 'future/paypal/PhutilPayPalAPIFuture.php', + 'PhutilPerson' => 'internationalization/PhutilPerson.php', + 'PhutilPersonTest' => 'internationalization/__tests__/PhutilPersonTest.php', + 'PhutilPhabricatorAuthAdapter' => 'auth/PhutilPhabricatorAuthAdapter.php', + 'PhutilPhtTestCase' => 'internationalization/__tests__/PhutilPhtTestCase.php', + 'PhutilPirateEnglishLocale' => 'internationalization/locales/PhutilPirateEnglishLocale.php', + 'PhutilPortugueseBrazilLocale' => 'internationalization/locales/PhutilPortugueseBrazilLocale.php', + 'PhutilPortuguesePortugalLocale' => 'internationalization/locales/PhutilPortuguesePortugalLocale.php', + 'PhutilPostmarkFuture' => 'future/postmark/PhutilPostmarkFuture.php', + 'PhutilPregsprintfTestCase' => 'xsprintf/__tests__/PhutilPregsprintfTestCase.php', + 'PhutilProcessGroupDaemon' => 'daemon/torture/PhutilProcessGroupDaemon.php', + 'PhutilProseDiff' => 'utils/PhutilProseDiff.php', + 'PhutilProseDiffTestCase' => 'utils/__tests__/PhutilProseDiffTestCase.php', + 'PhutilProseDifferenceEngine' => 'utils/PhutilProseDifferenceEngine.php', + 'PhutilProtocolChannel' => 'channel/PhutilProtocolChannel.php', + 'PhutilProxyException' => 'error/PhutilProxyException.php', + 'PhutilProxyIterator' => 'utils/PhutilProxyIterator.php', + 'PhutilPygmentizeBinaryAnalyzer' => 'filesystem/binary/PhutilPygmentizeBinaryAnalyzer.php', + 'PhutilPygmentizeParser' => 'parser/PhutilPygmentizeParser.php', + 'PhutilPygmentizeParserTestCase' => 'parser/__tests__/PhutilPygmentizeParserTestCase.php', + 'PhutilPygmentsSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilPygmentsSyntaxHighlighter.php', + 'PhutilPythonFragmentLexer' => 'lexer/PhutilPythonFragmentLexer.php', + 'PhutilQsprintfInterface' => 'xsprintf/PhutilQsprintfInterface.php', + 'PhutilQueryStringParser' => 'parser/PhutilQueryStringParser.php', + 'PhutilQueryStringParserTestCase' => 'parser/__tests__/PhutilQueryStringParserTestCase.php', + 'PhutilRainbowSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilRainbowSyntaxHighlighter.php', + 'PhutilRawEnglishLocale' => 'internationalization/locales/PhutilRawEnglishLocale.php', + 'PhutilReadableSerializer' => 'readableserializer/PhutilReadableSerializer.php', + 'PhutilReadableSerializerTestCase' => 'readableserializer/__tests__/PhutilReadableSerializerTestCase.php', + 'PhutilRealNameContextFreeGrammar' => 'grammar/PhutilRealNameContextFreeGrammar.php', + 'PhutilRemarkupBlockInterpreter' => 'markup/engine/remarkup/blockrule/PhutilRemarkupBlockInterpreter.php', + 'PhutilRemarkupBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupBlockRule.php', + 'PhutilRemarkupBlockStorage' => 'markup/engine/remarkup/PhutilRemarkupBlockStorage.php', + 'PhutilRemarkupBoldRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupBoldRule.php', + 'PhutilRemarkupCodeBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupCodeBlockRule.php', + 'PhutilRemarkupDefaultBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupDefaultBlockRule.php', + 'PhutilRemarkupDelRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupDelRule.php', + 'PhutilRemarkupDocumentLinkRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupDocumentLinkRule.php', + 'PhutilRemarkupEngine' => 'markup/engine/PhutilRemarkupEngine.php', + 'PhutilRemarkupEngineTestCase' => 'markup/engine/__tests__/PhutilRemarkupEngineTestCase.php', + 'PhutilRemarkupEscapeRemarkupRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupEscapeRemarkupRule.php', + 'PhutilRemarkupHeaderBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupHeaderBlockRule.php', + 'PhutilRemarkupHighlightRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupHighlightRule.php', + 'PhutilRemarkupHorizontalRuleBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupHorizontalRuleBlockRule.php', + 'PhutilRemarkupHyperlinkRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupHyperlinkRule.php', + 'PhutilRemarkupInlineBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupInlineBlockRule.php', + 'PhutilRemarkupInterpreterBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupInterpreterBlockRule.php', + 'PhutilRemarkupItalicRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupItalicRule.php', + 'PhutilRemarkupLinebreaksRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupLinebreaksRule.php', + 'PhutilRemarkupListBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupListBlockRule.php', + 'PhutilRemarkupLiteralBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupLiteralBlockRule.php', + 'PhutilRemarkupMonospaceRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupMonospaceRule.php', + 'PhutilRemarkupNoteBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupNoteBlockRule.php', + 'PhutilRemarkupQuotesBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupQuotesBlockRule.php', + 'PhutilRemarkupReplyBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupReplyBlockRule.php', + 'PhutilRemarkupRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupRule.php', + 'PhutilRemarkupSimpleTableBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupSimpleTableBlockRule.php', + 'PhutilRemarkupTableBlockRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupTableBlockRule.php', + 'PhutilRemarkupTestInterpreterRule' => 'markup/engine/remarkup/blockrule/PhutilRemarkupTestInterpreterRule.php', + 'PhutilRemarkupUnderlineRule' => 'markup/engine/remarkup/markuprule/PhutilRemarkupUnderlineRule.php', + 'PhutilRope' => 'utils/PhutilRope.php', + 'PhutilRopeTestCase' => 'utils/__tests__/PhutilRopeTestCase.php', + 'PhutilSafeHTML' => 'markup/PhutilSafeHTML.php', + 'PhutilSafeHTMLProducerInterface' => 'markup/PhutilSafeHTMLProducerInterface.php', + 'PhutilSafeHTMLTestCase' => 'markup/__tests__/PhutilSafeHTMLTestCase.php', + 'PhutilSaturateStdoutDaemon' => 'daemon/torture/PhutilSaturateStdoutDaemon.php', + 'PhutilSearchQueryCompiler' => 'search/PhutilSearchQueryCompiler.php', + 'PhutilSearchQueryCompilerSyntaxException' => 'search/PhutilSearchQueryCompilerSyntaxException.php', + 'PhutilSearchQueryCompilerTestCase' => 'search/__tests__/PhutilSearchQueryCompilerTestCase.php', + 'PhutilSearchQueryToken' => 'search/PhutilSearchQueryToken.php', + 'PhutilSearchStemmer' => 'search/PhutilSearchStemmer.php', + 'PhutilSearchStemmerTestCase' => 'search/__tests__/PhutilSearchStemmerTestCase.php', + 'PhutilServiceProfiler' => 'serviceprofiler/PhutilServiceProfiler.php', + 'PhutilShellLexer' => 'lexer/PhutilShellLexer.php', + 'PhutilShellLexerTestCase' => 'lexer/__tests__/PhutilShellLexerTestCase.php', + 'PhutilSignalHandler' => 'future/exec/PhutilSignalHandler.php', + 'PhutilSignalRouter' => 'future/exec/PhutilSignalRouter.php', + 'PhutilSimpleOptions' => 'parser/PhutilSimpleOptions.php', + 'PhutilSimpleOptionsLexer' => 'lexer/PhutilSimpleOptionsLexer.php', + 'PhutilSimpleOptionsLexerTestCase' => 'lexer/__tests__/PhutilSimpleOptionsLexerTestCase.php', + 'PhutilSimpleOptionsTestCase' => 'parser/__tests__/PhutilSimpleOptionsTestCase.php', + 'PhutilSimplifiedChineseLocale' => 'internationalization/locales/PhutilSimplifiedChineseLocale.php', + 'PhutilSlackAuthAdapter' => 'auth/PhutilSlackAuthAdapter.php', + 'PhutilSlackFuture' => 'future/slack/PhutilSlackFuture.php', + 'PhutilSocketChannel' => 'channel/PhutilSocketChannel.php', + 'PhutilSortVector' => 'utils/PhutilSortVector.php', + 'PhutilSpanishSpainLocale' => 'internationalization/locales/PhutilSpanishSpainLocale.php', + 'PhutilSprite' => 'sprites/PhutilSprite.php', + 'PhutilSpriteSheet' => 'sprites/PhutilSpriteSheet.php', + 'PhutilStreamIterator' => 'utils/PhutilStreamIterator.php', + 'PhutilSubversionBinaryAnalyzer' => 'filesystem/binary/PhutilSubversionBinaryAnalyzer.php', + 'PhutilSymbolLoader' => 'symbols/PhutilSymbolLoader.php', + 'PhutilSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilSyntaxHighlighter.php', + 'PhutilSyntaxHighlighterEngine' => 'markup/syntax/engine/PhutilSyntaxHighlighterEngine.php', + 'PhutilSyntaxHighlighterException' => 'markup/syntax/highlighter/PhutilSyntaxHighlighterException.php', + 'PhutilSystem' => 'utils/PhutilSystem.php', + 'PhutilSystemTestCase' => 'utils/__tests__/PhutilSystemTestCase.php', + 'PhutilTerminalString' => 'xsprintf/PhutilTerminalString.php', 'PhutilTestCase' => 'unit/engine/phutil/PhutilTestCase.php', 'PhutilTestCaseTestCase' => 'unit/engine/phutil/testcase/PhutilTestCaseTestCase.php', + 'PhutilTestPhobject' => 'object/__tests__/PhutilTestPhobject.php', 'PhutilTestSkippedException' => 'unit/engine/phutil/testcase/PhutilTestSkippedException.php', 'PhutilTestTerminatedException' => 'unit/engine/phutil/testcase/PhutilTestTerminatedException.php', + 'PhutilTortureTestDaemon' => 'daemon/torture/PhutilTortureTestDaemon.php', + 'PhutilTraditionalChineseLocale' => 'internationalization/locales/PhutilTraditionalChineseLocale.php', + 'PhutilTranslation' => 'internationalization/PhutilTranslation.php', + 'PhutilTranslationTestCase' => 'internationalization/__tests__/PhutilTranslationTestCase.php', + 'PhutilTranslator' => 'internationalization/PhutilTranslator.php', + 'PhutilTranslatorTestCase' => 'internationalization/__tests__/PhutilTranslatorTestCase.php', + 'PhutilTsprintfTestCase' => 'xsprintf/__tests__/PhutilTsprintfTestCase.php', + 'PhutilTwitchAuthAdapter' => 'auth/PhutilTwitchAuthAdapter.php', + 'PhutilTwitchFuture' => 'future/twitch/PhutilTwitchFuture.php', + 'PhutilTwitterAuthAdapter' => 'auth/PhutilTwitterAuthAdapter.php', + 'PhutilTypeCheckException' => 'parser/exception/PhutilTypeCheckException.php', + 'PhutilTypeExtraParametersException' => 'parser/exception/PhutilTypeExtraParametersException.php', + 'PhutilTypeLexer' => 'lexer/PhutilTypeLexer.php', + 'PhutilTypeMissingParametersException' => 'parser/exception/PhutilTypeMissingParametersException.php', + 'PhutilTypeSpec' => 'parser/PhutilTypeSpec.php', + 'PhutilTypeSpecTestCase' => 'parser/__tests__/PhutilTypeSpecTestCase.php', + 'PhutilURI' => 'parser/PhutilURI.php', + 'PhutilURITestCase' => 'parser/__tests__/PhutilURITestCase.php', + 'PhutilUSEnglishLocale' => 'internationalization/locales/PhutilUSEnglishLocale.php', + 'PhutilUTF8StringTruncator' => 'utils/PhutilUTF8StringTruncator.php', + 'PhutilUTF8TestCase' => 'utils/__tests__/PhutilUTF8TestCase.php', 'PhutilUnitTestEngine' => 'unit/engine/PhutilUnitTestEngine.php', 'PhutilUnitTestEngineTestCase' => 'unit/engine/__tests__/PhutilUnitTestEngineTestCase.php', + 'PhutilUnknownSymbolParserGeneratorException' => 'parser/generator/exception/PhutilUnknownSymbolParserGeneratorException.php', + 'PhutilUnreachableRuleParserGeneratorException' => 'parser/generator/exception/PhutilUnreachableRuleParserGeneratorException.php', + 'PhutilUnreachableTerminalParserGeneratorException' => 'parser/generator/exception/PhutilUnreachableTerminalParserGeneratorException.php', + 'PhutilUrisprintfTestCase' => 'xsprintf/__tests__/PhutilUrisprintfTestCase.php', + 'PhutilUtilsTestCase' => 'utils/__tests__/PhutilUtilsTestCase.php', + 'PhutilVeryWowEnglishLocale' => 'internationalization/locales/PhutilVeryWowEnglishLocale.php', + 'PhutilWordPressAuthAdapter' => 'auth/PhutilWordPressAuthAdapter.php', + 'PhutilWordPressFuture' => 'future/wordpress/PhutilWordPressFuture.php', + 'PhutilXHPASTBinary' => 'parser/xhpast/bin/PhutilXHPASTBinary.php', + 'PhutilXHPASTSyntaxHighlighter' => 'markup/syntax/highlighter/PhutilXHPASTSyntaxHighlighter.php', + 'PhutilXHPASTSyntaxHighlighterFuture' => 'markup/syntax/highlighter/xhpast/PhutilXHPASTSyntaxHighlighterFuture.php', + 'PhutilXHPASTSyntaxHighlighterTestCase' => 'markup/syntax/highlighter/__tests__/PhutilXHPASTSyntaxHighlighterTestCase.php', 'PytestTestEngine' => 'unit/engine/PytestTestEngine.php', + 'QueryFuture' => 'future/query/QueryFuture.php', + 'TempFile' => 'filesystem/TempFile.php', + 'TestAbstractDirectedGraph' => 'utils/__tests__/TestAbstractDirectedGraph.php', + 'XHPASTNode' => 'parser/xhpast/api/XHPASTNode.php', + 'XHPASTNodeTestCase' => 'parser/xhpast/api/__tests__/XHPASTNodeTestCase.php', + 'XHPASTSyntaxErrorException' => 'parser/xhpast/api/XHPASTSyntaxErrorException.php', + 'XHPASTToken' => 'parser/xhpast/api/XHPASTToken.php', + 'XHPASTTree' => 'parser/xhpast/api/XHPASTTree.php', + 'XHPASTTreeTestCase' => 'parser/xhpast/api/__tests__/XHPASTTreeTestCase.php', 'XUnitTestEngine' => 'unit/engine/XUnitTestEngine.php', 'XUnitTestResultParserTestCase' => 'unit/parser/__tests__/XUnitTestResultParserTestCase.php', + 'XsprintfUnknownConversionException' => 'xsprintf/exception/XsprintfUnknownConversionException.php', ), 'function' => array( 'array_fuse' => 'utils/utils.php', @@ -1075,6 +1094,49 @@ 'xsprintf_uri' => 'xsprintf/urisprintf.php', ), 'xmap' => array( + 'AASTNode' => 'Phobject', + 'AASTNodeList' => array( + 'Phobject', + 'Countable', + 'Iterator', + ), + 'AASTToken' => 'Phobject', + 'AASTTree' => 'Phobject', + 'AbstractDirectedGraph' => 'Phobject', + 'AbstractDirectedGraphTestCase' => 'PhutilTestCase', + 'AphrontAccessDeniedQueryException' => 'AphrontQueryException', + 'AphrontBaseMySQLDatabaseConnection' => 'AphrontDatabaseConnection', + 'AphrontCharacterSetQueryException' => 'AphrontQueryException', + 'AphrontConnectionLostQueryException' => 'AphrontRecoverableQueryException', + 'AphrontConnectionQueryException' => 'AphrontQueryException', + 'AphrontCountQueryException' => 'AphrontQueryException', + 'AphrontDatabaseConnection' => array( + 'Phobject', + 'PhutilQsprintfInterface', + ), + 'AphrontDatabaseTransactionState' => 'Phobject', + 'AphrontDeadlockQueryException' => 'AphrontRecoverableQueryException', + 'AphrontDuplicateKeyQueryException' => 'AphrontQueryException', + 'AphrontHTTPHeaderParser' => 'Phobject', + 'AphrontHTTPHeaderParserTestCase' => 'PhutilTestCase', + 'AphrontInvalidCredentialsQueryException' => 'AphrontQueryException', + 'AphrontIsolatedDatabaseConnection' => 'AphrontDatabaseConnection', + 'AphrontLockTimeoutQueryException' => 'AphrontRecoverableQueryException', + 'AphrontMultipartParser' => 'Phobject', + 'AphrontMultipartParserTestCase' => 'PhutilTestCase', + 'AphrontMultipartPart' => 'Phobject', + 'AphrontMySQLDatabaseConnection' => 'AphrontBaseMySQLDatabaseConnection', + 'AphrontMySQLiDatabaseConnection' => 'AphrontBaseMySQLDatabaseConnection', + 'AphrontNotSupportedQueryException' => 'AphrontQueryException', + 'AphrontObjectMissingQueryException' => 'AphrontQueryException', + 'AphrontParameterQueryException' => 'AphrontQueryException', + 'AphrontQueryException' => 'Exception', + 'AphrontQueryTimeoutQueryException' => 'AphrontRecoverableQueryException', + 'AphrontRecoverableQueryException' => 'AphrontQueryException', + 'AphrontRequestStream' => 'Phobject', + 'AphrontSchemaQueryException' => 'AphrontQueryException', + 'AphrontScopedUnguardedWriteCapability' => 'Phobject', + 'AphrontWriteGuard' => 'Phobject', 'ArcanistAbstractMethodBodyXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistAbstractMethodBodyXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistAbstractPrivateMethodXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', @@ -1084,6 +1146,7 @@ 'ArcanistAliasWorkflow' => 'ArcanistWorkflow', 'ArcanistAmendWorkflow' => 'ArcanistWorkflow', 'ArcanistAnoidWorkflow' => 'ArcanistWorkflow', + 'ArcanistArcConfigurationEngineExtension' => 'ArcanistConfigurationEngineExtension', 'ArcanistArcToolset' => 'ArcanistToolset', 'ArcanistArcWorkflow' => 'ArcanistWorkflow', 'ArcanistArrayCombineXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', @@ -1163,10 +1226,16 @@ 'ArcanistConcatenationOperatorXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistConcatenationOperatorXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistConduitCall' => 'Phobject', + 'ArcanistConduitConfigurationEngineExtension' => 'ArcanistConfigurationEngineExtension', 'ArcanistConduitEngine' => 'Phobject', + 'ArcanistConfigOption' => 'Phobject', 'ArcanistConfigurationDrivenLintEngine' => 'ArcanistLintEngine', 'ArcanistConfigurationDrivenUnitTestEngine' => 'ArcanistUnitTestEngine', + 'ArcanistConfigurationEngine' => 'Phobject', + 'ArcanistConfigurationEngineExtension' => 'Phobject', 'ArcanistConfigurationManager' => 'Phobject', + 'ArcanistConfigurationSource' => 'Phobject', + 'ArcanistConfigurationSourceList' => 'Phobject', 'ArcanistConsoleLintRenderer' => 'ArcanistLintRenderer', 'ArcanistConsoleLintRendererTestCase' => 'PhutilTestCase', 'ArcanistConstructorParenthesesXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', @@ -1184,6 +1253,7 @@ 'ArcanistDeclarationParenthesesXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistDefaultParametersXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistDefaultParametersXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', + 'ArcanistDefaultsConfigurationSource' => 'ArcanistConfigurationSource', 'ArcanistDeprecationXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistDeprecationXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistDiffByteSizeException' => 'Exception', @@ -1223,10 +1293,12 @@ 'ArcanistExtractUseXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistExtractUseXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistFeatureWorkflow' => 'ArcanistWorkflow', + 'ArcanistFileConfigurationSource' => 'ArcanistConfigurationSource', 'ArcanistFileDataRef' => 'Phobject', 'ArcanistFileUploader' => 'Phobject', 'ArcanistFilenameLinter' => 'ArcanistLinter', 'ArcanistFilenameLinterTestCase' => 'ArcanistLinterTestCase', + 'ArcanistFilesystemConfigurationSource' => 'ArcanistConfigurationSource', 'ArcanistFlagWorkflow' => 'ArcanistWorkflow', 'ArcanistFlake8Linter' => 'ArcanistExternalLinter', 'ArcanistFlake8LinterTestCase' => 'ArcanistExternalLinterTestCase', @@ -1244,6 +1316,7 @@ 'ArcanistGitLandEngine' => 'ArcanistLandEngine', 'ArcanistGitRevisionHardpointLoader' => 'ArcanistGitHardpointLoader', 'ArcanistGitUpstreamPath' => 'Phobject', + 'ArcanistGitWorkingCopy' => 'ArcanistWorkingCopy', 'ArcanistGlobalVariableXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistGlobalVariableXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistGoLintLinter' => 'ArcanistExternalLinter', @@ -1322,6 +1395,7 @@ 'ArcanistListAssignmentXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistListAssignmentXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistListWorkflow' => 'ArcanistWorkflow', + 'ArcanistLocalConfigurationSource' => 'ArcanistWorkingCopyConfigurationSource', 'ArcanistLogicalOperatorsXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistLogicalOperatorsXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistLowercaseFunctionsXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', @@ -1331,6 +1405,7 @@ 'ArcanistMercurialHardpointLoader' => 'ArcanistHardpointLoader', 'ArcanistMercurialParser' => 'Phobject', 'ArcanistMercurialParserTestCase' => 'PhutilTestCase', + 'ArcanistMercurialWorkingCopy' => 'ArcanistWorkingCopy', 'ArcanistMercurialWorkingCopyCommitHardpointLoader' => 'ArcanistMercurialHardpointLoader', 'ArcanistMergeConflictLinter' => 'ArcanistLinter', 'ArcanistMergeConflictLinterTestCase' => 'ArcanistLinterTestCase', @@ -1391,6 +1466,7 @@ 'ArcanistPlusOperatorOnStringsXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistPregQuoteMisuseXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistPregQuoteMisuseXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', + 'ArcanistProjectConfigurationSource' => 'ArcanistWorkingCopyConfigurationSource', 'ArcanistPublicPropertyXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistPublicPropertyXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistPuppetLintLinter' => 'ArcanistExternalLinter', @@ -1420,6 +1496,7 @@ 'ArcanistRuboCopLinterTestCase' => 'ArcanistExternalLinterTestCase', 'ArcanistRubyLinter' => 'ArcanistExternalLinter', 'ArcanistRubyLinterTestCase' => 'ArcanistExternalLinterTestCase', + 'ArcanistRuntimeConfigurationSource' => 'ArcanistConfigurationSource', 'ArcanistScriptAndRegexLinter' => 'ArcanistLinter', 'ArcanistSelfClassReferenceXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistSelfClassReferenceXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', @@ -1441,8 +1518,10 @@ 'ArcanistStaticThisXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistStopWorkflow' => 'ArcanistPhrequentWorkflow', 'ArcanistSubversionAPI' => 'ArcanistRepositoryAPI', + 'ArcanistSubversionWorkingCopy' => 'ArcanistWorkingCopy', 'ArcanistSummaryLintRenderer' => 'ArcanistLintRenderer', 'ArcanistSyntaxErrorXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', + 'ArcanistSystemConfigurationSource' => 'ArcanistFilesystemConfigurationSource', 'ArcanistTasksWorkflow' => 'ArcanistWorkflow', 'ArcanistTautologicalExpressionXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistTautologicalExpressionXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', @@ -1491,6 +1570,7 @@ 'ArcanistUselessOverridingMethodXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistUselessOverridingMethodXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistUserAbortException' => 'ArcanistUsageException', + 'ArcanistUserConfigurationSource' => 'ArcanistFilesystemConfigurationSource', 'ArcanistVariableReferenceSpacingXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', 'ArcanistVariableReferenceSpacingXHPASTLinterRuleTestCase' => 'ArcanistXHPASTLinterRuleTestCase', 'ArcanistVariableVariableXHPASTLinterRule' => 'ArcanistXHPASTLinterRule', @@ -1499,7 +1579,8 @@ 'ArcanistWeldWorkflow' => 'ArcanistWorkflow', 'ArcanistWhichWorkflow' => 'ArcanistWorkflow', 'ArcanistWorkflow' => 'Phobject', - 'ArcanistWorkingCopyIdentity' => 'Phobject', + 'ArcanistWorkingCopy' => 'Phobject', + 'ArcanistWorkingCopyConfigurationSource' => 'ArcanistFilesystemConfigurationSource', 'ArcanistWorkingCopyStateRef' => 'ArcanistRef', 'ArcanistXHPASTLintNamingHook' => 'Phobject', 'ArcanistXHPASTLintNamingHookTestCase' => 'PhutilTestCase', @@ -1511,64 +1592,8 @@ 'ArcanistXMLLinter' => 'ArcanistLinter', 'ArcanistXMLLinterTestCase' => 'ArcanistLinterTestCase', 'ArcanistXUnitTestResultParser' => 'Phobject', - 'CSharpToolsTestEngine' => 'XUnitTestEngine', - 'NoseTestEngine' => 'ArcanistUnitTestEngine', - 'PhageWorkflow' => 'PhutilArgumentWorkflow', - 'PhpunitTestEngine' => 'ArcanistUnitTestEngine', - 'PhpunitTestEngineTestCase' => 'PhutilTestCase', - 'PhutilTestCase' => 'Phobject', - 'PhutilTestCaseTestCase' => 'PhutilTestCase', - 'PhutilTestSkippedException' => 'Exception', - 'PhutilTestTerminatedException' => 'Exception', - 'PhutilUnitTestEngine' => 'ArcanistUnitTestEngine', - 'PhutilUnitTestEngineTestCase' => 'PhutilTestCase', - 'PytestTestEngine' => 'ArcanistUnitTestEngine', - 'XUnitTestEngine' => 'ArcanistUnitTestEngine', - 'XUnitTestResultParserTestCase' => 'PhutilTestCase', - 'AASTNode' => 'Phobject', - 'AASTNodeList' => array( - 'Phobject', - 'Countable', - 'Iterator', - ), - 'AASTToken' => 'Phobject', - 'AASTTree' => 'Phobject', - 'AbstractDirectedGraph' => 'Phobject', - 'AbstractDirectedGraphTestCase' => 'PhutilTestCase', - 'AphrontAccessDeniedQueryException' => 'AphrontQueryException', - 'AphrontBaseMySQLDatabaseConnection' => 'AphrontDatabaseConnection', - 'AphrontCharacterSetQueryException' => 'AphrontQueryException', - 'AphrontConnectionLostQueryException' => 'AphrontRecoverableQueryException', - 'AphrontConnectionQueryException' => 'AphrontQueryException', - 'AphrontCountQueryException' => 'AphrontQueryException', - 'AphrontDatabaseConnection' => array( - 'Phobject', - 'PhutilQsprintfInterface', - ), - 'AphrontDatabaseTransactionState' => 'Phobject', - 'AphrontDeadlockQueryException' => 'AphrontRecoverableQueryException', - 'AphrontDuplicateKeyQueryException' => 'AphrontQueryException', - 'AphrontHTTPHeaderParser' => 'Phobject', - 'AphrontHTTPHeaderParserTestCase' => 'PhutilTestCase', - 'AphrontInvalidCredentialsQueryException' => 'AphrontQueryException', - 'AphrontIsolatedDatabaseConnection' => 'AphrontDatabaseConnection', - 'AphrontLockTimeoutQueryException' => 'AphrontRecoverableQueryException', - 'AphrontMultipartParser' => 'Phobject', - 'AphrontMultipartParserTestCase' => 'PhutilTestCase', - 'AphrontMultipartPart' => 'Phobject', - 'AphrontMySQLDatabaseConnection' => 'AphrontBaseMySQLDatabaseConnection', - 'AphrontMySQLiDatabaseConnection' => 'AphrontBaseMySQLDatabaseConnection', - 'AphrontNotSupportedQueryException' => 'AphrontQueryException', - 'AphrontObjectMissingQueryException' => 'AphrontQueryException', - 'AphrontParameterQueryException' => 'AphrontQueryException', - 'AphrontQueryException' => 'Exception', - 'AphrontQueryTimeoutQueryException' => 'AphrontRecoverableQueryException', - 'AphrontRecoverableQueryException' => 'AphrontQueryException', - 'AphrontRequestStream' => 'Phobject', - 'AphrontSchemaQueryException' => 'AphrontQueryException', - 'AphrontScopedUnguardedWriteCapability' => 'Phobject', - 'AphrontWriteGuard' => 'Phobject', 'BaseHTTPFuture' => 'Future', + 'CSharpToolsTestEngine' => 'XUnitTestEngine', 'CaseInsensitiveArray' => 'PhutilArray', 'CaseInsensitiveArrayTestCase' => 'PhutilTestCase', 'CommandException' => 'Exception', @@ -1611,6 +1636,7 @@ 'LinesOfALargeFile' => 'LinesOfALarge', 'LinesOfALargeFileTestCase' => 'PhutilTestCase', 'MFilterTestHelper' => 'Phobject', + 'NoseTestEngine' => 'ArcanistUnitTestEngine', 'PHPASTParserTestCase' => 'PhutilTestCase', 'PhageAction' => 'Phobject', 'PhageAgentAction' => 'PhageAction', @@ -1621,8 +1647,11 @@ 'PhagePHPAgent' => 'Phobject', 'PhagePHPAgentBootloader' => 'PhageAgentBootloader', 'PhagePlanAction' => 'PhageAction', + 'PhageWorkflow' => 'PhutilArgumentWorkflow', 'Phobject' => 'Iterator', 'PhobjectTestCase' => 'PhutilTestCase', + 'PhpunitTestEngine' => 'ArcanistUnitTestEngine', + 'PhpunitTestEngineTestCase' => 'PhutilTestCase', 'PhutilAPCKeyValueCache' => 'PhutilKeyValueCache', 'PhutilAWSCloudFormationFuture' => 'PhutilAWSFuture', 'PhutilAWSCloudWatchFuture' => 'PhutilAWSFuture', @@ -1992,7 +2021,11 @@ 'PhutilSystem' => 'Phobject', 'PhutilSystemTestCase' => 'PhutilTestCase', 'PhutilTerminalString' => 'Phobject', + 'PhutilTestCase' => 'Phobject', + 'PhutilTestCaseTestCase' => 'PhutilTestCase', 'PhutilTestPhobject' => 'Phobject', + 'PhutilTestSkippedException' => 'Exception', + 'PhutilTestTerminatedException' => 'Exception', 'PhutilTortureTestDaemon' => 'PhutilDaemon', 'PhutilTraditionalChineseLocale' => 'PhutilLocale', 'PhutilTranslation' => 'Phobject', @@ -2014,6 +2047,8 @@ 'PhutilUSEnglishLocale' => 'PhutilLocale', 'PhutilUTF8StringTruncator' => 'Phobject', 'PhutilUTF8TestCase' => 'PhutilTestCase', + 'PhutilUnitTestEngine' => 'ArcanistUnitTestEngine', + 'PhutilUnitTestEngineTestCase' => 'PhutilTestCase', 'PhutilUnknownSymbolParserGeneratorException' => 'PhutilParserGeneratorException', 'PhutilUnreachableRuleParserGeneratorException' => 'PhutilParserGeneratorException', 'PhutilUnreachableTerminalParserGeneratorException' => 'PhutilParserGeneratorException', @@ -2026,6 +2061,7 @@ 'PhutilXHPASTSyntaxHighlighter' => 'Phobject', 'PhutilXHPASTSyntaxHighlighterFuture' => 'FutureProxy', 'PhutilXHPASTSyntaxHighlighterTestCase' => 'PhutilTestCase', + 'PytestTestEngine' => 'ArcanistUnitTestEngine', 'QueryFuture' => 'Future', 'TempFile' => 'Phobject', 'TestAbstractDirectedGraph' => 'AbstractDirectedGraph', @@ -2035,6 +2071,8 @@ 'XHPASTToken' => 'AASTToken', 'XHPASTTree' => 'AASTTree', 'XHPASTTreeTestCase' => 'PhutilTestCase', + 'XUnitTestEngine' => 'ArcanistUnitTestEngine', + 'XUnitTestResultParserTestCase' => 'PhutilTestCase', 'XsprintfUnknownConversionException' => 'InvalidArgumentException', ), )); diff --git a/src/config/ArcanistArcConfigurationEngineExtension.php b/src/config/ArcanistArcConfigurationEngineExtension.php new file mode 100644 --- /dev/null +++ b/src/config/ArcanistArcConfigurationEngineExtension.php @@ -0,0 +1,6 @@ +workingCopy = $working_copy; + return $this; + } + + public function getWorkingCopy() { + return $this->workingCopy; + } + + public function setArguments(PhutilArgumentParser $arguments) { + $this->arguments = $arguments; + return $this; + } + + public function getArguments() { + if (!$this->arguments) { + throw new PhutilInvalidStateException('setArguments'); + } + return $this->arguments; + } + + public function newConfigurationSourceList() { + $list = new ArcanistConfigurationSourceList(); + + $list->addSource(new ArcanistDefaultsConfigurationSource()); + + $arguments = $this->getArguments(); + + // If the invoker has provided one or more configuration files with + // "--config-file" arguments, read those files instead of the system + // and user configuration files. Otherwise, read the system and user + // configuration files. + + $config_files = $arguments->getArg('config-file'); + if ($config_files) { + foreach ($config_files as $config_file) { + $list->addSource(new ArcanistFileConfigurationSource($config_file)); + } + } else { + $system_path = $this->getSystemConfigurationFilePath(); + $list->addSource(new ArcanistSystemConfigurationSource($system_path)); + + $user_path = $this->getUserConfigurationFilePath(); + $list->addSource(new ArcanistUserConfigurationSource($user_path)); + } + + + // If we're running in a working copy, load the ".arcconfig" and any + // local configuration. + $working_copy = $this->getWorkingCopy(); + if ($working_copy) { + $project_path = $working_copy->getProjectConfigurationFilePath(); + if ($project_path !== null) { + $list->addSource(new ArcanistProjectConfigurationSource($project_path)); + } + + $local_path = $working_copy->getLocalConfigurationFilePath(); + if ($local_path !== null) { + $list->addSource(new ArcanistLocalConfigurationSource($local_path)); + } + } + + // If the invoker has provided "--config" arguments, parse those now. + $runtime_args = $arguments->getArg('config'); + if ($runtime_args) { + $list->addSource(new ArcanistRuntimeConfigurationSource($runtime_args)); + } + + return $list; + } + + private function getSystemConfigurationFilePath() { + if (phutil_is_windows()) { + return Filesystem::resolvePath( + 'Phabricator/Arcanist/config', + getenv('ProgramData')); + } else { + return '/etc/arcconfig'; + } + } + + private function getUserConfigurationFilePath() { + if (phutil_is_windows()) { + return getenv('APPDATA').'/.arcrc'; + } else { + return getenv('HOME').'/.arcrc'; + } + } + +} diff --git a/src/config/ArcanistConfigurationEngineExtension.php b/src/config/ArcanistConfigurationEngineExtension.php new file mode 100644 --- /dev/null +++ b/src/config/ArcanistConfigurationEngineExtension.php @@ -0,0 +1,6 @@ +sources[] = $source; + return $this; + } + +} \ No newline at end of file diff --git a/src/config/source/ArcanistConfigurationSource.php b/src/config/source/ArcanistConfigurationSource.php new file mode 100644 --- /dev/null +++ b/src/config/source/ArcanistConfigurationSource.php @@ -0,0 +1,6 @@ +setParentClass(__CLASS__) + ->setAncestorClass(__CLASS__) ->execute(); // Find the outermost directory which is under version control. We go from diff --git a/support/ArcanistRuntime.php b/support/ArcanistRuntime.php --- a/support/ArcanistRuntime.php +++ b/support/ArcanistRuntime.php @@ -45,6 +45,14 @@ 'repeat' => true, 'help' => pht('Specify a runtime configuration value.'), ), + array( + 'name' => 'config-file', + 'param' => 'path', + 'repeat' => true, + 'help' => pht( + 'Load one or more configuration files. If this flag is provided, '. + 'the system and user configuration files are ignored.'), + ), ); $args = id(new PhutilArgumentParser($argv)) @@ -202,9 +210,10 @@ } private function loadConfiguration(PhutilArgumentParser $args) { - $engine = new ArcanistConfigurationEngine(); + $engine = id(new ArcanistConfigurationEngine()) + ->setArguments($args); - $working_copy = ArcanistWorkingCopyIdentity::newFromPath(getcwd()); + $working_copy = ArcanistWorkingCopy::newFromWorkingDirectory(getcwd()); if ($working_copy) { $engine->setWorkingCopy($working_copy); } @@ -214,28 +223,16 @@ private function loadLibraries( PhutilArgumentParser $args, - ArcanistConfigurationManager $config) { + ArcanistConfigurationSourceList $config) { - $is_trace = $args->getArg('trace'); - - if ($is_trace) { - $libraries = array( - 'phutil', - 'arcanist', - ); + // TOOLSETS: Make this work again -- or replace it entirely with package + // management? + return; - foreach ($libraries as $library_name) { - $this->logTrace( - pht('LOAD'), - pht( - 'Loaded "%s" from "%s".', - $library_name, - phutil_get_library_root($library_name))); - } - } + $is_trace = $args->getArg('trace'); $load = array(); - $working_copy = $config->getWorkingCopyIdentity(); + $working_copy = $this->getWorkingCopy(); $cli_libraries = $args->getArg('library'); if ($cli_libraries) { @@ -463,7 +460,7 @@ private function resolveAliases( array $workflows, array $argv, - ArcanistConfigurationManager $config) { + ArcanistConfigurationSourceList $config) { $command = head($argv);