1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2025-02-28 06:29:27 +01:00
phorge-phorge/src/applications/people/storage
epriestley 3984c14260 Tokenize external editor links so they can be safely materialized on the client
Summary:
Ref T13515. Currently, opening a file to a particular line in an external editor relies on replacing "%l" with "%l" (which is escaped as "%25l") on the server, and then replacing "%25l" with the line number on the client. This will fail if the file path (or any other variable) contains "%l" in its unencoded form.

The parser also can't identify invalid variables.

Pull the parser out, formalize it, and make it generate an intermediate representation which can be sent to the client and reconstituted.

(This temporarily breaks Diffusion and permanently removes the weird, ancient integration in Dark Console.)

Test Plan:
  - Added a bunch of tests for the actual parser.
  - Used "Open in Editor" in Differential.

Maniphest Tasks: T13515

Differential Revision: https://secure.phabricator.com/D21143
2020-04-19 09:02:49 -07:00
..
__tests__ phtize all the things 2015-05-22 21:16:39 +10:00
PhabricatorExternalAccount.php Remove all readers and all nontrivial writers for "accountType" and "accountDomain" on "ExternalAccount" 2020-02-22 17:48:46 -08:00
PhabricatorExternalAccountIdentifier.php Write ExternalAccountIdentifiers when interacting with external authentication providers 2020-02-22 17:46:51 -08:00
PhabricatorRegistrationProfile.php New Registration Workflow 2013-06-16 10:13:49 -07:00
PhabricatorUser.php Tokenize external editor links so they can be safely materialized on the client 2020-04-19 09:02:49 -07:00
PhabricatorUserCache.php Update PhabricatorLiskDAO::chunkSQL() for new %Q semantics 2018-11-13 08:59:18 -08:00
PhabricatorUserConfiguredCustomFieldStorage.php Various linter fixes. 2014-02-26 12:44:58 -08:00
PhabricatorUserCustomFieldNumericIndex.php Various linter fixes. 2014-02-26 12:44:58 -08:00
PhabricatorUserCustomFieldStringIndex.php Various linter fixes. 2014-02-26 12:44:58 -08:00
PhabricatorUserDAO.php Delete license headers from files 2012-11-05 11:16:51 -08:00
PhabricatorUserEmail.php Implement "PolicyInterface" on "UserEmail" so "EmailQuery" can load them properly 2019-11-25 15:08:13 -08:00
PhabricatorUserLog.php Provide a basic detail view for user activity logs 2019-07-24 07:14:07 -07:00
PhabricatorUserProfile.php Auto-generate profile images for sad psyducks 2017-03-05 08:25:02 -08:00
PhabricatorUserSchemaSpec.php Fix various MySQL version issues with new charset stuff 2014-10-29 15:49:29 -07:00
PhabricatorUserTransaction.php Make the default behavior of getApplicationTransactionCommentObject() "return null" instead of "throw" 2019-02-07 14:56:38 -08:00