  * **admin.E018**: The value of ``filter_horizontal`` must be a list or tuple.
  * **admin.E019**: The value of ``filter_vertical[n]/filter_vertical[n]`` refers
    to ``<field name>``, which is not an attribute of ``<model>``.
  * **admin.E020**: The value of ``filter_vertical[n]/filter_vertical[n]`` must
    be a ``ManyToManyField``.
  * **admin.E021**: The value of ``radio_fields`` must be a dictionary.
  * **admin.E022**: The value of ``radio_fields`` refers to ``<field name>``,
    which is not an attribute of ``<model>``.
  * **admin.E023**: The value of ``radio_fields`` refers to ``<field name>``,
    which is not a ``ForeignKey``, and does not have a ``choices`` definition.
 
</s> remove   ``<field name>``, which must not be a ``DateTimeField``, ``ForeignKey`` or
  ``ManyToManyField``.
 </s> add   ``<field name>``, which must not be a ``DateTimeField``, a foreign key or a
  many-to-many field. </s> remove * **admin.E003**: The value of ``raw_id_fields[n]`` must be a ``ForeignKey`` or
  ``ManyToManyField``.
 </s> add * **admin.E003**: The value of ``raw_id_fields[n]`` must be a foreign key or
  a many-to-many field. </s> remove   ``ManyToManyField``.
 </s> add   many-to-many field. </s> remove   ``ManyToManyField`` ``<field name>``, because that field manually specifies a
 </s> add   many-to-many field ``<field name>``, because that field manually specifies a </s> remove              "a DateTimeField, ForeignKey or ManyToManyField."),
 </s> add              "a DateTimeField, a foreign key, or a many-to-many field."),
  be a many-to-many field.
  * **admin.E018**: The value of ``filter_horizontal`` must be a list or tuple.
  * **admin.E019**: The value of ``filter_vertical[n]/filter_vertical[n]`` refers
    to ``<field name>``, which is not an attribute of ``<model>``.
  * **admin.E020**: The value of ``filter_vertical[n]/filter_vertical[n]`` must
  be a many-to-many field.
  * **admin.E021**: The value of ``radio_fields`` must be a dictionary.
  * **admin.E022**: The value of ``radio_fields`` refers to ``<field name>``,
    which is not an attribute of ``<model>``.
  * **admin.E023**: The value of ``radio_fields`` refers to ``<field name>``,
    which is not a ``ForeignKey``, and does not have a ``choices`` definition.
keep keep keep keep replace keep keep keep keep keep
 Refs #24227 -- Replaced M2M isinstance checks by field.many_to_many

Thanks Markus Holtermann, Collin Anderson and Tim Graham for the reviews. 
docs/ref/checks.txt