20after4 (Mukunda Modell)
Release Engineer @ Wikimedia Foundation

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Monday

  • Clear sailing ahead.

Badges

User does not have any badges.
User Since
Nov 28 2011, 9:35 AM (268 w, 5 d)
Availability
Available

Recent Activity

Wed, Jan 18

20after4 awarded T12101: Phabricator PHP 7 Compatibility a Mountain of Wealth token.
Wed, Jan 18, 5:36 AM · Infrastructure, Guides

Dec 5 2016

20after4 awarded T11939: IPv6 Support a Love token.
Dec 5 2016, 7:19 PM · Infrastructure
20after4 awarded rPHU2ffd89902c1b: Support IPv6 in CIDR block lists a Love token.
Dec 5 2016, 7:19 PM

Dec 4 2016

20after4 created T11945: Unable to edit calendar events created by someone else, even after `bin/policy unlock` .
Dec 4 2016, 9:40 AM · Bug Report (Needs Information), Policy, Calendar

Dec 2 2016

20after4 awarded D16973: Implement basic IPv6 address parsing support a Love token.
Dec 2 2016, 8:46 PM

Dec 1 2016

20after4 awarded Blog Post: Write, Review, Merge, Publish: Phabricator Review Workflow a Orange Medal token.
Dec 1 2016, 1:29 AM

Nov 23 2016

20after4 added a comment to T11909: Recurring Events: "Edit all Future Events" edits past instances as well.

This all seems reasonable, I'm actually not 100% sure what happened so I'll try to gather a better understanding of the situation ;)

Nov 23 2016, 7:36 AM · Wikimedia, Calendar, Bug Report

Nov 22 2016

20after4 created T11909: Recurring Events: "Edit all Future Events" edits past instances as well.
Nov 22 2016, 8:07 PM · Wikimedia, Calendar, Bug Report

Nov 18 2016

20after4 awarded Blog Post: Advanced Internet Usage (Experts ONLY!) a Love token.
Nov 18 2016, 11:59 AM

Nov 17 2016

20after4 added a comment to D16889: Fix an EditEngine issue with unlocking fields which can't be locked.

hahahah nice.

Nov 17 2016, 6:30 PM

Nov 15 2016

20after4 added a comment to D16856: Allow Pygments to recognize .rs files as Rust.

Fixed in config

Nov 15 2016, 8:27 PM

Nov 14 2016

20after4 awarded T929: Allow two arbitrary revisions to be compared in Diffusion a Love token.
Nov 14 2016, 8:27 AM · Diffusion (v3), Restricted Project
20after4 added a comment to T11087: Make permissions more granular in repositorys.

FWIW: I believe @paladox means well, he's just young/inexperienced and overly enthusiastic. The decision to ban him is entirely reasonable for upstream though, given the circumstances.

Nov 14 2016, 8:05 AM · Wikimedia, Diffusion, Feature Request
20after4 added a comment to T11034: Provide more information about projects, etc. in tokenizer browse dialog to make distinguishing between similar projects easier.

Now that this has been deployed for a while, I'm curious if there's any feedback about it? Specifically:

  • Does this approach generally seem like it's a reasonable solution to the problem (if not in its current form, in some similar form which handles these issues more gracefully)? Or are we not really in the right ballpark?
Nov 14 2016, 7:48 AM · Restricted Project, Design & Planning, Typeahead, Prioritized, Wikimedia

Nov 10 2016

20after4 awarded Blog Post: Encouraging Open Source Etiquette a Love token.
Nov 10 2016, 6:42 PM

Oct 13 2016

20after4 closed D16525: Check for empty output from git ls-tree.

Somehow this didn't autoclose.

Oct 13 2016, 6:22 PM
20after4 added an edge to rPc0bf08058b77: Check for empty output from git ls-tree: D16525: Check for empty output from git ls-tree.
Oct 13 2016, 6:22 PM
20after4 added 1 commit(s) for D16525: Check for empty output from git ls-tree: rPc0bf08058b77: Check for empty output from git ls-tree.
Oct 13 2016, 6:22 PM

Oct 12 2016

20after4 added a comment to T11735: Upgrading: Calendar Storage Migrations.

Would it be safe for me to write a migration that sets utcInstanceEpoch equal to utcInitialEpoch on every row in the calendar_event table?

Oct 12 2016, 8:45 AM · Calendar
20after4 added a comment to T11735: Upgrading: Calendar Storage Migrations.

After running the migrations, some instances of recurring events end up with null for the utcInstanceEpoch column. I'm not sure how this happened, however, as some of the instances have a value that matches utcInitialEpoch and I'm not entirely sure what the purpose of utcInstanceEpoch would be. If it matches InitialEpoch then it seems kinda useless, as does null...

Oct 12 2016, 8:41 AM · Calendar
20after4 awarded D16690: Force a couple of Conduit results to the proper types in Calendar a Love token.
Oct 12 2016, 8:10 AM
20after4 added a comment to T11706: Retrieve event date from Calendar "calendar.event.search" method API.

@epriestley: Sounds good to me, this seems quite sensible in every way.

Oct 12 2016, 8:06 AM · Calendar, Feature Request
20after4 added a comment to T11741: Use InnoDB for FULLTEXT indexes where supported.

@epriestley: Jaime, Senior DBA at the WMF, has posted some answers for your list of questions:

Oct 12 2016, 7:58 AM · Infrastructure

Oct 9 2016

20after4 added a comment to T11741: Use InnoDB for FULLTEXT indexes where supported.

Also, reindexing is required after switching to innodb.

Oct 9 2016, 9:32 PM · Infrastructure
20after4 added a comment to T11741: Use InnoDB for FULLTEXT indexes where supported.

Does InnoDB FULLTEXT respect ft_boolean_syntax? If no: is there another similar option? If no: we need to parse queries ourselves and submit the +A +B version to the backend (see also T10642).

Oct 9 2016, 9:31 PM · Infrastructure
20after4 committed rARC296250485541: Fix an DOMDocument error with NoseTestEngine running on PHP 7 (authored by 20after4).
Fix an DOMDocument error with NoseTestEngine running on PHP 7
Oct 9 2016, 9:29 PM
20after4 closed D16672: Fix an DOMDocument error with NoseTestEngine running on PHP 7 by committing rARC296250485541: Fix an DOMDocument error with NoseTestEngine running on PHP 7.
Oct 9 2016, 9:29 PM
20after4 added a comment to T11735: Upgrading: Calendar Storage Migrations.

That's some pretty awesome support for an unsupported prototype. Kudos!

Oct 9 2016, 9:14 PM · Calendar
20after4 awarded T11735: Upgrading: Calendar Storage Migrations a Love token.
Oct 9 2016, 9:13 PM · Calendar

Oct 5 2016

20after4 retitled D16672: Fix an DOMDocument error with NoseTestEngine running on PHP 7 from to Fix an DOMDocument error with NoseTestEngine running on PHP 7.
Oct 5 2016, 8:23 PM

Oct 2 2016

20after4 added a comment to T10003: Upgrading: Maniphest field-level policies ("Can Prioritize Tasks", etc.) have been deprecated and will be removed.

@vanmeeuwen couldn't you use custom forms to lock/hide the policy controls on the maniphest task submission / edit forms? That's how we handled it at Wikimedia's Phabricator. As mentioned above, Custom Forms is the general way forward for controlling default task policies.

Oct 2 2016, 12:41 AM · Policy, Maniphest, Installing & Upgrading
20after4 added a comment to T929: Allow two arbitrary revisions to be compared in Diffusion.
avivey moved this task from Restricted Project Column to Restricted Project Column on the Restricted Project board.
Oct 2 2016, 12:33 AM · Diffusion (v3), Restricted Project
20after4 awarded T8238: Formally support side-band change handoff in external repositories a Doubloon token.
Oct 2 2016, 12:29 AM · Restricted Project, Restricted Project, Diffusion, Harbormaster
20after4 added a comment to T10747: Import and export ICS from Calendar.

@epriestley: if you still haven't figured out how to trigger the calendar event ui in gmail, maybe these headers are part of the secret sauce? [ 1 ]

Oct 2 2016, 12:20 AM · Restricted Project, Prioritized, Calendar

Sep 29 2016

20after4 added a comment to T9779: ./bin/search init error with elasticsearch 2.0.

I doubt that upstream is interested in adding yet another configuration option, however, in case anyone runs across this issue, the following patch will make phabricator work with newer elasticsearch versions (2+)

Sep 29 2016, 10:11 PM · Elasticsearch
20after4 added a comment to T9893: Support ElasticSearch 2.0.

@epriestley:
So far innodb is working. I can't say if it's worse than myisam really, seems pretty similar. Stemming would help a lot but the main complaint I have is the ranking algorithm seems really bad. It doesn't return the most relevant results first. myisam had the same problem though.

Sep 29 2016, 7:14 PM · Elasticsearch, Search

Sep 28 2016

20after4 added a comment to T9893: Support ElasticSearch 2.0.

With InnoDB now mostly finished indexing, search seems to be working and the service isn't getting killed by locked tables. More info at the link I pasted above ^

Sep 28 2016, 8:56 AM · Elasticsearch, Search
20after4 added a comment to T9893: Support ElasticSearch 2.0.

Wikimedia is considering another stab at elasticsearch because we just hit a fairly serious scalability issue with myisam (https://phabricator.wikimedia.org/T146673) and it looks like innodb isn't a lot better. In addition to that, the mysql fulltext engines don't seem to handle stemming or even simple prefix matching.

Sep 28 2016, 5:21 AM · Elasticsearch, Search
20after4 added a comment to T8345: Add task tabs for "Mentions" and "Merged".

+1 for mentions, that would serve the same purpose as see also: or related tasks: would. Primarily it would just be nice to be able to see them in one place instead of hiding in comments...

Sep 28 2016, 12:22 AM · Restricted Project, FreeBSD, Maniphest

Sep 24 2016

20after4 awarded rPHU1a0371a2247a: Add initial support for complex recurring events a Love token.
Sep 24 2016, 2:09 PM

Sep 21 2016

20after4 added a comment to T11675: "Text" type custom field in Maniphest not displayed in Maniphest Advanced Search form.

We use a text field for a 'reference number' which refers to tasks imported from bugzilla reference=bz123, or RT with reference=rt456

Sep 21 2016, 3:14 PM · Custom Fields, Maniphest, Bug Report

Sep 19 2016

20after4 added a comment to T7944: Add Conduit support to Calendar.

Here are 2 use-cases which are both essentially the same in all the important ways:

Sep 19 2016, 5:31 AM · Conduit, Calendar

Sep 18 2016

20after4 added a comment to T7944: Add Conduit support to Calendar.

@epriestley: Are you open to patches that add more information to the calendar.event.search response? It currently does not even include the event time which is a pretty crucial detail to make the results useful.

Sep 18 2016, 4:00 AM · Conduit, Calendar

Sep 14 2016

20after4 added a project to T11635: tagging a differential revision with a milestone breaks `arc diff`: Arcanist.
Sep 14 2016, 11:00 AM · Restricted Project, Arcanist, Bug Report
20after4 created T11635: tagging a differential revision with a milestone breaks `arc diff`.
Sep 14 2016, 11:00 AM · Restricted Project, Arcanist, Bug Report

Sep 10 2016

20after4 awarded D16517: Respect "End Date" for recurring Calendar events in detail UI a Love token.
Sep 10 2016, 11:18 AM
20after4 committed rPc0bf08058b77: Check for empty output from git ls-tree (authored by 20after4).
Check for empty output from git ls-tree
Sep 10 2016, 11:14 AM
20after4 closed T10155: Error when displaying a repository with only one empty commit as "Resolved" by committing rPc0bf08058b77: Check for empty output from git ls-tree.
Sep 10 2016, 11:14 AM · Diffusion, Bug Report

Sep 9 2016

chad awarded D16525: Check for empty output from git ls-tree a Pirate Logo token.
Sep 9 2016, 2:18 AM
20after4 retitled D16525: Check for empty output from git ls-tree from to Check for empty output from git ls-tree.
Sep 9 2016, 2:10 AM
20after4 added a revision to T10155: Error when displaying a repository with only one empty commit: D16525: Check for empty output from git ls-tree.
Sep 9 2016, 2:10 AM · Diffusion, Bug Report

Sep 7 2016

20after4 awarded T11399: Add support for locations in calendar events a Love token.
Sep 7 2016, 11:51 PM · Calendar, Feature Request
20after4 added a comment to T11399: Add support for locations in calendar events.

IMO, Pokémon catching is an essential feature, please implement that first.

Sep 7 2016, 11:51 PM · Calendar, Feature Request
20after4 added a comment to T10145: Adding a panel to a dashboard multiple times.

T10612: Editing a panel causes it to duplicate in dashboard may be the same root cause as this bug.

Sep 7 2016, 11:45 PM · Dashboards (v2), Bug Report
20after4 added a comment to T11533: Upgrading: Changes to Default Homepage.

Ut seems to be T10145

Sep 7 2016, 11:43 PM · NUX, Dashboards, Installing & Upgrading
20after4 awarded T10145: Adding a panel to a dashboard multiple times a Burninate token.
Sep 7 2016, 11:42 PM · Dashboards (v2), Bug Report
20after4 added a comment to T10145: Adding a panel to a dashboard multiple times.

I'm also seeing this bug.

Sep 7 2016, 11:37 PM · Dashboards (v2), Bug Report
20after4 added a comment to T11533: Upgrading: Changes to Default Homepage.

I think this change broke dashboard editing slightly. Now when adding a panel to a dashboard column, the same panel gets added twice, once for each column. Removing either of the dupes removes both.

Sep 7 2016, 11:34 PM · NUX, Dashboards, Installing & Upgrading

Aug 30 2016

Herald updated subscribers of T6706: Allow SSH keys (and other Conduit tokens) to be restricted to specific IP ranges.
Aug 30 2016, 6:13 PM · Phacility, Security

Aug 27 2016

20after4 awarded T11543: Provide an on-page workflow for searching for objects to reference while typing a Remarkup comment a Love token.
Aug 27 2016, 2:21 AM · Restricted Project, Remarkup, Feature Request
20after4 added a comment to T11543: Provide an on-page workflow for searching for objects to reference while typing a Remarkup comment.

This would be awesome.

Aug 27 2016, 2:21 AM · Restricted Project, Remarkup, Feature Request

Jul 28 2016

20after4 awarded T9720: Provide a way to link to Diffusion files a Like token.
Jul 28 2016, 1:14 AM · Restricted Project, Remarkup
20after4 awarded T4245: Make repository URIs slightly prettier a Like token.
Jul 28 2016, 1:12 AM · Prioritized, Diffusion (v3), KDE, Restricted Project
20after4 awarded T4369: Phabricator HTTP repository hosting has fairly severe scalability limits a Love token.
Jul 28 2016, 1:12 AM · Diffusion (v3), Restricted Project

Jul 27 2016

20after4 added a comment to D16248: Generate "stub" events earlier, so more infrastructure works with Calendar.

My guess is that recurring events in Calendar are probably "more-related" to their parent event than posts are to their blog, but maybe "less-related" than commits are to their repository. I'm not sure exactly where on the spectrum they'll end up, though.

I'm also assuming that stub events will mostly end up getting created roughly in chronological order in practice, even though there's no guarantee of that. If that doesn't happen and it's confusing, we could force it to happen: when generating stub X, generate all ungenerated earlier stubs first. Then recurrence N+1 would always have a higher ID than recurrence N. This is likely pretty straightforward if the major issue is just out-of-order IDs and it's less important to know that Exxx is really Eyyy/N at a glance.

Jul 27 2016, 10:26 PM
20after4 added a comment to D16248: Generate "stub" events earlier, so more infrastructure works with Calendar.

I guess what I'm saying is if the E100/4 monogram format was always used then it would at least be consistent and the phid could still be assigned automatically as this revision implements. Maybe I'm missing something - does edit engine absolutely require that every object has a numeric ID as well as a PHID?

Jul 27 2016, 9:22 AM
20after4 added a comment to D16248: Generate "stub" events earlier, so more infrastructure works with Calendar.

@epriestley: Does an object necessarily have to have a unique monogram in order to have a phid? (I don't think so, sort of a rhetorical question)

Jul 27 2016, 9:18 AM

Jul 20 2016

20after4 added a comment to D15560: Improve task dependency queries (Fixes T8126).

This looks good to me, and I agree that it makes a lot more sense to use AND rather than OR when building the HAVING clause.

Jul 20 2016, 8:00 PM

Jul 19 2016

20after4 added a comment to T11312: Watch / Subscribe project Herald action needed.

I think the root problem here is that "Herald added a subscriber: $user" is seen as email-spammy yet people are unwilling to edit their preferences to disable notifications for subscription-changes.

Jul 19 2016, 6:42 AM · Herald, Feature Request

Jul 15 2016

20after4 updated the diff for D16304: Fall back to parent tasks / subtasks when the task graph is big.
  • Don't show commits twice in task details.
Jul 15 2016, 10:31 AM
20after4 updated subscribers of D16304: Fall back to parent tasks / subtasks when the task graph is big.

I misplaced the end of the if (!$task_graph->isEmpty()) block

Jul 15 2016, 12:58 AM
20after4 updated the diff for D16304: Fall back to parent tasks / subtasks when the task graph is big.

I misplaced the end of the if (!$task_graph->isEmpty()) block

Jul 15 2016, 12:57 AM
20after4 added inline comments to D16304: Fall back to parent tasks / subtasks when the task graph is big.
Jul 15 2016, 12:50 AM
20after4 retitled D16304: Fall back to parent tasks / subtasks when the task graph is big from to Fall back to parent tasks / subtasks when the task graph is big.
Jul 15 2016, 12:45 AM

Jul 14 2016

20after4 added a comment to T4788: Allow "Edit Dependencies" both ways (blocking and depending).

It might be useful if the dependency resolution was only two-levels deep. That wouldn't really solve the problem for extremely wide trees though.

Jul 14 2016, 6:25 PM · Prioritized, FreeBSD, User Delight, Wikimedia, Maniphest
20after4 awarded T4788: Allow "Edit Dependencies" both ways (blocking and depending) a Mountain of Wealth token.
Jul 14 2016, 12:38 AM · Prioritized, FreeBSD, User Delight, Wikimedia, Maniphest
20after4 added a comment to T4788: Allow "Edit Dependencies" both ways (blocking and depending).
In T4788#185751, @bd808 wrote:

The task graph can get a bit out of hand -- https://phabricator.wikimedia.org/T2001

Jul 14 2016, 12:38 AM · Prioritized, FreeBSD, User Delight, Wikimedia, Maniphest

Jul 13 2016

20after4 added a comment to T10155: Error when displaying a repository with only one empty commit.

Needs a check for empty and at least a better error message in DiffusionBrowseQueryConduitAPIMethod.php:115

Jul 13 2016, 1:35 PM · Diffusion, Bug Report
20after4 added a comment to T10155: Error when displaying a repository with only one empty commit.

We are seeing this as well when attempting to browse an empty commit: https://phabricator.wikimedia.org/T140236

Jul 13 2016, 1:32 PM · Diffusion, Bug Report

Jul 11 2016

20after4 added a comment to D16179: Fix inconsistent behavior in calendar recurrence sequence, add sequence nav buttons.

This is now deployed on the WMF phabricator, you can see it in action here - look for the arrow buttons in the upper-right corner of the event view.

Jul 11 2016, 9:53 PM

Jul 7 2016

20after4 awarded D16243: Ensure files live as long as intended. a Orange Medal token.
Jul 7 2016, 11:20 PM
20after4 closed T11271: Inconsistency in project membership displaying as "Invalid".

@epriestley - this is caused by a downstream patch which intentionally excludes sprints from the displayed groups.

Jul 7 2016, 11:10 PM · Projects, People, Bug Report

Jun 30 2016

20after4 awarded T11218: Differential advanced search: bucket/group by repository a Love token.
Jun 30 2016, 4:17 AM · Restricted Project, Differential, Feature Request
20after4 added a comment to T11236: Regression: side-by-side diffs: very long lines overflow in diffusion.

@chad: indeed, word-break: break-all on the .differential-diff td element seems to do the trick.

Jun 30 2016, 4:15 AM · Bug Report
20after4 created T11236: Regression: side-by-side diffs: very long lines overflow in diffusion.
Jun 30 2016, 1:11 AM · Bug Report
20after4 added a comment to T3353: Make Phriction Document changes reviewable.

Regression possibly caused by this: https://phabricator.wikimedia.org/T137394

Jun 30 2016, 1:03 AM · Restricted Project, Prioritized, Phriction

Jun 25 2016

20after4 retitled D16179: Fix inconsistent behavior in calendar recurrence sequence, add sequence nav buttons from Fix inconsistent behavior in calendar recurrence sequence, sequence add nav buttons to Fix inconsistent behavior in calendar recurrence sequence, add sequence nav buttons.
Jun 25 2016, 9:23 PM
20after4 retitled D16179: Fix inconsistent behavior in calendar recurrence sequence, add sequence nav buttons from to Fix inconsistent behavior in calendar recurrence sequence, sequence add nav buttons.
Jun 25 2016, 9:14 PM

Jun 20 2016

20after4 added a comment to T11168: Clicking a milestone tag should take you to the workboard, not the milestone project page.

Relatedly: it would be nice if milestones copied the settings of previous milestones, sort of a pseudo template behavior, where milestone2 copied the defaults from milestone1 automatically (so that if you set a series to default to the workboard, every newly created milestone would share that setting unless you override the default)

Jun 20 2016, 10:41 AM · Projects, Feature Request
20after4 added a comment to T11168: Clicking a milestone tag should take you to the workboard, not the milestone project page.

Personally I'm using milestones to represent releases and the workboard is the farthest thing from what I'd want to show when clicking on the milestone.

Jun 20 2016, 10:40 AM · Projects, Feature Request

Jun 16 2016

20after4 awarded D16129: Fetch and discover all Git ref types, not just branches a Like token.
Jun 16 2016, 3:54 PM

Jun 13 2016

20after4 added a reviewer for D16101: DiffusionCommitTagsHeraldField: epriestley.
Jun 13 2016, 2:17 PM
20after4 retitled D16101: DiffusionCommitTagsHeraldField from to DiffusionCommitTagsHeraldField.
Jun 13 2016, 2:17 PM

Jun 10 2016

20after4 awarded T9789: Make it easier to write custom transaction types a Love token.
Jun 10 2016, 6:51 PM · Modernization, Transactions

Jun 9 2016

20after4 added a comment to T8510: Typeahead project proposals in Maniphest advanced search do not always include exact matches.

Here's what happens when adding wikidata project tag using the comment form typeahead:

Jun 9 2016, 7:46 PM · Typeahead, Prioritized, Wikimedia, Infrastructure, Search

May 31 2016

20after4 added a comment to D15976: Remove "Search Preferences".

Simply adding a tabindex=1 to the search input box seems to at least make the search box focusable, however, it's not as good as the global shortcut which works regardless of where focus is on the page.

May 31 2016, 5:08 PM
20after4 added a comment to D15976: Remove "Search Preferences".

This is a pretty major regression on Firefox+Gnome. I am no longer able to focus the search input with the keyboard. Tab doesn't work no matter how many times I tab I am only able to select text links. The search box does not appear to be anywhere in the tab order. OSX keyboard selection behavior is the weird edge case, not the norm.

May 31 2016, 5:02 PM
20after4 added a comment to rPa4e57800431f: Remove "Search Preferences".

So I'm confused, "tab" does not focus the search box for me. A keyboard shortcut to focus the search box is very useful. Surely more than 6 people used it?

May 31 2016, 2:41 AM

May 19 2016

Herald updated subscribers of T8093: Evaluate virtualizing Git refs by proxying the protocol.
May 19 2016, 2:24 AM · Restricted Project, Harbormaster

May 11 2016

20after4 added a comment to T10926: Make it more likely to see assignee & reporter in task view without having to scroll down.

@epriestley: Thanks for the tips. That field is actually a legacy thing at this point and probably should just be hidden everywhere.

May 11 2016, 11:05 PM · Transactions, Feature Request, Maniphest