### SUMMARY

Update validate-modules to report messages using named error codes like `version-added` instead of error numbers like `E305`.

This would match the behavior of other tools we use, such as pylint, which have one named error code per rule. This will also make ignore entries much easier to read.

Doing this before 2.9 is released will avoid potential backwards compatibility issues with ignore entries in collections.

##### ISSUE TYPE

Feature Idea

##### COMPONENT NAME

validate-modules

"""Single test message for one file."""
    def __init__(self, message, path, line=0, column=0, level='error', code=None, confidence=None):
        """
        :type message: str
        :type path: str
        :type line: int
        :type column: int
        :type level: str
        :type code: str | None
        :type confidence: int | None
        """
        self.__path = path
        self.__line = line
        self.__column = column
        self.__level = level
        self.__code = code
        self.__message = message
        self.confidence = confidence
    @property
    def path(self):