mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-26 08:42:41 +01:00
Finish Differential options.
Test Plan: Saw the new options show up, saved some of them. Reviewers: epriestley, chad, btrahan CC: aran, Korvin Maniphest Tasks: T2255 Differential Revision: https://secure.phabricator.com/D4443
This commit is contained in:
parent
950076ec95
commit
7857508185
1 changed files with 141 additions and 1 deletions
|
@ -13,11 +13,50 @@ final class PhabricatorDifferentialConfigOptions
|
|||
|
||||
public function getOptions() {
|
||||
return array(
|
||||
$this->newOption(
|
||||
'differential.revision-custom-detail-renderer',
|
||||
'class',
|
||||
null)
|
||||
->setBaseClass('DifferentialRevisionDetailRenderer')
|
||||
->setDescription(pht("Custom revision detail renderer.")),
|
||||
$this->newOption(
|
||||
'differential.custom-remarkup-rules',
|
||||
'list<string>',
|
||||
null)
|
||||
->setSummary(pht('Custom remarkup rules.'))
|
||||
->setDescription(
|
||||
pht(
|
||||
"Array for custom remarkup rules. The array should have a list ".
|
||||
"of class names of classes that extend PhutilRemarkupRule")),
|
||||
$this->newOption(
|
||||
'differential.custom-remarkup-block-rules',
|
||||
'list<string>',
|
||||
null)
|
||||
->setSummary(pht('Custom remarkup block rules.'))
|
||||
->setDescription(
|
||||
pht(
|
||||
"Array for custom remarkup block rules. The array should have a ".
|
||||
"list of class names of classes that extend ".
|
||||
"PhutilRemarkupEngineBlockRule")),
|
||||
$this->newOption(
|
||||
'differential.whitespace-matters',
|
||||
'list<string>',
|
||||
array())
|
||||
->setDescription(
|
||||
pht(
|
||||
"List of file regexps where whitespace is meaningful and should ".
|
||||
"not use 'ignore-all' by default")),
|
||||
$this->newOption(
|
||||
'differential.field-selector',
|
||||
'class',
|
||||
'DifferentialDefaultFieldSelector')
|
||||
->setBaseClass('DifferentialDefaultFieldSelector')
|
||||
->setDescription(pht('Field selector class')),
|
||||
$this->newOption('differential.show-host-field', 'bool', false)
|
||||
->setBoolOptions(
|
||||
array(
|
||||
pht('Show "Host" Fields'),
|
||||
pht('Disable "Host" Fields'),
|
||||
pht('Hide "Host" Fields'),
|
||||
))
|
||||
->setSummary(pht('Show or hide the "Host" and "Path" fields.'))
|
||||
->setDescription(
|
||||
|
@ -44,6 +83,18 @@ final class PhabricatorDifferentialConfigOptions
|
|||
'If you would prefer not to use this field, you can disable it '.
|
||||
'here. You can also make it optional (instead of required) by '.
|
||||
'setting {{differential.require-test-plan-field}}.')),
|
||||
$this->newOption('differential.require-test-plan-field', 'bool', true)
|
||||
->setBoolOptions(
|
||||
array(
|
||||
pht("Require 'Test Plan' field"),
|
||||
pht("Make 'Test Plan' field optional"),
|
||||
))
|
||||
->setSummary(pht('Require "Test Plan" field?'))
|
||||
->setDescription(
|
||||
pht(
|
||||
"Differential has a required 'Test Plan' field by default. You ".
|
||||
"can make it optional by setting this to false. You can also ".
|
||||
"completely remove it above, if you prefer.")),
|
||||
$this->newOption('differential.enable-email-accept', 'bool', false)
|
||||
->setBoolOptions(
|
||||
array(
|
||||
|
@ -61,6 +112,95 @@ final class PhabricatorDifferentialConfigOptions
|
|||
'sketchy and implies the revision may not actually be receiving '.
|
||||
'thorough review. You can enable "!accept" by setting this '.
|
||||
'option to true.')),
|
||||
$this->newOption('differential.anonymous-access', 'bool', false)
|
||||
->setBoolOptions(
|
||||
array(
|
||||
pht('Allow guests to view revisions'),
|
||||
pht('Require authentication to view revisions'),
|
||||
))
|
||||
->setSummary(pht('Anonymous access to Differential revisions.'))
|
||||
->setDescription(
|
||||
pht(
|
||||
"If you set this to true, users won't need to login to view ".
|
||||
"Differential revisions. Anonymous users will have read-only ".
|
||||
"access and won't be able to interact with the revisions.")),
|
||||
$this->newOption('differential.expose-emails-prudently', 'bool', false)
|
||||
->setBoolOptions(
|
||||
array(
|
||||
pht("Expose revision author email address via Conduit"),
|
||||
pht("Don't expose revision author email address via Conduit"),
|
||||
))
|
||||
->setSummary(
|
||||
pht(
|
||||
"Determines whether or not the author's email address should be ".
|
||||
"exposed via Conduit."))
|
||||
->setDescription(
|
||||
pht(
|
||||
"If you set this to true, revision author email address ".
|
||||
"information will be exposed in Conduit. This is useful for ".
|
||||
"Arcanist.\n\n".
|
||||
"For example, consider the 'arc patch DX' workflow which needs ".
|
||||
"to ask Differential for the revision DX. This data often should ".
|
||||
"contain the author's email address, eg 'George Washington ".
|
||||
"<gwashinton@example.com>' when DX is a git or mercurial ".
|
||||
"revision. If this option is false, Differential defaults to the ".
|
||||
"best it can, something like 'George Washington' or ".
|
||||
"'gwashington'.")),
|
||||
$this->newOption('differential.generated-paths', 'list<string>', null)
|
||||
->setSummary(pht("File regexps to treat as automatically generated."))
|
||||
->setDescription(
|
||||
pht(
|
||||
"List of file regexps that should be treated as if they are ".
|
||||
"generated by an automatic process, and thus get hidden by ".
|
||||
"default in differential."))
|
||||
->addExample('["/config\.h$/", "#/autobuilt/#"]', pht("Valid Setting")),
|
||||
$this->newOption('differential.allow-self-accept', 'bool', false)
|
||||
->setBoolOptions(
|
||||
array(
|
||||
pht("Allow self-accept"),
|
||||
pht("Disallow self-accept"),
|
||||
))
|
||||
->setSummary(pht("Allows users to accept their own revisions."))
|
||||
->setDescription(
|
||||
pht(
|
||||
"If you set this to true, users can accept their own revisions. ".
|
||||
"This action is disabled by default because it's most likely not ".
|
||||
"a behavior you want, but it proves useful if you are working ".
|
||||
"alone on a project and want to make use of all of ".
|
||||
"differential's features.")),
|
||||
$this->newOption('differential.always-allow-close', 'bool', false)
|
||||
->setBoolOptions(
|
||||
array(
|
||||
pht("Allow any user"),
|
||||
pht("Restrict to submitter"),
|
||||
))
|
||||
->setSummary(pht("Allows any user to close accepted revisions."))
|
||||
->setDescription(
|
||||
pht(
|
||||
"If you set this to true, any user can close any revision so ".
|
||||
"long as it has been accepted. This can be useful depending on ".
|
||||
"your development model. For example, github-style pull requests ".
|
||||
"where the reviewer is often the actual committer can benefit ".
|
||||
"from turning this option to true. If false, only the submitter ".
|
||||
"can close a revision.")),
|
||||
$this->newOption('differential.days-fresh', 'int', 1)
|
||||
->setSummary(
|
||||
pht(
|
||||
"For how many business days should a revision be considered ".
|
||||
"'fresh'?"))
|
||||
->setDescription(
|
||||
pht(
|
||||
"Revisions newer than this number of days are marked as fresh in ".
|
||||
"Action Required and Revisions Waiting on You views. Only work ".
|
||||
"days (not weekends and holidays) are included. Set to 0 to ".
|
||||
"disable this feature.")),
|
||||
$this->newOption('differential.days-stale', 'int', 3)
|
||||
->setSummary(
|
||||
pht("After this many days, a revision will be considered 'stale'."))
|
||||
->setDescription(
|
||||
pht(
|
||||
"Similar to `differential.days-fresh` but marks stale revisions. ".
|
||||
"If the revision is even older than it is when marked as 'old'.")),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue