Paste - add created time to pastes in a list

Summary: Fixes T5943. We do this differently in different places; Audit / Differential do something like this while Pholio expands the "byLine" to include a timestamp. Go with the Audit / Differential approach, as presumably having the date as a top line, easily scannable metadata is the goal here.

Test Plan: viewed a list of pastes and saw a timestamp of creation at the top.

Reviewers: epriestley, chad

Reviewed By: chad

Subscribers: epriestley, Korvin

Maniphest Tasks: T5943

Differential Revision: https://secure.phabricator.com/D10338
Daemons - add a config check for out of date daemon environment

Summary: Fixes T4881.

Test Plan: made a config change, saw the issue, restarted daemons and it went away

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: epriestley, Korvin

Maniphest Tasks: T4881

Differential Revision: https://secure.phabricator.com/D10339
Diffusion - re-jigger how README files get rendered

Summary: be more aggressive about assuming plain-text, use remarkup for no extension, .remarkup, and .md, and last but not least use rainbow for .rainbow. Fixes T5818.

Test Plan: my README rendered just fine post these changes

Reviewers: epriestley

Reviewed By: epriestley

Subscribers: asherkin, epriestley, Korvin

Maniphest Tasks: T5818

Differential Revision: https://secure.phabricator.com/D10340
Fix undefined $repository

Auditors: btrahan
Minor, fix two documentation JSON issues

Summary: See <http://stackoverflow.com/questions/25417434/phabricator-maniphest-custom-field-issue>

Auditors: btrahan
Document `bin/repository update` in Diffusion updates guide

Summary: Add a note about running this manually for troubleshooting.

Test Plan: Read it.

Reviewers: btrahan, chad

Reviewed By: chad

Subscribers: epriestley

Differential Revision: https://secure.phabricator.com/D10341
Detect ft_stopword_file being unsupported

Summary:
Ref T2605. For old MySQL, this option is not supported. Catch that and tailor the error.

I couldn't find the first version of MySQL which introduced this optino in order to produce a more useful error. I spent about ~10 minutes looking.

Test Plan: Faked the error, survived setup.

Reviewers: btrahan, chad

Reviewed By: chad

Subscribers: epriestley

Maniphest Tasks: T2605

Differential Revision: https://secure.phabricator.com/D10342
Allow Ponder questions and answers to be destroyed with bin/remove

Summary: Ref T5847.

Test Plan: Used `bin/remove destroy` to destroy a question. Saw the question and its answers get wiped out.

Reviewers: btrahan, shadowhand

Reviewed By: shadowhand

Subscribers: shadowhand, epriestley

Maniphest Tasks: T5847

Differential Revision: https://secure.phabricator.com/D10345
Use a single newline between HTML mail sections

Summary: Ref T992. This makes HTML mail layout more consistent with text mail layout and fixes my greatest annoyance with it.

Test Plan: Used `bin/mail list-outbound --id <id> --dump-html` to view mail in Safari, saw it have a normal amount of whitespace between sections.

Reviewers: btrahan, talshiri, chad

Reviewed By: chad

Subscribers: epriestley

Maniphest Tasks: T992

Differential Revision: https://secure.phabricator.com/D10344
Provide some hints for Amazon RDS configuration

Summary: Fixes T2605. Provide some instructions on configuring RDS properly. The "DB Parameter Group" thing in the web UI seems pretty easy to use, it's just not obvious that it's what you should be using.

Test Plan: Jiggled these warnings to trigger them, viewed the output, saw a table of values and a hint about RDS.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T2605

Differential Revision: https://secure.phabricator.com/D10343
Fix breadcrumbs in WinIE

Summary: Fixes T5902, in theory float and inline-block achieve the same thing.

Test Plan: Test Safari, IE, and Chrome crumb layouts in Phriction, Diffusion, and Maniphest.

Reviewers: btrahan, epriestley

Reviewed By: epriestley

Subscribers: epriestley, Korvin

Maniphest Tasks: T5902

Differential Revision: https://secure.phabricator.com/D10347
Improve documentation and tooling around autoclose

Summary:
Fixes T4767. I believe 80% of this was actually caused by the author issue fixed in T5771, but this should help make the other 20% debuggable.

  - Record why we didn't autoclose a commit when we process it.
  - Show branch autoclose status in the main branch table.
  - Show commit autoclose status on the edit screen.
  - Add documentation about how to find these statuses and what they mean.

Test Plan:
  - Read documentation.
  - Viewed branches and hovered over the various states.
  - Viewed commits in various states and checked the "Autoclose?" field.
  - Pushed some commits and saw autoclose activate.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T4767

Differential Revision: https://secure.phabricator.com/D10348
Revert "Remove "Close Task" button"

This reverts commit d2ead465f38e659de77e8ba57cacd8a75b697f4c.
Allow Conduit to make tasks it can't edit
Allow customization of page view and application name on Login / Register

Summary:
This allows for customization of the PageView class and the displayed application name on the Login and Register pages, via two GET parameters, `__pageview` and `__appname`.

The use case for this is having users authenticating through a website that's built on the Phabricator infrastructure, where the page view used on the site doesn't match the default Phabricator style.  In order to ensure users don't get confused logging in (before we can explain why we use Phabricator for our backend), we set the __pageview and __appname variables when Nginx performs URL rewriting.

I realise this might be a pretty unusual use case, but I do think this is something that will eventually need to be tackled in the very long term when people might be using the Phabricator infrastructure for building web applications.  I don't know whether allowing the user to set `__pageview` is a security issue; you can only change it to page view classes that are already defined.

`__appname` is so that the pages can show "MyApp Registration" instead of "Phabricator Registration".

Test Plan: Viewed the `/auth/login` and `/auth/register` pages with `__pageview` and `__appname` set.

Reviewers: #blessed_reviewers, epriestley

Subscribers: epriestley, Korvin

Differential Revision: https://secure.phabricator.com/D8642
Use omnipotent user for scanning existing child fragments
Allow users to choose what types of buildables they want to publish fragments for

Summary:
Supersedes D7750.

Essentially the same thing but on the new field infrastructure.  I did want to make this work for all steps while I was at it, but since the fields are now drawn from the step configuration, I'm not sure what the right way to go about this (should I modify the steps to include a call to the parent for "global fields"?  Or should I modify the build step edit to forcefully include the field there?)

Test Plan: Tested against combinations of commits and revisions

Reviewers: epriestley, #blessed_reviewers

Subscribers: epriestley, Korvin

Maniphest Tasks: T4884

Differential Revision: https://secure.phabricator.com/D8641
Allow Phabricator to redirect to Amazon S3 for file downloads

Summary: This allows users to configure Phabricator to redirect to Amazon S3 for file downloads.  This allows bandwidth costs to be mitigated to Amazon S3 and means that Phabricator doesn't need to download data from S3 to serve it back to the user.

Test Plan: Tested on https://code.redpointsoftware.com.au/.  Applied the patch, migrated all the file data, and played around with the configuration options (and tested both downloading files and requesting a Phragment list via getstate).

Reviewers: #blessed_reviewers, epriestley

Subscribers: joshuaspence, hach-que, epriestley, Korvin

Maniphest Tasks: T5479, T4884

Differential Revision: https://secure.phabricator.com/D8655
Support querying a specific snapshot on phragment.queryfragments

Summary: This allows a snapshot name to be specified when querying for Phragment fragments via Conduit.  It also adds the "size" field onto the reported results, which is the size of the file in bytes.

Test Plan: Specified snapshot, saw the data change.

Reviewers: epriestley, #blessed_reviewers

Subscribers: epriestley, Korvin, hach-que

Maniphest Tasks: T5479, T4884

Differential Revision: https://secure.phabricator.com/D8660

Conflicts:
	src/applications/phragment/conduit/PhragmentQueryFragmentsConduitAPIMethod.php
Add phragment.querysnapshots method

Summary: This adds a Conduit method to query the snapshots available on a given fragment.

Test Plan: Used it, it worked.

Reviewers: epriestley, #blessed_reviewers

Subscribers: epriestley, Korvin, hach-que

Maniphest Tasks: T5479, T4884

Differential Revision: https://secure.phabricator.com/D8669