Support ConditionChoices instances in ConditionsField and add typing.

Review Request #14272 — Created Dec. 15, 2024 and submitted — Latest diff uploaded

Information

Djblets
release-5.x

Reviewers

ConditionsField claimed support for taking a ConditionChoices class
or a callable returning the class, but not an instance. We have call
sites that passed in a class accordingly. The problem with prioritizing
classes is that there's no ability for code to register choices into a
ConditionChoices after construction (say, for extensions).

In practice, this field supported instances just fine, and we even had
unit tests for it, but we now document this explicitly (fixing class
names in the process).

The field has also been updated with typing, signature matches, and
some code cleanup.

Unit tests pass.

Changes between revision 1 and 2

orig
1
2

Commits

Summary ID Author
Support ConditionChoices instances in ConditionsField and add typing.
`ConditionsField` claimed support for taking a `ConditionChoices` class or a callable returning the class, but not an instance. We have call sites that passed in a class accordingly. The problem with prioritizing classes is that there's no ability for code to register choices into a `ConditionChoices` after construction (say, for extensions). In practice, this field supported instances just fine, and we even had unit tests for it, but we now document this explicitly (fixing class names in the process). The field has also been updated with typing and some code cleanup.
5477edf02df93762c2f04e3dc9e0b1a29d66878a Christian Hammond
Support ConditionChoices instances in ConditionsField and add typing.
`ConditionsField` claimed support for taking a `ConditionChoices` class or a callable returning the class, but not an instance. We have call sites that passed in a class accordingly. The problem with prioritizing classes is that there's no ability for code to register choices into a `ConditionChoices` after construction (say, for extensions). In practice, this field supported instances just fine, and we even had unit tests for it, but we now document this explicitly (fixing class names in the process). The field has also been updated with typing and some code cleanup.
70b5cdd72f026a26370b60c2b005241b15480795 Christian Hammond
djblets/forms/fields.py
Loading...