Uh, that unit test was useful indeed, and I know understand the rest of the code.
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
May 13 2023
Historical commits with some comments about that regex: https://secure.phabricator.com/D7338, https://secure.phabricator.com/D7012
It might make sense to look into https://secure.phabricator.com/T13588 and https://secure.phabricator.com/D21862
Same behavior for "Mute Notifications" on http://phorge.localhost/legalpad/view/1/ with same stacktrace:
[2023-05-13 10:48:02] EXCEPTION: (PhabricatorApplicationTransactionStructureException) Attempting to apply a transaction (of class "LegalpadTransaction", with type "core:edge") which has not been constructed correctly: Transaction has type "core:edge", but that transaction type is not supported by this editor (LegalpadDocumentEditor). at [<phorge>/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:1830] arcanist(head=master, ref.master=c14785c3795c), phorge(head=conduitEatMoreKittens, ref.master=2df7ea13a387, ref.conduitEatMoreKittens=2df7ea13a387) #0 <#2> PhabricatorApplicationTransactionEditor::validateEditParameters(LegalpadDocument, array) called at [<phorge>/src/applications/transactions/editor/PhabricatorApplicationTransactionEditor.php:1209] #1 <#2> PhabricatorApplicationTransactionEditor::applyTransactions(LegalpadDocument, array) called at [<phorge>/src/applications/subscriptions/controller/PhabricatorSubscriptionsMuteController.php:58] #2 <#2> PhabricatorSubscriptionsMuteController::handleRequest(AphrontRequest) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:284] #3 phlog(PhabricatorApplicationTransactionStructureException) called at [<phorge>/src/aphront/handler/PhabricatorDefaultRequestExceptionHandler.php:41] #4 PhabricatorDefaultRequestExceptionHandler::handleRequestThrowable(AphrontRequest, PhabricatorApplicationTransactionStructureException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:751] #5 AphrontApplicationConfiguration::handleThrowable(PhabricatorApplicationTransactionStructureException) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:296] #6 AphrontApplicationConfiguration::processRequest(AphrontRequest, PhutilDeferredLog, AphrontPHPHTTPSink, MultimeterControl) called at [<phorge>/src/aphront/configuration/AphrontApplicationConfiguration.php:203] #7 AphrontApplicationConfiguration::runHTTPRequest(AphrontPHPHTTPSink) called at [<phorge>/webroot/index.php:35]
Uh right, that makes way more sense to cover numerous such cases in Arcanist instead of playing whack-a-mole in Phorge Conduit. Thanks!
Use phutil_nonempty_stringlike; update doc comment.
May 12 2023
lol, maybe makes more sense just to remove this three lines instead of blindly replacing a function call? :P
Add minimal strict short-circuit check as proposed by Valerio
Thanks for the additional checking and docs!
May 10 2023
May 9 2023
In D25209#6204, @valerio.bozzolan wrote:Just to clarify, do you have an idea about the input domain of $a? (I will test this tomorrow)