Page MenuHomePhabricator

Introduce "phutil_partition()" and natural case sorting for "msortv(...)"
ClosedPublic

Authored by epriestley on Jun 30 2020, 1:41 PM.

Details

Summary

Ref T13546. Pull some small utility changes out of the deeper stack of "land/markers" changes.

"phutil_partition()" makes it easier to write code that loops over a list grouping elements, then acts on each group. This kind of code is not terribly common, but often feels awkward when implemented with raw primitives.

"msortv()" can support "natural" sorting, which sorts "feature1", "feature2", ..., "feature10" in a more human-readable order.

Test Plan

Ran unit tests, used new behaviors elsewhere in "arc markers" workflows.

Diff Detail

Repository
rARC Arcanist
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Jun 30 2020, 1:45 PM
This revision was automatically updated to reflect the committed changes.