• 
      

    Support choices with differing required values in a ConditionSet.

    Review Request #8349 — Created Aug. 25, 2016 and submitted — Latest diff uploaded

    Information

    Djblets
    release-0.10.x
    364629b...

    Reviewers

    Previously, a ConditionSet's list of choices all had to accept the same
    exact type of value for matches. Callers couldn't mix-and-match
    different types of condition choices. If there were two pieces of data
    to work with (say, a book and an author), the list of choices all had to
    accept one of those, and infer the other (if possible).

    Now, ConditionSet.matches() takes keyword arguments for the values,
    instead of a single positional argument for a single value. These are
    compared to BaseConditionChoice.value_kwarg for each condition being
    matched.

    By default, choices expect a value= keyword argument. More advanced
    usage might have some choices that take book= and others that take
    author=, as per the example above.

    Unit tests pass.