mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-21 22:32:41 +01:00
Fix spelling
Summary: Noticed a couple of typos in the docs, and then things got out of hand. Test Plan: - Stared at the words until my eyes watered and the letters began to swim on the screen. - Consulted a dictionary. Reviewers: #blessed_reviewers, epriestley Reviewed By: #blessed_reviewers, epriestley Subscribers: epriestley, yelirekim, PHID-OPKG-gm6ozazyms6q6i22gyam Differential Revision: https://secure.phabricator.com/D18693
This commit is contained in:
parent
4fd9d2d4bb
commit
9bd6a37055
157 changed files with 204 additions and 204 deletions
|
@ -5,7 +5,7 @@ $root = dirname(dirname(dirname(__FILE__)));
|
|||
require_once $root.'/scripts/__init_script__.php';
|
||||
|
||||
$args = new PhutilArgumentParser($argv);
|
||||
$args->setTagline(pht('manage garbage colletors'));
|
||||
$args->setTagline(pht('manage garbage collectors'));
|
||||
$args->setSynopsis(<<<EOSYNOPSIS
|
||||
**garbage** __command__ [__options__]
|
||||
Manage garbage collectors.
|
||||
|
|
|
@ -160,7 +160,7 @@ abstract class AphrontHTTPParameterType extends Phobject {
|
|||
/**
|
||||
* Call another type's existence check.
|
||||
*
|
||||
* This method allows a type to reuse the exitence behavior of a different
|
||||
* This method allows a type to reuse the existence behavior of a different
|
||||
* type. For example, a "list of users" type may have the same basic
|
||||
* existence check that a simpler "list of strings" type has, and can just
|
||||
* call the simpler type to reuse its behavior.
|
||||
|
|
|
@ -204,7 +204,7 @@ final class AlmanacDeviceEditor
|
|||
$xaction);
|
||||
$errors[] = $error;
|
||||
} else {
|
||||
// TODO: Validate addresses, but IPv6 addresses are not trival
|
||||
// TODO: Validate addresses, but IPv6 addresses are not trivial
|
||||
// to validate.
|
||||
}
|
||||
|
||||
|
|
|
@ -63,7 +63,7 @@ final class PhabricatorAuditListView extends AphrontView {
|
|||
return $summary;
|
||||
}
|
||||
|
||||
// No summary, so either this is still impoting or just has an empty
|
||||
// No summary, so either this is still importing or just has an empty
|
||||
// commit message.
|
||||
|
||||
if (!$commit->isImported()) {
|
||||
|
|
|
@ -134,7 +134,7 @@ abstract class PhabricatorAuthController extends PhabricatorController {
|
|||
// checks later on to make sure this account is valid for the intended
|
||||
// operation. This requires edit permission for completeness and consistency
|
||||
// but it won't actually be meaningfully checked because we're using the
|
||||
// ominpotent user.
|
||||
// omnipotent user.
|
||||
|
||||
$account = id(new PhabricatorExternalAccountQuery())
|
||||
->setViewer(PhabricatorUser::getOmnipotentUser())
|
||||
|
|
|
@ -79,7 +79,7 @@ final class PhabricatorAuthRegisterController
|
|||
}
|
||||
|
||||
if ($default_email !== null) {
|
||||
// We should bypass policy here becase e.g. limiting an application use
|
||||
// We should bypass policy here because e.g. limiting an application use
|
||||
// to a subset of users should not allow the others to overwrite
|
||||
// configured application emails.
|
||||
$application_email = id(new PhabricatorMetaMTAApplicationEmailQuery())
|
||||
|
|
|
@ -226,7 +226,7 @@ final class PhabricatorAuthSSHKeyEditor
|
|||
->addHeader('Thread-Topic', $phid);
|
||||
|
||||
// The primary value of this mail is alerting users to account compromises,
|
||||
// so force delivery. In particular, this mail should still be delievered
|
||||
// so force delivery. In particular, this mail should still be delivered
|
||||
// even if "self mail" is disabled.
|
||||
$mail->setForceDelivery(true);
|
||||
|
||||
|
|
|
@ -51,7 +51,7 @@ final class PhabricatorAuthInviteTestCase extends PhabricatorTestCase {
|
|||
$caught = $ex;
|
||||
}
|
||||
|
||||
// This first time should accept the invite and verify the addresss.
|
||||
// This first time should accept the invite and verify the address.
|
||||
$this->assertTrue(
|
||||
($caught instanceof PhabricatorAuthInviteRegisteredException));
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@ final class PhabricatorAuthManagementRevokeWorkflow
|
|||
if (!strlen($from) && !$is_everywhere) {
|
||||
throw new PhutilArgumentUsageException(
|
||||
pht(
|
||||
'Specify the target to revoke credentals from with "--from" or '.
|
||||
'Specify the target to revoke credentials from with "--from" or '.
|
||||
'specify "--everywhere".'));
|
||||
} else if (strlen($from) && $is_everywhere) {
|
||||
throw new PhutilArgumentUsageException(
|
||||
|
|
|
@ -270,7 +270,7 @@ abstract class PhabricatorOAuth1AuthProvider
|
|||
}
|
||||
|
||||
private function getHandshakeTokenKeyFromClientCode($client_code) {
|
||||
// NOTE: This is very slightly coersive since the TemporaryToken table
|
||||
// NOTE: This is very slightly coercive since the TemporaryToken table
|
||||
// expects an "objectPHID" as an identifier, but nothing about the storage
|
||||
// is bound to PHIDs.
|
||||
|
||||
|
|
|
@ -108,7 +108,7 @@ abstract class PhabricatorApplication
|
|||
*
|
||||
* Launchable applications can be pinned to the home page, and show up in the
|
||||
* "Launcher" view of the Applications application. Making an application
|
||||
* unlauncahble prevents pinning and hides it from this view.
|
||||
* unlaunchable prevents pinning and hides it from this view.
|
||||
*
|
||||
* Usually, an application should be marked unlaunchable if:
|
||||
*
|
||||
|
|
|
@ -552,7 +552,7 @@ abstract class PhabricatorController extends AphrontController {
|
|||
|
||||
|
||||
public function buildApplicationCrumbsForEditEngine() {
|
||||
// TODO: This is kind of gross, I'm bascially just making this public so
|
||||
// TODO: This is kind of gross, I'm basically just making this public so
|
||||
// I can use it in EditEngine. We could do this without making it public
|
||||
// by using controller delegation, or make it properly public.
|
||||
return $this->buildApplicationCrumbs();
|
||||
|
|
|
@ -134,7 +134,7 @@ final class PhabricatorCalendarImportEditEngine
|
|||
$fields[] = id(new PhabricatorSelectEditField())
|
||||
->setKey('frequency')
|
||||
->setLabel(pht('Update Automatically'))
|
||||
->setDescription(pht('Configure an automatic update frequncy.'))
|
||||
->setDescription(pht('Configure an automatic update frequency.'))
|
||||
->setTransactionType(
|
||||
PhabricatorCalendarImportFrequencyTransaction::TRANSACTIONTYPE)
|
||||
->setConduitDescription(pht('Set the automatic update frequency.'))
|
||||
|
|
|
@ -16,7 +16,7 @@ final class PhabricatorCalendarIconSet
|
|||
'fa-plane' => pht('Travel'),
|
||||
'fa-plus-square' => pht('Health / Appointment'),
|
||||
|
||||
'fa-rocket' => pht('Sabatical / Leave'),
|
||||
'fa-rocket' => pht('Sabbatical / Leave'),
|
||||
'fa-home' => pht('Working From Home'),
|
||||
'fa-tree' => pht('Holiday'),
|
||||
'fa-gamepad' => pht('Staycation'),
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
* calendar views - one for the conpherence calendar widget and one for the
|
||||
* user profile calendar view. These have slight differences such as
|
||||
* conpherence showing both a three day "today 'til 2 days from now" *and*
|
||||
* a Sunday -> Saturday list, whilest the profile view shows a more simple
|
||||
* a Sunday -> Saturday list, whilst the profile view shows a more simple
|
||||
* seven day rolling list of events.
|
||||
*/
|
||||
final class CalendarTimeUtil extends Phobject {
|
||||
|
|
|
@ -23,7 +23,7 @@ final class PhabricatorCalendarEventFrequencyTransaction
|
|||
// month, it means "the 30th of every month" as far as the RRULE is
|
||||
// concerned. Such an event will not occur on months with fewer days.
|
||||
|
||||
// This is surprising, and proably not what the user wants. Instead,
|
||||
// This is surprising, and probably not what the user wants. Instead,
|
||||
// schedule these events relative to the end of the month: on the "-1st",
|
||||
// "-2nd" or "-3rd" day of the month. For example, a monthly event on
|
||||
// the 31st of a 31-day month translates to "every month, on the last
|
||||
|
@ -66,7 +66,7 @@ final class PhabricatorCalendarEventFrequencyTransaction
|
|||
if (!isset($valid[$value])) {
|
||||
$errors[] = $this->newInvalidError(
|
||||
pht(
|
||||
'Event frequency "%s" is not valid. Valid frequences are: %s.',
|
||||
'Event frequency "%s" is not valid. Valid frequencies are: %s.',
|
||||
$value,
|
||||
implode(', ', $valid)),
|
||||
$xaction);
|
||||
|
|
|
@ -132,7 +132,7 @@ final class PhabricatorCalendarEventInviteTransaction
|
|||
$this->renderHandleList($rem));
|
||||
} else {
|
||||
return pht(
|
||||
'%s invited %s attendee(s): %s; uninvinted %s attendee(s): %s.',
|
||||
'%s invited %s attendee(s): %s; uninvited %s attendee(s): %s.',
|
||||
$this->renderAuthor(),
|
||||
phutil_count($add),
|
||||
$this->renderHandleList($add),
|
||||
|
@ -161,7 +161,7 @@ final class PhabricatorCalendarEventInviteTransaction
|
|||
} else {
|
||||
return pht(
|
||||
'%s updated the invite list for %s, invited %s: %s; '.
|
||||
'uninvinted %s: %s.',
|
||||
'uninvited %s: %s.',
|
||||
$this->renderAuthor(),
|
||||
$this->renderObject(),
|
||||
phutil_count($add),
|
||||
|
|
|
@ -32,7 +32,7 @@ final class PhabricatorCalendarImportFrequencyTransaction
|
|||
if (!isset($valid[$value])) {
|
||||
$errors[] = $this->newInvalidError(
|
||||
pht(
|
||||
'Import frequency "%s" is not valid. Valid frequences are: %s.',
|
||||
'Import frequency "%s" is not valid. Valid frequencies are: %s.',
|
||||
$value,
|
||||
implode(', ', $valid)),
|
||||
$xaction);
|
||||
|
|
|
@ -85,7 +85,7 @@ final class PhabricatorStorageSetupCheck extends PhabricatorSetupCheck {
|
|||
'be buffered into memory before being written to permanent '.
|
||||
'storage. Phabricator needs memory available to store these '.
|
||||
'chunks while they are uploaded, but PHP is currently configured '.
|
||||
'to severly limit the available memory.'.
|
||||
'to severely limit the available memory.'.
|
||||
"\n\n".
|
||||
'PHP processes currently have very little free memory available '.
|
||||
'(%s). To work well, processes should have at least %s.'.
|
||||
|
|
|
@ -290,7 +290,7 @@ final class ConpherenceThreadQuery
|
|||
->withObjectPHIDs(array_keys($conpherences))
|
||||
->needHandles(true);
|
||||
|
||||
// We have to flip these for the underyling query class. The semantics of
|
||||
// We have to flip these for the underlying query class. The semantics of
|
||||
// paging are tricky business.
|
||||
if ($this->afterTransactionID) {
|
||||
$query->setBeforeID($this->afterTransactionID);
|
||||
|
|
|
@ -78,7 +78,7 @@ final class PhabricatorDashboardPanelTabsCustomField
|
|||
|
||||
public function renderEditControl(array $handles) {
|
||||
// NOTE: This includes archived panels so we don't mutate the tabs
|
||||
// when saving a tab panel that includes archied panels. This whole UI is
|
||||
// when saving a tab panel that includes archived panels. This whole UI is
|
||||
// hopefully temporary anyway.
|
||||
|
||||
$value = $this->getFieldValue();
|
||||
|
|
|
@ -217,7 +217,7 @@ abstract class DifferentialController extends PhabricatorController {
|
|||
// by default and let the user toggle the rest. With modern messages,
|
||||
// we can send the user to the Harbormaster detail page. Just show
|
||||
// "a lot" of messages in legacy cases to try to strike a balance
|
||||
// between implementation simplicitly and compatibility.
|
||||
// between implementation simplicity and compatibility.
|
||||
$legacy_messages = array_slice($legacy_messages, 0, 100);
|
||||
|
||||
$messages = array();
|
||||
|
|
|
@ -45,7 +45,7 @@ abstract class DifferentialHarbormasterField
|
|||
// by default and let the user toggle the rest. With modern messages,
|
||||
// we can send the user to the Harbormaster detail page. Just show
|
||||
// "a lot" of messages in legacy cases to try to strike a balance
|
||||
// between implementation simplicitly and compatibility.
|
||||
// between implementation simplicity and compatibility.
|
||||
$legacy_messages = array_slice($legacy_messages, 0, 100);
|
||||
|
||||
foreach ($legacy_messages as $message) {
|
||||
|
|
|
@ -106,7 +106,7 @@ final class DifferentialDiffEditor
|
|||
* We run Herald as part of transaction validation because Herald can
|
||||
* block diff creation for Differential diffs. Its important to do this
|
||||
* separately so no Herald logs are saved; these logs could expose
|
||||
* information the Herald rules are inteneded to block.
|
||||
* information the Herald rules are intended to block.
|
||||
*/
|
||||
protected function validateTransaction(
|
||||
PhabricatorLiskDAO $object,
|
||||
|
|
|
@ -699,7 +699,7 @@ final class DifferentialChangesetParser extends Phobject {
|
|||
$hunk_parser->parseHunksForLineData($changeset->getHunks());
|
||||
|
||||
// Depending on the whitespace mode, we may need to compute a different
|
||||
// set of changes than the set of changes in the hunk data (specificaly,
|
||||
// set of changes than the set of changes in the hunk data (specifically,
|
||||
// we might want to consider changed lines which have only whitespace
|
||||
// changes as unchanged).
|
||||
if ($ignore_all) {
|
||||
|
@ -1192,11 +1192,11 @@ final class DifferentialChangesetParser extends Phobject {
|
|||
* Mask - compute the actual lines that need to be shown (because they
|
||||
* are near changes lines, near inline comments, or the request has
|
||||
* explicitly asked for them, i.e. resulting from the user clicking
|
||||
* "show more"). The $mask returned is a sparesely populated dictionary
|
||||
* "show more"). The $mask returned is a sparsely populated dictionary
|
||||
* of $visible_line_number => true.
|
||||
*
|
||||
* Depths - compute how indented any given line is. The $depths returned
|
||||
* is a sparesely populated dictionary of $visible_line_number => $depth.
|
||||
* is a sparsely populated dictionary of $visible_line_number => $depth.
|
||||
*
|
||||
* This function also has the side effect of modifying member variable
|
||||
* new such that tabs are normalized to spaces for each line of the diff.
|
||||
|
|
|
@ -128,7 +128,7 @@ final class DifferentialModernHunk extends DifferentialHunk {
|
|||
$this->setData($file->getPHID());
|
||||
|
||||
// NOTE: Because hunks don't have a PHID and we just load hunk data with
|
||||
// the ominipotent viewer, we do not need to attach the file to anything.
|
||||
// the omnipotent viewer, we do not need to attach the file to anything.
|
||||
|
||||
$result = $this->save();
|
||||
|
||||
|
|
|
@ -442,7 +442,7 @@ final class DifferentialRevision extends DifferentialDAO
|
|||
|
||||
// For each path which the viewer owns a package for, find other packages
|
||||
// which that authority can be used to force-accept. Once we find a way to
|
||||
// force-accept a package, we don't need to keep loooking.
|
||||
// force-accept a package, we don't need to keep looking.
|
||||
$has_control = array();
|
||||
foreach ($force_map as $path => $spec) {
|
||||
$path_fragments = PhabricatorOwnersPackage::splitPath($path);
|
||||
|
@ -891,7 +891,7 @@ final class DifferentialRevision extends DifferentialDAO
|
|||
self::TABLE_COMMIT,
|
||||
$this->getID());
|
||||
|
||||
// we have to do paths a little differentally as they do not have
|
||||
// we have to do paths a little differently as they do not have
|
||||
// an id or phid column for delete() to act on
|
||||
$dummy_path = new DifferentialAffectedPath();
|
||||
queryfx(
|
||||
|
|
|
@ -22,7 +22,7 @@ final class DifferentialResponsibleViewerFunctionDatasource
|
|||
'summary' => pht('Use the current viewing user.'),
|
||||
'description' => pht(
|
||||
'Show revisions the current viewer is responsible for. This '.
|
||||
'function inclues revisions the viewer is responsible for through '.
|
||||
'function includes revisions the viewer is responsible for through '.
|
||||
'membership in projects and packages.'),
|
||||
),
|
||||
);
|
||||
|
|
|
@ -479,7 +479,7 @@ final class DiffusionCommitController extends DiffusionController {
|
|||
// chains of events). This should be rare, but does not indicate a bug
|
||||
// or data issue.
|
||||
|
||||
// NOTE: We never query push logs in SVN because the commiter is always
|
||||
// NOTE: We never query push logs in SVN because the committer is always
|
||||
// the pusher and the commit time is always the push time; the push log
|
||||
// is redundant and we save a query by skipping it.
|
||||
|
||||
|
|
|
@ -338,7 +338,7 @@ final class DiffusionRepositoryEditEngine
|
|||
->setIsCopyable(true)
|
||||
->setDescription(pht('Track only these branches.'))
|
||||
->setConduitDescription(pht('Set the tracked branches.'))
|
||||
->setConduitTypeDescription(pht('New tracked branchs.'))
|
||||
->setConduitTypeDescription(pht('New tracked branches.'))
|
||||
->setValue($track_value),
|
||||
id(new PhabricatorTextAreaEditField())
|
||||
->setIsStringList(true)
|
||||
|
@ -349,7 +349,7 @@ final class DiffusionRepositoryEditEngine
|
|||
->setIsCopyable(true)
|
||||
->setDescription(pht('Autoclose commits on only these branches.'))
|
||||
->setConduitDescription(pht('Set the autoclose branches.'))
|
||||
->setConduitTypeDescription(pht('New default tracked branchs.'))
|
||||
->setConduitTypeDescription(pht('New default tracked branches.'))
|
||||
->setValue($autoclose_value),
|
||||
id(new PhabricatorTextEditField())
|
||||
->setKey('importOnly')
|
||||
|
@ -396,7 +396,7 @@ final class DiffusionRepositoryEditEngine
|
|||
->setConduitDescription(
|
||||
pht('Change symbol languages for this repository.'))
|
||||
->setConduitTypeDescription(
|
||||
pht('New symbol langauges.'))
|
||||
pht('New symbol languages.'))
|
||||
->setValue($object->getSymbolLanguages()),
|
||||
id(new PhabricatorDatasourceEditField())
|
||||
->setKey('symbolRepositoryPHIDs')
|
||||
|
|
|
@ -1230,7 +1230,7 @@ final class DiffusionCommitHookEngine extends Phobject {
|
|||
// also look at author data (do the commits come from multiple different
|
||||
// authors?) and commit date data (is the oldest commit more than 48 hours
|
||||
// old), but we don't have immediate access to those and this simple
|
||||
// heruistic might be good enough.
|
||||
// heuristic might be good enough.
|
||||
|
||||
$commit_count = 0;
|
||||
$type_commit = PhabricatorRepositoryPushLog::REFTYPE_COMMIT;
|
||||
|
|
|
@ -80,7 +80,7 @@ final class DiffusionGitLFSAuthenticateWorkflow
|
|||
|
||||
$lfs_uri = $repository->getGitLFSURI('info/lfs');
|
||||
|
||||
// Generate a temporary token to allow the user to acces LFS over HTTP.
|
||||
// Generate a temporary token to allow the user to access LFS over HTTP.
|
||||
// This works even if normal HTTP repository operations are not available
|
||||
// on this host, and does not require the user to have a VCS password.
|
||||
|
||||
|
|
|
@ -112,7 +112,7 @@ final class HeraldCommitAdapter
|
|||
$phids[] = $repository_phid;
|
||||
|
||||
// NOTE: This is projects for the repository, not for the commit. When
|
||||
// Herald evalutes, commits normally can not have any project tags yet.
|
||||
// Herald evaluates, commits normally can not have any project tags yet.
|
||||
$repository_project_phids = PhabricatorEdgeQuery::loadDestinationPHIDs(
|
||||
$repository_phid,
|
||||
$project_type);
|
||||
|
|
|
@ -178,7 +178,7 @@ abstract class DiffusionCommandEngine extends Phobject {
|
|||
if (!$device) {
|
||||
throw new Exception(
|
||||
pht(
|
||||
'Attempting to build a reposiory command (for repository "%s") '.
|
||||
'Attempting to build a repository command (for repository "%s") '.
|
||||
'as device, but this host ("%s") is not configured as a cluster '.
|
||||
'device.',
|
||||
$repository->getDisplayName(),
|
||||
|
|
|
@ -101,7 +101,7 @@ final class DiffusionMercurialWireProtocol extends Phobject {
|
|||
|
||||
/** If the server version is running 3.4+ it will respond
|
||||
* with 'bundle2' capability in the format of "bundle2=(url-encoding)".
|
||||
* Until we maange to properly package up bundles to send back we
|
||||
* Until we manage to properly package up bundles to send back we
|
||||
* disallow the client from knowing we speak bundle2 by removing it
|
||||
* from the capabilities listing.
|
||||
*
|
||||
|
|
|
@ -231,7 +231,7 @@ final class DiffusionRepositoryClusterEngine extends Phobject {
|
|||
// no way to tell which one has the "right" data. If we pick wrong, we
|
||||
// might erase some or all of the data in the repository.
|
||||
|
||||
// Since this is dangeorus, we refuse to guess unless there is only one
|
||||
// Since this is dangerous, we refuse to guess unless there is only one
|
||||
// device. If we're the only device in the group, we obviously must be
|
||||
// a leader.
|
||||
|
||||
|
@ -252,7 +252,7 @@ final class DiffusionRepositoryClusterEngine extends Phobject {
|
|||
'Repository "%s" exists on more than one device, but no device '.
|
||||
'has any repository version information. Phabricator can not '.
|
||||
'guess which copy of the existing data is authoritative. Promote '.
|
||||
'a device or see "Ambigous Leaders" in the documentation.',
|
||||
'a device or see "Ambiguous Leaders" in the documentation.',
|
||||
$repository->getDisplayName()));
|
||||
}
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
* low-level query can.
|
||||
*
|
||||
* This class can resolve the most common refs (commits, branches, tags) and
|
||||
* can do so cheapy (by examining the database, without needing to make calls
|
||||
* can do so cheaply (by examining the database, without needing to make calls
|
||||
* to the VCS or the service host).
|
||||
*/
|
||||
final class DiffusionCachedResolveRefsQuery
|
||||
|
|
|
@ -69,7 +69,7 @@ final class DiffusionCommitQuery
|
|||
|
||||
/**
|
||||
* Look up commits in a specific repository. Prefer
|
||||
* @{method:withRepositoryIDs}; the underyling table is keyed by ID such
|
||||
* @{method:withRepositoryIDs}; the underlying table is keyed by ID such
|
||||
* that this method requires a separate initial query to map PHID to ID.
|
||||
*/
|
||||
public function withRepositoryPHIDs(array $phids) {
|
||||
|
|
|
@ -53,7 +53,7 @@ final class DiffusionCommitConcernTransaction
|
|||
}
|
||||
|
||||
// Even if you've already raised a concern, you can raise again as long
|
||||
// as the author requsted you verify.
|
||||
// as the author requested you verify.
|
||||
$state_verify = PhabricatorAuditCommitStatusConstants::NEEDS_VERIFICATION;
|
||||
|
||||
if ($this->isViewerFullyRejected($object, $viewer)) {
|
||||
|
|
|
@ -53,7 +53,7 @@ final class DiffusionCommitVerifyTransaction
|
|||
throw new Exception(
|
||||
pht(
|
||||
'You can not request verification of this commit because no '.
|
||||
'auditors have raised conerns with it.'));
|
||||
'auditors have raised concerns with it.'));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -64,7 +64,7 @@ abstract class DrydockBlueprintImplementation extends Phobject {
|
|||
* is a coarse compatibility check between a lease and a resource.
|
||||
*
|
||||
* @param DrydockBlueprint Concrete blueprint to allocate for.
|
||||
* @param DrydockResource Candidiate resource to allocate the lease on.
|
||||
* @param DrydockResource Candidate resource to allocate the lease on.
|
||||
* @param DrydockLease Pending lease that wants to allocate here.
|
||||
* @return bool True if the resource and lease are compatible.
|
||||
* @task lease
|
||||
|
@ -76,7 +76,7 @@ abstract class DrydockBlueprintImplementation extends Phobject {
|
|||
|
||||
|
||||
/**
|
||||
* Acquire a lease. Allows resources to peform setup as leases are brought
|
||||
* Acquire a lease. Allows resources to perform setup as leases are brought
|
||||
* online.
|
||||
*
|
||||
* If acquisition fails, throw an exception.
|
||||
|
|
|
@ -100,7 +100,7 @@ final class DrydockAuthorization extends DrydockDAO
|
|||
}
|
||||
|
||||
/**
|
||||
* Apply external authorization effects after a user chagnes the value of a
|
||||
* Apply external authorization effects after a user changes the value of a
|
||||
* blueprint selector control an object.
|
||||
*
|
||||
* @param PhabricatorUser User applying the change.
|
||||
|
|
|
@ -241,7 +241,7 @@ final class DrydockLeaseUpdateWorker extends DrydockWorker {
|
|||
// NOTE: We have not acquired the lease yet, so it is possible that the
|
||||
// resource we just built will be snatched up by some other lease before
|
||||
// we can acquire it. This is not problematic: we'll retry a little later
|
||||
// and should suceed eventually.
|
||||
// and should succeed eventually.
|
||||
}
|
||||
|
||||
$resources = $this->rankResources($resources, $lease);
|
||||
|
@ -261,7 +261,7 @@ final class DrydockLeaseUpdateWorker extends DrydockWorker {
|
|||
if (!$allocated) {
|
||||
throw new PhutilAggregateException(
|
||||
pht(
|
||||
'Unable to acquire lease "%s" on any resouce.',
|
||||
'Unable to acquire lease "%s" on any resource.',
|
||||
$lease->getPHID()),
|
||||
$exceptions);
|
||||
}
|
||||
|
@ -725,7 +725,7 @@ final class DrydockLeaseUpdateWorker extends DrydockWorker {
|
|||
// performed the read above and now, the resource might have closed, so
|
||||
// we may activate leases on dead resources. At least for now, this seems
|
||||
// fine: a resource dying right before we activate a lease on it should not
|
||||
// be distinguisahble from a resource dying right after we activate a lease
|
||||
// be distinguishable from a resource dying right after we activate a lease
|
||||
// on it. We end up with an active lease on a dead resource either way, and
|
||||
// can not prevent resources dying from lightning strikes.
|
||||
|
||||
|
|
|
@ -199,7 +199,7 @@ abstract class DrydockWorker extends PhabricatorWorker {
|
|||
$viewer = $this->getViewer();
|
||||
|
||||
// Don't reclaim a resource if it has been updated recently. If two
|
||||
// leases are fighting, we don't want them to keep reclaming resources
|
||||
// leases are fighting, we don't want them to keep reclaiming resources
|
||||
// from one another forever without making progress, so make resources
|
||||
// immune to reclamation for a little while after they activate or update.
|
||||
|
||||
|
|
|
@ -119,7 +119,7 @@ final class PhabricatorFileDataController extends PhabricatorFileController {
|
|||
// make this logic simpler and more consistent.
|
||||
|
||||
// Beyond making the policy check itself more consistent, this also makes
|
||||
// sure we're consitent about returning HTTP 404 on bad requests instead
|
||||
// sure we're consistent about returning HTTP 404 on bad requests instead
|
||||
// of serving HTTP 200 with a login page, which can mislead some clients.
|
||||
|
||||
$viewer = PhabricatorUser::getOmnipotentUser();
|
||||
|
|
|
@ -24,7 +24,7 @@ final class PhabricatorFilesManagementCatWorkflow
|
|||
'help' => pht(
|
||||
'DANGEROUS. Attempt to salvage file content even if the '.
|
||||
'integrity check fails. If an adversary has tampered with '.
|
||||
'the file, the conent may be unsafe.'),
|
||||
'the file, the content may be unsafe.'),
|
||||
),
|
||||
array(
|
||||
'name' => 'names',
|
||||
|
|
|
@ -50,7 +50,7 @@ final class FundInitiativeEditEngine
|
|||
}
|
||||
|
||||
protected function getObjectName() {
|
||||
return pht('Initivative');
|
||||
return pht('Initiative');
|
||||
}
|
||||
|
||||
protected function getObjectCreateCancelURI($object) {
|
||||
|
|
|
@ -142,7 +142,7 @@ final class HarbormasterSendMessageConduitAPIMethod
|
|||
"=============\n".
|
||||
"When you send Harbormaster a message, you must include a `type`, ".
|
||||
"which describes the overall state of the build. For example, use ".
|
||||
"`pass` to tell Harbomaster that a build completed successfully.".
|
||||
"`pass` to tell Harbormaster that a build completed successfully.".
|
||||
"\n\n".
|
||||
"Supported message types are:".
|
||||
"\n\n".
|
||||
|
@ -155,7 +155,7 @@ final class HarbormasterSendMessageConduitAPIMethod
|
|||
"message, but you can also send a `work` message to report intermediate ".
|
||||
"results.\n\n".
|
||||
"To provide unit test results, pass a list of results in the `unit` ".
|
||||
"parameter. Each result shoud be a dictionary with these keys:".
|
||||
"parameter. Each result should be a dictionary with these keys:".
|
||||
"\n\n".
|
||||
"%s".
|
||||
"\n\n".
|
||||
|
|
|
@ -38,7 +38,7 @@ final class HarbormasterBuildStep extends HarbormasterDAO
|
|||
// T6203/NULLABILITY
|
||||
// This should not be nullable. Current `null` values indicate steps
|
||||
// which predated editable names. These should be backfilled with
|
||||
// default names, then the code for handling `null` shoudl be removed.
|
||||
// default names, then the code for handling `null` should be removed.
|
||||
'name' => 'text255?',
|
||||
'stepAutoKey' => 'text32?',
|
||||
),
|
||||
|
|
|
@ -236,7 +236,7 @@ final class LegalpadDocumentSignController extends LegalpadController {
|
|||
|
||||
// Use the last content update as the modified date. We don't want to
|
||||
// show that a document like a TOS was "updated" by an incidental change
|
||||
// to a field like the preamble or privacy settings which does not acutally
|
||||
// to a field like the preamble or privacy settings which does not actually
|
||||
// affect the content of the agreement.
|
||||
$content_updated = $document_body->getDateCreated();
|
||||
|
||||
|
|
|
@ -116,7 +116,7 @@ final class ManiphestReportController extends ManiphestController {
|
|||
case ManiphestTaskMergedIntoTransaction::TRANSACTIONTYPE:
|
||||
// NOTE: Merging a task does not generate a "status" transaction.
|
||||
// We pretend it did. Note that this is not always accurate: it is
|
||||
// possble to merge a task which was previously closed, but this
|
||||
// possible to merge a task which was previously closed, but this
|
||||
// fake transaction always counts a merge as a closure.
|
||||
$oldv = $default_status;
|
||||
$newv = $duplicate_status;
|
||||
|
@ -762,7 +762,7 @@ final class ManiphestReportController extends ManiphestController {
|
|||
// and equal distance in the past. This is so users can type "6 days" (which
|
||||
// means "6 days from now") and get the behavior of "6 days ago", rather
|
||||
// than no results (because the window epoch is in the future). This might
|
||||
// be a little confusing because it casues "tomorrow" to mean "yesterday"
|
||||
// be a little confusing because it causes "tomorrow" to mean "yesterday"
|
||||
// and "2022" (or whatever) to mean "ten years ago", but these inputs are
|
||||
// nonsense anyway.
|
||||
|
||||
|
|
|
@ -972,7 +972,7 @@ final class ManiphestTransactionEditor
|
|||
|
||||
$object_phid = $object->getPHID();
|
||||
|
||||
// We're doing layout with the ominpotent viewer to make sure we don't
|
||||
// We're doing layout with the omnipotent viewer to make sure we don't
|
||||
// remove positions in columns that exist, but which the actual actor
|
||||
// can't see.
|
||||
$omnipotent_viewer = PhabricatorUser::getOmnipotentUser();
|
||||
|
|
|
@ -63,7 +63,7 @@ final class PhabricatorMailManagementUnverifyWorkflow
|
|||
echo tsprintf(
|
||||
"%s\n",
|
||||
pht(
|
||||
'Address "%s" (owned by "%s") is already unveriifed.',
|
||||
'Address "%s" (owned by "%s") is already unverified.',
|
||||
$address,
|
||||
$user->getUsername()));
|
||||
continue;
|
||||
|
|
|
@ -255,7 +255,7 @@ abstract class PhabricatorMailReceiver extends Phobject {
|
|||
|
||||
|
||||
/**
|
||||
* Reduce an email address to its canonical form. For example, an adddress
|
||||
* Reduce an email address to its canonical form. For example, an address
|
||||
* like:
|
||||
*
|
||||
* "Abraham Lincoln" < ALincoln@example.com >
|
||||
|
|
|
@ -82,7 +82,7 @@ final class PhabricatorOwnersPackageTestCase extends PhabricatorTestCase {
|
|||
|
||||
// Now, add a more specific path to Package #1. This tests nested ownership
|
||||
// in packages with weak dominion rules. This time, Package #1 should end
|
||||
// up back on top, with Package #2 cedeing control to its more specific
|
||||
// up back on top, with Package #2 ceding control to its more specific
|
||||
// path.
|
||||
$rows[] = array(
|
||||
'id' => 1,
|
||||
|
|
|
@ -104,7 +104,7 @@ abstract class PassphraseCredentialType extends Phobject {
|
|||
|
||||
|
||||
/**
|
||||
* Return true if the provided credental requires a password to decrypt.
|
||||
* Return true if the provided credential requires a password to decrypt.
|
||||
*
|
||||
* @param PhutilOpaqueEnvelope Credential secret value.
|
||||
* @return bool True if the credential needs a password.
|
||||
|
|
|
@ -67,7 +67,7 @@ final class PassphraseCredentialControl extends AphrontFormControl {
|
|||
$user_credential->getName());
|
||||
}
|
||||
} catch (PhabricatorPolicyException $policy_exception) {
|
||||
// Pull the credential with the ominipotent viewer so we can look up
|
||||
// Pull the credential with the omnipotent viewer so we can look up
|
||||
// the ID and provide the monogram.
|
||||
$omnipotent_credential = id(new PassphraseCredentialQuery())
|
||||
->setViewer(PhabricatorUser::getOmnipotentUser())
|
||||
|
|
|
@ -10,7 +10,7 @@ final class PhabricatorMentionRemarkupRule extends PhutilRemarkupRule {
|
|||
|
||||
// NOTE: The negative lookbehind prevents matches like "mail@lists", while
|
||||
// allowing constructs like "@tomo/@mroch". Since we now allow periods in
|
||||
// usernames, we can't resonably distinguish that "@company.com" isn't a
|
||||
// usernames, we can't reasonably distinguish that "@company.com" isn't a
|
||||
// username, so we'll incorrectly pick it up, but there's little to be done
|
||||
// about that. We forbid terminal periods so that we can correctly capture
|
||||
// "@joe" instead of "@joe." in "Hey, @joe.".
|
||||
|
|
|
@ -425,7 +425,7 @@ final class PhabricatorPeopleQuery
|
|||
}
|
||||
|
||||
// If the user is set to "Available" for this event, don't consider it
|
||||
// when computin their away status.
|
||||
// when computing their away status.
|
||||
if (!$invitee->getDisplayAvailability($event)) {
|
||||
continue;
|
||||
}
|
||||
|
@ -492,7 +492,7 @@ final class PhabricatorPeopleQuery
|
|||
// valid for that long.
|
||||
|
||||
// NOTE: This doesn't handle overlapping events with the greatest
|
||||
// possible care. In theory, if you're attenting multiple events
|
||||
// possible care. In theory, if you're attending multiple events
|
||||
// simultaneously we should accommodate that. However, it's complex
|
||||
// to compute, rare, and probably not confusing most of the time.
|
||||
|
||||
|
|
|
@ -79,7 +79,7 @@ final class PhabricatorPeopleSearchEngine
|
|||
->setOptions(
|
||||
pht('(Show All)'),
|
||||
pht('Show Only Unapproved Users'),
|
||||
pht('Hide Unappproved Users'))
|
||||
pht('Hide Unapproved Users'))
|
||||
->setDescription(
|
||||
pht(
|
||||
'Pass true to find only users awaiting administrative approval, '.
|
||||
|
|
|
@ -407,7 +407,7 @@ final class PhabricatorUser
|
|||
$token = substr($token, $breach_prelen + self::CSRF_SALT_LENGTH);
|
||||
|
||||
// When the user posts a form, we check that it contains a valid CSRF token.
|
||||
// Tokens cycle each hour (every CSRF_CYLCE_FREQUENCY seconds) and we accept
|
||||
// Tokens cycle each hour (every CSRF_CYCLE_FREQUENCY seconds) and we accept
|
||||
// either the current token, the next token (users can submit a "future"
|
||||
// token if you have two web frontends that have some clock skew) or any of
|
||||
// the last 6 tokens. This means that pages are valid for up to 7 hours.
|
||||
|
@ -1180,7 +1180,7 @@ final class PhabricatorUser
|
|||
/**
|
||||
* Get a scalar string identifying this user.
|
||||
*
|
||||
* This is similar to using the PHID, but distinguishes between ominpotent
|
||||
* This is similar to using the PHID, but distinguishes between omnipotent
|
||||
* and public users explicitly. This allows safe construction of cache keys
|
||||
* or cache buckets which do not conflate public and omnipotent users.
|
||||
*
|
||||
|
@ -1459,7 +1459,7 @@ final class PhabricatorUser
|
|||
id(new PhabricatorConduitSearchFieldSpecification())
|
||||
->setKey('roles')
|
||||
->setType('list<string>')
|
||||
->setDescription(pht('List of acccount roles.')),
|
||||
->setDescription(pht('List of account roles.')),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -82,7 +82,7 @@ final class PhabricatorHandleList
|
|||
if (!isset($this[$phid])) {
|
||||
throw new Exception(
|
||||
pht(
|
||||
'Trying to create a new sublist of an existsing handle list, '.
|
||||
'Trying to create a new sublist of an existing handle list, '.
|
||||
'but PHID "%s" does not appear in the parent list.',
|
||||
$phid));
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
/**
|
||||
* Resolve a list of identifiers into PHIDs.
|
||||
*
|
||||
* This class simplifies the process of convering a list of mixed token types
|
||||
* This class simplifies the process of converting a list of mixed token types
|
||||
* (like some PHIDs and some usernames) into a list of just PHIDs.
|
||||
*/
|
||||
abstract class PhabricatorPHIDResolver extends Phobject {
|
||||
|
|
|
@ -361,7 +361,7 @@ final class PhortuneStripePaymentProvider extends PhortunePaymentProvider {
|
|||
case 'error:duplicate_transaction':
|
||||
case 'error:processing_error':
|
||||
default:
|
||||
// NOTE: These errors currently don't recevive a detailed message.
|
||||
// NOTE: These errors currently don't receive a detailed message.
|
||||
// NOTE: We can also end up here with "http:nnn" messages.
|
||||
|
||||
// TODO: At least some of these should have a better message, or be
|
||||
|
|
|
@ -124,7 +124,7 @@ final class PhrequentTimeBlock extends Phobject {
|
|||
}
|
||||
} else {
|
||||
// Here, we've prematurely ended a deeper stratum. Merge higher
|
||||
// stata. This looks like this:
|
||||
// strata. This looks like this:
|
||||
//
|
||||
// V
|
||||
// V
|
||||
|
|
|
@ -452,7 +452,7 @@ final class PhrictionTransactionEditor
|
|||
$verb) {
|
||||
|
||||
$errors = array();
|
||||
// NOTE: We use the ominpotent user for these checks because policy
|
||||
// NOTE: We use the omnipotent user for these checks because policy
|
||||
// doesn't matter; existence does.
|
||||
$other_doc_viewer = PhabricatorUser::getOmnipotentUser();
|
||||
$ancestral_slugs = PhabricatorSlug::getAncestry($object->getSlug());
|
||||
|
|
|
@ -257,7 +257,7 @@ final class PhabricatorPolicyFilter extends Phobject {
|
|||
$filtered[$key] = $object;
|
||||
}
|
||||
|
||||
// If we survied the primary checks, apply extended checks to objects
|
||||
// If we survived the primary checks, apply extended checks to objects
|
||||
// with extended policies.
|
||||
$results = array();
|
||||
$extended = array();
|
||||
|
|
|
@ -97,7 +97,7 @@ final class PhabricatorProjectColumnQuery
|
|||
if ($proxy_phid !== null) {
|
||||
$proxy = idx($proxies, $proxy_phid);
|
||||
|
||||
// Only attach valid proxies, so we don't end up getting surprsied if
|
||||
// Only attach valid proxies, so we don't end up getting surprised if
|
||||
// an install somehow gets junk into their database.
|
||||
if (!($proxy instanceof PhabricatorColumnProxyInterface)) {
|
||||
$proxy = null;
|
||||
|
|
|
@ -24,7 +24,7 @@ final class ProjectRemarkupRule extends PhabricatorObjectRemarkupRule {
|
|||
protected function getObjectIDPattern() {
|
||||
// NOTE: The latter half of this rule matches monograms with internal
|
||||
// periods, like `#domain.com`, but does not match monograms with terminal
|
||||
// periods, because they're probably just puncutation.
|
||||
// periods, because they're probably just punctuation.
|
||||
|
||||
// Broadly, this will not match every possible project monogram, and we
|
||||
// accept some false negatives -- like `#dot.` -- in order to avoid a bunch
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
*
|
||||
* 1: To parse "Releeph: picks RQ<nn>" headers in commits created by
|
||||
* arc-releeph so that RQs committed by arc-releeph have real
|
||||
* PhabricatorRepositoryCommits associated with them (instaed of just the SHA
|
||||
* PhabricatorRepositoryCommits associated with them (instead of just the SHA
|
||||
* of the commit, as seen by the pusher).
|
||||
*
|
||||
* 2: If requestors want to commit directly to their release branch, they can
|
||||
|
|
|
@ -7,7 +7,7 @@ final class ReleephDefaultFieldSelector extends ReleephFieldSelector {
|
|||
*
|
||||
* TODO: This is a giant hacky mess because I am dumb and moved forward on
|
||||
* Releeph changes with partial information. Recover from this as gracefully
|
||||
* as possible. This obivously is an abomination. -epriestley
|
||||
* as possible. This obviously is an abomination. -epriestley
|
||||
*/
|
||||
public static function isFacebook() {
|
||||
return class_exists('ReleephFacebookKarmaFieldSpecification');
|
||||
|
|
|
@ -113,7 +113,7 @@ final class PhabricatorMercurialGraphStream
|
|||
private function parseParents($parents, $target_rev) {
|
||||
|
||||
// The hg '{parents}' token is empty if there is one "natural" parent
|
||||
// (predecessor local commit ID). Othwerwise, it may have one or two
|
||||
// (predecessor local commit ID). Otherwise, it may have one or two
|
||||
// parents. The string looks like this:
|
||||
//
|
||||
// 151:1f6c61a60586 154:1d5f799ebe1e
|
||||
|
|
|
@ -27,10 +27,10 @@
|
|||
* // URIs are very unlikely to be the same repository.
|
||||
* }
|
||||
*
|
||||
* Because a repository can be hosted at arbitrarly many arbitrary URIs, there
|
||||
* Because a repository can be hosted at arbitrarily many arbitrary URIs, there
|
||||
* is no way to completely prevent false negatives by only examining URIs
|
||||
* (that is, repositories with totally different URIs could really be the same).
|
||||
* However, normalization is relatively agressive and false negatives should
|
||||
* However, normalization is relatively aggressive and false negatives should
|
||||
* be rare: if normalization says two URIs are different repositories, they
|
||||
* probably are.
|
||||
*
|
||||
|
|
|
@ -703,7 +703,7 @@ final class PhabricatorRepositoryDiscoveryEngine
|
|||
// new repository for the first time is less important than any other
|
||||
// daemon task.
|
||||
|
||||
// If the repostitory has finished importing and we're just catching up
|
||||
// If the repository has finished importing and we're just catching up
|
||||
// on recent commits, we schedule discovery at COMMIT priority, which is
|
||||
// slightly below the default priority.
|
||||
|
||||
|
|
|
@ -90,7 +90,7 @@ final class PhabricatorRepositoryManagementThawWorkflow
|
|||
$risk_message);
|
||||
|
||||
$is_force = $args->getArg('force');
|
||||
$prompt = pht('Accept the possibilty of permanent data loss?');
|
||||
$prompt = pht('Accept the possibility of permanent data loss?');
|
||||
if (!$is_force && !phutil_console_confirm($prompt)) {
|
||||
throw new PhutilArgumentUsageException(
|
||||
pht('User aborted the workflow.'));
|
||||
|
|
|
@ -1875,7 +1875,7 @@ final class PhabricatorRepository extends PhabricatorRepositoryDAO
|
|||
|
||||
|
||||
/**
|
||||
* Retrieve the sevice URI for the device hosting this repository.
|
||||
* Retrieve the service URI for the device hosting this repository.
|
||||
*
|
||||
* See @{method:newConduitClient} for a general discussion of interacting
|
||||
* with repository services. This method provides lower-level resolution of
|
||||
|
@ -2129,7 +2129,7 @@ final class PhabricatorRepository extends PhabricatorRepositoryDAO
|
|||
if ($this->isGit()) {
|
||||
// $_ENV does not populate in CLI contexts if "E" is missing from
|
||||
// "variables_order" in PHP config. Currently, we do not require this
|
||||
// to be configured. Since it may not be, explictitly bring expected Git
|
||||
// to be configured. Since it may not be, explicitly bring expected Git
|
||||
// environmental variables into scope. This list is not exhaustive, but
|
||||
// only lists variables with a known impact on commit hook behavior.
|
||||
|
||||
|
|
|
@ -362,7 +362,7 @@ final class PhabricatorRepositoryURI
|
|||
return PhabricatorEnv::getEnvConfig('diffusion.ssh-port');
|
||||
}
|
||||
|
||||
// If Phabricator is running on a nonstandard port, use that as the defualt
|
||||
// If Phabricator is running on a nonstandard port, use that as the default
|
||||
// port for URIs with the same protocol.
|
||||
|
||||
$is_http = ($protocol == self::BUILTIN_PROTOCOL_HTTP);
|
||||
|
|
|
@ -66,7 +66,7 @@ final class PhabricatorRepositoryWorkingCopyVersion
|
|||
* may have committed and acknowledged a write on a node that lost the lock
|
||||
* partway through the write and is no longer reachable.
|
||||
*
|
||||
* In particular, if a node loses its connection to the datbase the global
|
||||
* In particular, if a node loses its connection to the database the global
|
||||
* lock is released by default. This is a durable lock which stays locked
|
||||
* by default.
|
||||
*/
|
||||
|
|
|
@ -216,7 +216,7 @@ final class PhabricatorRepositoryMercurialCommitChangeParserWorker
|
|||
$changes[$path]['changeType']
|
||||
= DifferentialChangeType::TYPE_COPY_AWAY;
|
||||
} else if ($existing_type == DifferentialChangeType::TYPE_ADD) {
|
||||
// This change removes a diretory and replaces it with a file. Mark
|
||||
// This change removes a directory and replaces it with a file. Mark
|
||||
// it as "change" instead of "add".
|
||||
$changes[$path]['changeType'] = DifferentialChangeType::TYPE_CHANGE;
|
||||
}
|
||||
|
|
|
@ -359,7 +359,7 @@ abstract class PhabricatorApplicationSearchEngine extends Phobject {
|
|||
* );
|
||||
*
|
||||
* Any unspecified fields (including custom fields and fields added
|
||||
* automatically by infrastruture) will be put in the middle.
|
||||
* automatically by infrastructure) will be put in the middle.
|
||||
*
|
||||
* @return list<string> Default ordering for field keys.
|
||||
*/
|
||||
|
|
|
@ -5,7 +5,7 @@ abstract class PhabricatorSearchManagementWorkflow
|
|||
|
||||
protected function validateClusterSearchConfig() {
|
||||
// Configuration is normally validated by setup self-checks on the web
|
||||
// workflow, but users may reasonsably run `bin/search` commands after
|
||||
// workflow, but users may reasonably run `bin/search` commands after
|
||||
// making manual edits to "local.json". Re-verify configuration here before
|
||||
// continuing.
|
||||
|
||||
|
|
|
@ -80,7 +80,7 @@ final class PhabricatorMotivatorProfileMenuItem
|
|||
private function getCatFacts() {
|
||||
return array(
|
||||
pht('Cats purr when they are happy, upset, or asleep.'),
|
||||
pht('The first cats evolved on the savanah about 8,000 years ago.'),
|
||||
pht('The first cats evolved on the savannah about 8,000 years ago.'),
|
||||
pht(
|
||||
'Cats have a tail, two feet, between one and three ears, and two '.
|
||||
'other feet.'),
|
||||
|
@ -111,7 +111,7 @@ final class PhabricatorMotivatorProfileMenuItem
|
|||
pht(
|
||||
'Not all cats can retract their claws, but most of them can.'),
|
||||
pht(
|
||||
'In the wild, cats and racoons sometimes hunt together in packs.'),
|
||||
'In the wild, cats and raccoons sometimes hunt together in packs.'),
|
||||
pht(
|
||||
'The Spanish word for cat is "cato". The biggest cat is called '.
|
||||
'"el cato".'),
|
||||
|
|
|
@ -143,7 +143,7 @@ abstract class PhabricatorSettingsPanel extends Phobject {
|
|||
/**
|
||||
* Return false to prevent this panel from being displayed or used. You can
|
||||
* do, e.g., configuration checks here, to determine if the feature your
|
||||
* panel controls is unavailble in this install. By default, all panels are
|
||||
* panel controls is unavailable in this install. By default, all panels are
|
||||
* enabled.
|
||||
*
|
||||
* @return bool True if the panel should be shown.
|
||||
|
|
|
@ -49,7 +49,7 @@ final class PhabricatorUserPreferencesQuery
|
|||
* If no settings exist for a user, a new empty settings object with
|
||||
* appropriate defaults is returned.
|
||||
*
|
||||
* @param bool True to generat synthetic preferences for missing users.
|
||||
* @param bool True to generate synthetic preferences for missing users.
|
||||
*/
|
||||
public function needSyntheticPreferences($synthetic) {
|
||||
$this->synthetic = $synthetic;
|
||||
|
|
|
@ -46,7 +46,7 @@ final class PhabricatorTimezoneSetting
|
|||
|
||||
throw new Exception(
|
||||
pht(
|
||||
'Timezone "%s" is not a valid timezone identiifer.',
|
||||
'Timezone "%s" is not a valid timezone identifier.',
|
||||
$value));
|
||||
}
|
||||
|
||||
|
|
|
@ -83,7 +83,7 @@ final class PhabricatorSubscriptionsEditController
|
|||
} else {
|
||||
|
||||
// TODO: Eventually, get rid of this once everything implements
|
||||
// PhabriatorApplicationTransactionInterface.
|
||||
// PhabricatorApplicationTransactionInterface.
|
||||
|
||||
$editor = id(new PhabricatorSubscriptionsEditor())
|
||||
->setActor($viewer)
|
||||
|
|
|
@ -763,7 +763,7 @@ abstract class PhabricatorEditEngine
|
|||
* Load an object given a configured query.
|
||||
*
|
||||
* @param PhabricatorPolicyAwareQuery Configured query.
|
||||
* @param list<const> List of required capabilitiy constants, or omit for
|
||||
* @param list<const> List of required capability constants, or omit for
|
||||
* defaults.
|
||||
* @return object|null Object, or null if no such object exists.
|
||||
* @task load
|
||||
|
@ -1382,7 +1382,7 @@ abstract class PhabricatorEditEngine
|
|||
* and that field is visible and editable for the user.
|
||||
*
|
||||
* For example, you can use it to test if a user is able to reassign tasks
|
||||
* or not, prior to rendering dedicated UI for task reassingment.
|
||||
* or not, prior to rendering dedicated UI for task reassignment.
|
||||
*
|
||||
* Note that this method does NOT test if the user can actually edit the
|
||||
* current object, just if they have access to the related field.
|
||||
|
|
|
@ -3701,7 +3701,7 @@ abstract class PhabricatorApplicationTransactionEditor
|
|||
|
||||
// If a later project in the list is an ancestor of this one, it will
|
||||
// have added itself to the map. If any ancestor of this project points
|
||||
// at itself in the map, this project should be dicarded in favor of
|
||||
// at itself in the map, this project should be discarded in favor of
|
||||
// that later ancestor.
|
||||
foreach ($project->getAncestorProjects() as $ancestor) {
|
||||
$ancestor_phid = $ancestor->getPHID();
|
||||
|
|
|
@ -451,7 +451,7 @@ abstract class PhabricatorTypeaheadDatasource extends Phobject {
|
|||
public static function isFunctionToken($token) {
|
||||
// We're looking for a "(" so that a string like "members(q" is identified
|
||||
// and parsed as a function call. This allows us to start generating
|
||||
// results immeidately, before the user fully types out "members(quack)".
|
||||
// results immediately, before the user fully types out "members(quack)".
|
||||
return (strpos($token, '(') !== false);
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ final class PhabricatorStatusUIExample extends PhabricatorUIExample {
|
|||
$view->addItem(
|
||||
id(new PHUIStatusItemView())
|
||||
->setIcon(PHUIStatusItemView::ICON_WARNING, 'dark', pht('Caution'))
|
||||
->setTarget(pht('Pomegranite'))
|
||||
->setTarget(pht('Pomegranate'))
|
||||
->setNote(pht('Lots of seeds. Watch out.')));
|
||||
|
||||
$view->addItem(
|
||||
|
|
|
@ -87,7 +87,7 @@ you to consent. If you are not comfortable with this, do not sign the CLA and
|
|||
do not contribute to Phabricator.
|
||||
|
||||
**Limitation of Liability**: The second benefit the CLA provides is that it
|
||||
makes the terms of your contribition explicitly clear upfront, and it puts us
|
||||
makes the terms of your contribution explicitly clear upfront, and it puts us
|
||||
in a much stronger legal position if a contributor later claims there is
|
||||
ambiguity about ownership of their work. We can point at the document they
|
||||
signed as proof that they consented to our use and understood the terms of
|
||||
|
@ -100,7 +100,7 @@ anything we are likely to face, but SCO claimed billions of dollars in damages
|
|||
and the litigation has now been ongoing for more than a decade.
|
||||
|
||||
We want to avoid situations like this in the future by making the terms of
|
||||
contibution explicit upfront.
|
||||
contribution explicit upfront.
|
||||
|
||||
Generally, we believe the terms of the CLA are fair and reasonable for
|
||||
contributors, and that the primary way contributors benefit from contributing
|
||||
|
@ -158,7 +158,7 @@ local law.
|
|||
|
||||
If you are unsure, you should speak with your employer or a lawyer. If you
|
||||
contribute code you do not own under the individual CLA, you are exposing
|
||||
yourself to liability. You may also be exposing us to liablity, but we'll have
|
||||
yourself to liability. You may also be exposing us to liability, but we'll have
|
||||
the CLA on our side to show that we were unwilling pawns in your malicious
|
||||
scheme to defraud your employer.
|
||||
|
||||
|
|
|
@ -140,7 +140,7 @@ Additional Resources
|
|||
|
||||
Poor problem descriptions are a common issue in software development and
|
||||
extensively documented elsewhere. Here are some additional resources describing
|
||||
how to describe problems and ask questions effectivey:
|
||||
how to describe problems and ask questions effectively:
|
||||
|
||||
- [[ http://www.catb.org/esr/faqs/smart-questions.html | How To Ask
|
||||
Questions The Smart Way ]], by Eric S. Raymond
|
||||
|
|
|
@ -198,7 +198,7 @@ would technically be English and most English readers would understand the
|
|||
meaning, but no native English speaker would speak or write like this.
|
||||
|
||||
However, some languages have different subject-verb order rules or
|
||||
colloquisalisms, and a word order which transliterates like this may sound more
|
||||
colloquialisms, and a word order which transliterates like this may sound more
|
||||
natural to a native speaker. By translating fragments instead of complete
|
||||
sentences, you lock translators into English word order.
|
||||
|
||||
|
|
|
@ -112,7 +112,7 @@ we'll probably be able to follow them and reproduce the issue ourselves.
|
|||
|
||||
If you can't follow your steps because they depend on information which is not
|
||||
available on a clean instance (for example, a certain config setting), rewrite
|
||||
them to include instrutions to create that information (for example, adjusting
|
||||
them to include instructions to create that information (for example, adjusting
|
||||
the config to the problematic value).
|
||||
|
||||
If you follow your instructions but the issue does not reproduce, the issue
|
||||
|
@ -191,7 +191,7 @@ smaller case which reproduces the problem, which might be something like this:
|
|||
- Files like `A`, which have uppercase letters, do not work.
|
||||
|
||||
With a simpler reproduction scenario, you can simplify your steps to be more
|
||||
tailored and mimimal. This will help us pointpoint the issue more quickly and
|
||||
tailored and minimal. This will help us pinpoint the issue more quickly and
|
||||
be more certain that we've understood and resolved it.
|
||||
|
||||
It is more important that steps be complete than that they be simple, and it's
|
||||
|
|
|
@ -225,7 +225,7 @@ Cluster: Notifications
|
|||
Configuring multiple notification hosts is simple and has no pre-requisites.
|
||||
|
||||
With multiple notification hosts, you can survive the loss of any subset of
|
||||
hosts as long as at least one host remains alive. Service may be breifly
|
||||
hosts as long as at least one host remains alive. Service may be briefly
|
||||
disrupted directly after the incident which destroys the other hosts.
|
||||
|
||||
Notifications are noncritical, so this normally has little practical impact
|
||||
|
|
|
@ -31,7 +31,7 @@ although this may change in the future.
|
|||
|
||||
Phabricator applications //can// be partitioned across multiple database
|
||||
masters. This does not provide redundancy and generally does not increase
|
||||
resiliance or resistance to data loss, but can help you scale and operate
|
||||
resilience or resistance to data loss, but can help you scale and operate
|
||||
Phabricator. For details, see
|
||||
@{article:Cluster: Partitioning and Advanced Configuration}.
|
||||
|
||||
|
|
|
@ -212,7 +212,7 @@ $ ./bin/almanac register \
|
|||
For example, you might run this command on `repo001` when using a shared key:
|
||||
|
||||
```
|
||||
$ ./bin/almanac register
|
||||
$ ./bin/almanac register \
|
||||
--device keywarden.mycompany.net \
|
||||
--private-key /path/to/private-key \
|
||||
--identify-as repo001.mycompany.net
|
||||
|
|
|
@ -21,7 +21,7 @@ This configuration is complex, and very few installs will benefit from pursuing
|
|||
it. Phabricator will normally run comfortably with a single database master
|
||||
even for large organizations.
|
||||
|
||||
Partitioning generally does not do much to increase resiliance or make it
|
||||
Partitioning generally does not do much to increase resilience or make it
|
||||
easier to recover from disasters, and is primarily a mechanism for scaling and
|
||||
operational convenience.
|
||||
|
||||
|
@ -212,14 +212,14 @@ only one master.
|
|||
|
||||
`persistent` //(bool)// Enables persistent connections. Defaults to off.
|
||||
|
||||
With persitent connections enabled, Phabricator will keep a pool of database
|
||||
With persistent connections enabled, Phabricator will keep a pool of database
|
||||
connections open between web requests and reuse them when serving subsequent
|
||||
requests.
|
||||
|
||||
The primary benefit of using persistent connections is that it will greatly
|
||||
reduce pressure on how quickly outbound TCP ports are opened and closed. After
|
||||
a TCP port closes, it normally can't be used again for about 60 seconds, so
|
||||
rapidly cycling ports can cause resource exuastion. If you're seeing failures
|
||||
rapidly cycling ports can cause resource exhaustion. If you're seeing failures
|
||||
because requests are unable to bind to an outbound port, enabling this option
|
||||
is likely to fix the issue. This option may also slightly increase performance.
|
||||
|
||||
|
|
|
@ -440,7 +440,7 @@ device or devices have up-to-date information.
|
|||
|
||||
When Phabricator can not tell which device in a cluster is a leader, it freezes
|
||||
the cluster because it is possible that some devices have less data and others
|
||||
have more, and if it choses a leader arbitrarily it may destroy some data
|
||||
have more, and if it chooses a leader arbitrarily it may destroy some data
|
||||
which you would prefer to retain.
|
||||
|
||||
To resolve this, you need to tell Phabricator which device has the most
|
||||
|
|
|
@ -100,14 +100,14 @@ A typical `mysql` service configuration looks like this:
|
|||
Service Type: Elasticsearch
|
||||
======================
|
||||
|
||||
The `elasticsearch` sevice type supports these options:
|
||||
The `elasticsearch` service type supports these options:
|
||||
|
||||
| Key | Description |
|
||||
|---|---|
|
||||
| `protocol` | Either `"http"` (default) or `"https"`.
|
||||
| `port` | Elasticsearch TCP port.
|
||||
| `version` | Elasticsearch version, either `2` or `5` (default).
|
||||
| `path` | Path for the index. Defaults to `/phabriator`. Advanced.
|
||||
| `path` | Path for the index. Defaults to `/phabricator`. Advanced.
|
||||
|
||||
A typical `elasticsearch` service configuration looks like this:
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue