A slight correction wrt the actual behavior.
If the user specifies a matching option that counts as a "fist matcher"
i.e. one of the --from-xxx or --index=N-M variants (or the singular
match options but they are not supported for these commands), then the
restriction to patches after the last clean tag is not in effect. Same
if --not-in-remote is in effect; in which case the --from-xxx or
--index=N-M are ignored, but plural versions of "nonrange" match flags
(--patches or --matches) do take effect; because these are (also)
"nonrange matchers" and these are handled by the patch selection code.
See Darcs.UI.Commands.Util.preselectPatches for details, as well as
Darcs.Patch.Match.{firstMatch,nonrangeMatch}.
Any work on this ticket should include a cleanup of this mess.
|