1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-26 08:42:41 +01:00

Remove product literal strings in "pht()", part 3

Summary: Ref T13658.

Test Plan:
This is non-exhaustive.

  - Ran all setup checks.

Maniphest Tasks: T13658

Differential Revision: https://secure.phabricator.com/D21767
This commit is contained in:
epriestley 2022-04-25 10:43:54 -07:00
parent b8b392481f
commit b1b3fe0ff0
11 changed files with 107 additions and 101 deletions

View file

@ -83,7 +83,7 @@ final class AphrontApplicationConfiguration
* @phutil-external-symbol class PhabricatorStartup
*/
public static function runHTTPRequest(AphrontHTTPSink $sink) {
if (isset($_SERVER['HTTP_X_PHABRICATOR_SELFCHECK'])) {
if (isset($_SERVER['HTTP_X_SETUP_SELFCHECK'])) {
$response = self::newSelfCheckResponse();
return self::writeResponse($sink, $response);
}

View file

@ -26,14 +26,13 @@ final class PhabricatorDaemonsSetupCheck extends PhabricatorSetupCheck {
$doc_href = PhabricatorEnv::getDoclink('Managing Daemons with phd');
$summary = pht(
'You must start the Phabricator daemons to send email, rebuild '.
'search indexes, and do other background processing.');
'You must start the daemons to send email, rebuild search indexes, '.
'and do other background processing.');
$message = pht(
'The Phabricator daemons are not running, so Phabricator will not '.
'be able to perform background processing (including sending email, '.
'rebuilding search indexes, importing commits, cleaning up old data, '.
'and running builds).'.
'The daemons are not running, background processing (including '.
'sending email, rebuilding search indexes, importing commits, '.
'cleaning up old data, and running builds) can not be performed.'.
"\n\n".
'Use %s to start daemons. See %s for more information.',
phutil_tag('tt', array(), 'bin/phd start'),
@ -47,10 +46,10 @@ final class PhabricatorDaemonsSetupCheck extends PhabricatorSetupCheck {
$this->newIssue('daemons.not-running')
->setShortName(pht('Daemons Not Running'))
->setName(pht('Phabricator Daemons Are Not Running'))
->setName(pht('Daemons Are Not Running'))
->setSummary($summary)
->setMessage($message)
->addCommand('phabricator/ $ ./bin/phd start');
->addCommand('$ ./bin/phd start');
}
$expect_user = PhabricatorEnv::getEnvConfig('phd.user');
@ -91,7 +90,7 @@ final class PhabricatorDaemonsSetupCheck extends PhabricatorSetupCheck {
->setSummary($summary)
->setMessage($message)
->addPhabricatorConfig('phd.user')
->addCommand('phabricator/ $ ./bin/phd restart');
->addCommand('$ ./bin/phd restart');
break;
}

View file

@ -38,9 +38,9 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
} else {
$summary = pht('This option is not recognized. It may be misspelled.');
$message = pht(
"The configuration option '%s' is not recognized. It may be ".
"misspelled, or it might have existed in an older version of ".
"Phabricator. It has no effect, and should be corrected or deleted.",
'The configuration option "%s" is not recognized. It may be '.
'misspelled, or it might have existed in an older version of '.
'the software. It has no effect, and should be corrected or deleted.',
$key);
$short = pht('Unknown Config');
$name = pht('Unknown Configuration Option "%s"', $key);
@ -76,7 +76,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
$issue->setMessage($message);
if ($found_local) {
$command = csprintf('phabricator/ $ ./bin/config delete %s', $key);
$command = csprintf('$ ./bin/config delete %s', $key);
$issue->addCommand($command);
}
@ -155,7 +155,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'details about this setup issue, see %s.'.
"\n\n".
'This database value is currently respected, but a future version '.
'of Phabricator will stop respecting database values for locked '.
'of the software will stop respecting database values for locked '.
'configuration options.',
$key,
$set_command,
@ -167,7 +167,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
),
$doc_name));
$command = csprintf(
'phabricator/ $ ./bin/config delete --database %R',
'$ ./bin/config delete --database %R',
$key);
$this->newIssue('config.locked.'.$key)
@ -191,7 +191,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
pht(
'The "feed.http-hooks" option is deprecated in favor of '.
'Webhooks. This option will be removed in a future version '.
'of Phabricator.'.
'of the software.'.
"\n\n".
'You can configure Webhooks in Herald.'.
"\n\n".
@ -283,8 +283,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'Reply handlers can no longer be overridden with configuration.');
$monospace_reason = pht(
'Phabricator no longer supports global customization of monospaced '.
'fonts.');
'Global customization of monospaced fonts is no longer supported.');
$public_mail_reason = pht(
'Inbound mail addresses are now configured for each application '.
@ -346,7 +345,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'auth.sshkeys.enabled' => pht(
'SSH keys are now actually useful, so they are always enabled.'),
'differential.anonymous-access' => pht(
'Phabricator now has meaningful global access controls. See `%s`.',
'Global access controls now exist, see `%s`.',
'policy.allow-public'),
'celerity.resource-path' => pht(
'An alternate resource map is no longer supported. Instead, use '.
@ -356,7 +355,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'auth.sessions.conduit' => $session_reason,
'auth.sessions.web' => $session_reason,
'tokenizer.ondemand' => pht(
'Phabricator now manages typeahead strategies automatically.'),
'Typeahead strategies are now managed automatically.'),
'differential.revision-custom-detail-renderer' => pht(
'Obsolete; use standard rendering events instead.'),
'differential.show-host-field' => $differential_field_reason,
@ -383,16 +382,15 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'pool size with `%s`.',
'phd.taskmasters'),
'storage.engine-selector' => pht(
'Phabricator now automatically discovers available storage engines '.
'at runtime.'),
'Storage engines are now discovered automatically at runtime.'),
'storage.upload-size-limit' => pht(
'Phabricator now supports arbitrarily large files. Consult the '.
'Arbitrarily large files are now supported. Consult the '.
'documentation for configuration details.'),
'security.allow-outbound-http' => pht(
'This option has been replaced with the more granular option `%s`.',
'security.outbound-blacklist'),
'metamta.reply.show-hints' => pht(
'Phabricator no longer shows reply hints in mail.'),
'Reply hints are no longer shown in mail.'),
'metamta.differential.reply-handler-domain' => $reply_domain_reason,
'metamta.diffusion.reply-handler-domain' => $reply_domain_reason,
@ -406,15 +404,15 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'metamta.package.reply-handler' => $reply_handler_reason,
'metamta.precedence-bulk' => pht(
'Phabricator now always sends transaction mail with '.
'"Precedence: bulk" to improve deliverability.'),
'Transaction mail is now always sent with "Precedence: bulk" to '.
'improve deliverability.'),
'style.monospace' => $monospace_reason,
'style.monospace.windows' => $monospace_reason,
'search.engine-selector' => pht(
'Phabricator now automatically discovers available search engines '.
'at runtime.'),
'Available search engines are now automatically discovered at '.
'runtime.'),
'metamta.files.public-create-email' => $public_mail_reason,
'metamta.maniphest.public-create-email' => $public_mail_reason,
@ -469,12 +467,12 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'maniphest.priorities.needs-triage' => $dashboard_reason,
'mysql.implementation' => pht(
'Phabricator now automatically selects the best available '.
'MySQL implementation.'),
'The best available MYSQL implementation is now selected '.
'automatically.'),
'mysql.configuration-provider' => pht(
'Phabricator now has application-level management of partitioning '.
'and replicas.'),
'Partitioning and replication are now managed in primary '.
'configuration.'),
'search.elastic.host' => $elastic_reason,
'search.elastic.namespace' => $elastic_reason,
@ -541,7 +539,7 @@ final class PhabricatorExtraConfigSetupCheck extends PhabricatorSetupCheck {
'Whitespace rendering is now handled automatically.'),
'phd.pid-directory' => pht(
'Phabricator daemons no longer use PID files.'),
'Daemons no longer use PID files.'),
'phd.trace' => $phd_reason,
'phd.verbose' => $phd_reason,

View file

@ -42,7 +42,7 @@ final class PhabricatorManualActivitySetupCheck
'function correctly.');
$message[] = pht(
'You can rebuild the search index while Phabricator is running.');
'You can rebuild the search index while the server is running.');
$message[] = pht(
'To rebuild the index, run this command:');
@ -51,7 +51,7 @@ final class PhabricatorManualActivitySetupCheck
'pre',
array(),
(string)csprintf(
'phabricator/ $ ./bin/search index --all --force --background'));
'$ ./bin/search index --all --force --background'));
$message[] = pht(
'You can find more information about rebuilding the search '.
@ -71,7 +71,7 @@ final class PhabricatorManualActivitySetupCheck
$message[] = phutil_tag(
'pre',
array(),
'phabricator/ $ ./bin/config done reindex');
'$ ./bin/config done reindex');
$activity_message = phutil_implode_html("\n\n", $message);
@ -84,27 +84,34 @@ final class PhabricatorManualActivitySetupCheck
private function raiseRebuildIdentitiesIssue() {
$activity_name = pht('Rebuild Repository Identities');
$activity_summary = pht(
'The mapping from VCS users to Phabricator users has changed '.
'and must be rebuilt.');
'The mapping from VCS users to %s users has changed '.
'and must be rebuilt.',
PlatformSymbols::getPlatformServerName());
$message = array();
$message[] = pht(
'The way Phabricator attributes VCS activity to Phabricator users '.
'has changed. There is a new indirection layer between the strings '.
'that appear as VCS authors and committers (such as "John Developer '.
'<johnd@bigcorp.com>") and the Phabricator user that gets associated '.
'with VCS commits. This is to support situations where users '.
'are incorrectly associated with commits by Phabricator making bad '.
'guesses about the identity of the corresponding Phabricator user. '.
'The way VCS activity is attributed %s user accounts has changed.',
PlatformSymbols::getPlatformServerName());
$message[] = pht(
'There is a new indirection layer between the strings that appear as '.
'VCS authors and committers (such as "John Developer '.
'<johnd@bigcorp.com>") and the user account that gets associated '.
'with VCS commits.');
$message[] = pht(
'This change supports situations where users are incorrectly '.
'associated with commits because the software makes a bad guess '.
'about how the VCS string maps to a user account. '.
'This also helps with situations where existing repositories are '.
'imported without having created accounts for all the committers to '.
'that repository. Until you rebuild these repository identities, you '.
'are likely to encounter problems with future Phabricator features '.
'which will rely on the existence of these identities.');
'are likely to encounter problems with features which rely on the '.
'existence of these identities.');
$message[] = pht(
'You can rebuild repository identities while Phabricator is running.');
'You can rebuild repository identities while the server is running.');
$message[] = pht(
'To rebuild identities, run this command:');
@ -113,8 +120,7 @@ final class PhabricatorManualActivitySetupCheck
'pre',
array(),
(string)csprintf(
'phabricator/ $ '.
'./bin/repository rebuild-identities --all-repositories'));
'$ ./bin/repository rebuild-identities --all-repositories'));
$message[] = pht(
'You can find more information about this new identity mapping '.
@ -134,7 +140,7 @@ final class PhabricatorManualActivitySetupCheck
$message[] = phutil_tag(
'pre',
array(),
'phabricator/ $ ./bin/config done identities');
'$ ./bin/config done identities');
$activity_message = phutil_implode_html("\n\n", $message);

View file

@ -15,11 +15,11 @@ final class PhabricatorPHPPreflightSetupCheck extends PhabricatorSetupCheck {
if (version_compare($version, 7, '>=') &&
version_compare($version, 7.1, '<')) {
$message = pht(
'You are running PHP version %s. Phabricator does not support PHP '.
'versions between 7.0 and 7.1.'.
'You are running PHP version %s. PHP versions between 7.0 and 7.1 '.
'are not supported'.
"\n\n".
'PHP removed signal handling features that Phabricator requires in '.
'PHP 7.0, and did not restore them until PHP 7.1.'.
'PHP removed reqiured signal handling features in '.
'PHP 7.0, and did not restore an equivalent mechanism until PHP 7.1.'.
"\n\n".
'Upgrade to PHP 7.1 or newer (recommended) or downgrade to an older '.
'version of PHP 5 (discouraged).',
@ -31,15 +31,18 @@ final class PhabricatorPHPPreflightSetupCheck extends PhabricatorSetupCheck {
->setMessage($message)
->addLink(
'https://phurl.io/u/php7',
pht('Phabricator PHP 7 Compatibility Information'));
pht('PHP 7 Compatibility Information'));
return;
}
// TODO: This can be removed entirely because the minimum PHP version is
// now PHP 5.5, which does not have safe mode.
$safe_mode = ini_get('safe_mode');
if ($safe_mode) {
$message = pht(
"You have '%s' enabled in your PHP configuration, but Phabricator ".
"You have '%s' enabled in your PHP configuration, but this software ".
"will not run in safe mode. Safe mode has been deprecated in PHP 5.3 ".
"and removed in PHP 5.4.\n\nDisable safe mode to continue.",
'safe_mode');
@ -89,7 +92,7 @@ final class PhabricatorPHPPreflightSetupCheck extends PhabricatorSetupCheck {
if ($fatal) {
$message = pht(
"You have '%s' enabled in your PHP configuration.\n\n".
"This option is not compatible with Phabricator. Remove ".
"This option is not compatible with this software. Remove ".
"'%s' from your configuration to continue.",
$disable_option,
$disable_option);
@ -108,7 +111,7 @@ final class PhabricatorPHPPreflightSetupCheck extends PhabricatorSetupCheck {
if ($func_overload) {
$message = pht(
"You have '%s' enabled in your PHP configuration.\n\n".
"This option is not compatible with Phabricator. Disable ".
"This option is not compatible with this software. Disable ".
"'%s' in your PHP configuration to continue.",
$overload_option,
$overload_option);
@ -131,7 +134,7 @@ final class PhabricatorPHPPreflightSetupCheck extends PhabricatorSetupCheck {
// rare (particularly in supported environments).
$message = pht(
"Your server is configured with '%s', which prevents Phabricator ".
"Your server is configured with '%s', which prevents this software ".
"from opening files it requires access to.\n\n".
"Disable this setting to continue.",
'open_basedir');

View file

@ -16,10 +16,10 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
->setSummary(pht('Pagespeed is enabled, but should be disabled.'))
->setMessage(
pht(
'Phabricator received an "X-Mod-Pagespeed" or "X-Page-Speed" '.
'This server received an "X-Mod-Pagespeed" or "X-Page-Speed" '.
'HTTP header on this request, which indicates that you have '.
'enabled "mod_pagespeed" on this server. This module is not '.
'compatible with Phabricator. You should disable it.'));
'compatible with this software. You should disable the module.'));
}
$base_uri = PhabricatorEnv::getEnvConfig('phabricator.base-uri');
@ -43,7 +43,7 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
->replaceQueryParam($expect_key, $expect_value);
$self_future = id(new HTTPSFuture($base_uri))
->addHeader('X-Phabricator-SelfCheck', 1)
->addHeader('X-Setup-SelfCheck', 1)
->addHeader('Accept-Encoding', 'gzip')
->setDisableContentDecoding(true)
->setHTTPBasicAuthCredentials(
@ -56,7 +56,7 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
$gzip_compressed = gzencode($gzip_uncompressed);
$gzip_future = id(new HTTPSFuture($base_uri))
->addHeader('X-Phabricator-SelfCheck', 1)
->addHeader('X-Setup-SelfCheck', 1)
->addHeader('Content-Encoding', 'gzip')
->setTimeout(5)
->setData($gzip_compressed);
@ -91,9 +91,9 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
$body = trim($body);
if (preg_match('/^t2/', $body)) {
$message = pht(
'Phabricator appears to be installed on a very small EC2 instance '.
'This software appears to be installed on a very small EC2 instance '.
'(of class "%s") with burstable CPU. This is strongly discouraged. '.
'Phabricator regularly needs CPU, and these instances are often '.
'This software regularly needs CPU, and these instances are often '.
'choked to death by CPU throttling. Use an instance with a normal '.
'CPU instead.',
$body);
@ -102,7 +102,7 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
->setName(pht('Installed on Burstable CPU Instance'))
->setSummary(
pht(
'Do not install Phabricator on an instance class with '.
'Do not install this software on an instance class with '.
'burstable CPU.'))
->setMessage($message);
}
@ -121,7 +121,7 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
if (BaseHTTPFuture::getHeader($headers, 'Content-Encoding') != 'gzip') {
$message = pht(
'Phabricator sent itself a request with "Accept-Encoding: gzip", '.
'This software sent itself a request with "Accept-Encoding: gzip", '.
'but received an uncompressed response.'.
"\n\n".
'This may indicate that your webserver is not configured to '.
@ -163,8 +163,8 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
->truncateString($body);
$message = pht(
'Phabricator sent itself a test request with the '.
'"X-Phabricator-SelfCheck" header and expected to get a valid JSON '.
'This software sent itself a test request with the '.
'"X-Setup-SelfCheck" header and expected to get a valid JSON '.
'response back. Instead, the response begins:'.
"\n\n".
'%s'.
@ -173,9 +173,9 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
phutil_tag('pre', array(), $short));
} else {
$message = pht(
'Phabricator sent itself a test request and expected to get a bare '.
'JSON response back. It received a JSON response, but the response '.
'had extra whitespace at the beginning or end.'.
'This software sent itself a test request and expected to get a '.
'bare JSON response back. It received a JSON response, but the '.
'response had extra whitespace at the beginning or end.'.
"\n\n".
'This usually means you have edited a file and left whitespace '.
'characters before the opening %s tag, or after a closing %s tag. '.
@ -199,11 +199,11 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
$actual_pass = idx($structure, 'pass');
if (($expect_user != $actual_user) || ($actual_pass != $expect_pass)) {
$message = pht(
'Phabricator sent itself a test request with an "Authorization" HTTP '.
'header, and expected those credentials to be transmitted. However, '.
'they were absent or incorrect when received. Phabricator sent '.
'username "%s" with password "%s"; received username "%s" and '.
'password "%s".'.
'This software sent itself a test request with an "Authorization" '.
'HTTP header, and expected those credentials to be transmitted. '.
'However, they were absent or incorrect when received. This '.
'software sent username "%s" with password "%s"; received '.
'username "%s" and password "%s".'.
"\n\n".
'Your webserver may not be configured to forward HTTP basic '.
'authentication. If you plan to use basic authentication (for '.
@ -222,13 +222,13 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
$actual_path = idx($structure, 'path');
if ($expect_path != $actual_path) {
$message = pht(
'Phabricator sent itself a test request with an unusual path, to '.
'This software sent itself a test request with an unusual path, to '.
'test if your webserver is rewriting paths correctly. The path was '.
'not transmitted correctly.'.
"\n\n".
'Phabricator sent a request to path "%s", and expected the webserver '.
'to decode and rewrite that path so that it received a request for '.
'"%s". However, it received a request for "%s" instead.'.
'This software sent a request to path "%s", and expected the '.
'webserver to decode and rewrite that path so that it received a '.
'request for "%s". However, it received a request for "%s" instead.'.
"\n\n".
'Verify that your rewrite rules are configured correctly, following '.
'the instructions in the documentation. If path encoding is not '.
@ -258,12 +258,12 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
if (($expect_key !== $actual_key) || ($expect_value !== $actual_value)) {
$message = pht(
'Phabricator sent itself a test request with an HTTP GET parameter, '.
'This software sent itself a test request with an HTTP GET parameter, '.
'but the parameter was not transmitted. Sent "%s" with value "%s", '.
'got "%s" with value "%s".'.
"\n\n".
'Your webserver is configured incorrectly and large parts of '.
'Phabricator will not work until this issue is corrected.'.
'this software will not work until this issue is corrected.'.
"\n\n".
'(This problem can be caused by a missing "QSA" in your RewriteRule.)',
$expect_key,
@ -320,7 +320,7 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
$message = array();
$message[] = pht(
'Phabricator sent itself a test request that was compressed with '.
'This software sent itself a test request that was compressed with '.
'"Content-Encoding: gzip", but received different bytes than it '.
'sent.');
@ -342,17 +342,17 @@ final class PhabricatorWebServerSetupCheck extends PhabricatorSetupCheck {
'compressed requests.');
$message[] = pht(
'The request body Phabricator sent began:');
'The request body that was sent began:');
$message[] = $this->snipBytes($compressed);
$message[] = pht(
'The request body Phabricator received began:');
'The request body that was received began:');
$message[] = $this->snipBytes($raw_body);
}
$message[] = pht(
'Identify the component in your webserver configuration which is '.
'decompressing or mangling requests and disable it. Phabricator '.
'decompressing or mangling requests and disable it. This software '.
'will not work properly until you do.');
$message = phutil_implode_html("\n\n", $message);

View file

@ -56,7 +56,7 @@ final class PhabricatorConfigConsoleController
->setBorder(true);
$box = id(new PHUIObjectBoxView())
->setHeaderText(pht('Phabricator Configuration'))
->setHeaderText(pht('Configuration'))
->setBackground(PHUIObjectBoxView::WHITE_CONFIG)
->setObjectList($menu);
@ -72,7 +72,7 @@ final class PhabricatorConfigConsoleController
->setFooter($launcher_view);
return $this->newPage()
->setTitle(pht('Phabricator Configuration'))
->setTitle(pht('Configuration'))
->setCrumbs($crumbs)
->appendChild($view);
}
@ -131,7 +131,7 @@ final class PhabricatorConfigConsoleController
));
return id(new PHUIObjectBoxView())
->setHeaderText(pht('Phabricator Version Information'))
->setHeaderText(pht('Version Information'))
->setBackground(PHUIObjectBoxView::BLUE_PROPERTY)
->appendChild($table_view);
}

View file

@ -207,7 +207,7 @@ final class PhabricatorConfigClusterDatabasesController
$table = id(new AphrontTableView($rows))
->setNoDataString(
pht('Phabricator is not configured in cluster mode.'))
pht('This server is not configured in cluster mode.'))
->setHeaders(
array(
null,

View file

@ -108,7 +108,7 @@ final class PhabricatorCustomLogoConfigType
$controls[] = id(new AphrontFormTextControl())
->setName('wordmarkText')
->setLabel(pht('Wordmark'))
->setPlaceholder(pht('Phabricator'))
->setPlaceholder(PlatformSymbols::getPlatformServerName())
->setValue($wordmark_text);
return $controls;

View file

@ -8,7 +8,7 @@ final class PhabricatorConfigEditor
}
public function getEditorObjectsDescription() {
return pht('Phabricator Configuration');
return pht('Configuration');
}
public function getTransactionTypes() {

View file

@ -8,7 +8,7 @@ final class PhabricatorClusterConfigOptions
}
public function getDescription() {
return pht('Configure Phabricator to run on a cluster of hosts.');
return pht('Configure services to run on a cluster of hosts.');
}
public function getIcon() {
@ -25,7 +25,7 @@ final class PhabricatorClusterConfigOptions
WARNING: This is a prototype option and the description below is currently pure
fantasy.
This option allows you to make Phabricator aware of database read replicas so
This option allows you to make this service aware of database read replicas so
it can monitor database health, spread load, and degrade gracefully to
read-only mode in the event of a failure on the primary host. For help with
configuring cluster databases, see **[[ %s | %s ]]** in the documentation.
@ -55,7 +55,7 @@ EOTEXT
->setSummary(pht('Address ranges of cluster hosts.'))
->setDescription(
pht(
'Define a Phabricator cluster by providing a whitelist of host '.
'Define a cluster by providing a whitelist of host '.
'addresses that are part of the cluster.'.
"\n\n".
'Hosts on this whitelist have special powers. These hosts are '.
@ -67,7 +67,7 @@ EOTEXT
'cluster and no additional hosts. See the examples below for '.
'details.'.
"\n\n".
'When cluster addresses are defined, Phabricator hosts will also '.
'When cluster addresses are defined, hosts will also '.
'reject requests to interfaces which are not whitelisted.',
$intro_href,
$intro_name))
@ -101,7 +101,7 @@ EOTEXT
'hosting providers running multi-tenant clusters.'.
"\n\n".
'If you provide an instance identifier here (normally by '.
'injecting it with a `%s`), Phabricator will pass it to '.
'injecting it with a `%s`), the server will pass it to '.
'subprocesses and commit hooks in the `%s` environmental variable.',
'PhabricatorConfigSiteSource',
'PHABRICATOR_INSTANCE')),
@ -115,7 +115,7 @@ EOTEXT
'WARNING: This is a prototype option and the description below '.
'is currently pure fantasy.'.
"\n\n".
'Switch Phabricator to read-only mode. In this mode, users will '.
'Switch the service to read-only mode. In this mode, users will '.
'be unable to write new data. Normally, the cluster degrades '.
'into this mode automatically when it detects that the database '.
'master is unreachable, but you can activate it manually in '.