Task that can be used to mark something that affects or involves Wikimedia Phabricator.
Details
Fri, Feb 7
I do not recommend, because https://phabricator.wikimedia.org/T293139 - Phorge displays whatever it gets, especially if the video got deleted in the meantime. Same behavior for Youtube.
Jan 17 2025
Jan 1 2025
Dec 31 2024
Dec 29 2024
Dec 28 2024
Dec 24 2024
I've added the existing translations repo to https://we.phorge.it/w/community_resources/ since that's trivial. I agree something better should be done.
Dec 23 2024
Dec 22 2024
Dec 17 2024
Dec 16 2024
The current workaround I'm proposing is just:
Dec 10 2024
Dec 5 2024
Nov 29 2024
BTW I think the page is reached by a crawler that is visiting a branch root on a specific commit:
Wow. Assuming the line is the one with phutil_nonempty_string($branch), why branch "main" is considered a number?
Finally got a reproducer URI in downstream:
Nov 26 2024
Nov 23 2024
Digging deeper, the problem is specific to ProjectRemarkupRule::getObjectIDPattern. That returns:
Step 2: Remove irrelevant character class exclusions:
Disentangling that monster regex, step 1:
Indeed https://devina.io/redos-checker says the aformentioned regex is exponential time worst-case
I monkeypatched the code to print preg_last_error when the problematic preg_match returns null. The error is "Backtrack limit exhausted".
Oct 25 2024
This exception happens once $rule in the loop foreach ($this->getMarkupRules() as $rule) in PhutilRemarkupBlockRule::applyRules($text) becomes ProjectRemarkupRule. That's where it blows up.
Aug 14 2024
Maybe interesting, there is this different non-deprecated API:
Aug 7 2024
Aug 5 2024
This is an issue in https://we.phorge.it/source/phorge/browse/master/src/infrastructure/markup/rule/PhabricatorObjectRemarkupRule.php . In getObjectEmbedPattern(), preg_quote($prefix) returns \# and the method finally returns (\B{\#([^.\s?!,:;{}#\(\)"'\*/~]+(?:[^\s?!,:;{}#\(\)"'\*/~]*[^.\s?!,:;{}#\(\)"'\*/~]+)*)([,\s](?:[^}\\]|\\.)*)?}\B)u.
Within apply($text), $text becomes null after that first preg_replace_callback, so the second call barks.
Aug 2 2024
I'm not skilled enough to look into the bigger picture, however maybe the Edit Column dialog could have a third field apart from Name and Point Limit to also have Task Limit (or Card Limit?). Point Limit and Task Limit then must be mutually exclusive (do not allow to set both for a column, or even...board?), somehow.