v1.0.2 Рефакторинг эксепшенов
Pre-releaseВозможно стоило это минорным апдейтом сделать, но в целом изменений не очень много, так что пусть будет патч.
Было решено отказаться от использований эксепшенов в виде SomeError::SOME_ERROR(...); Такой подход мусорил трейсы, мешал созданию новых видов ошибок и в целом выглядел не очень.
Теперь все как у людей. Ну, или, по крайней мере, похоже на что-то нормальное.
Родители всех эксепшенов
Возникающие во время обработки запросов ошибки наследуют RuntimeErrorException.
Возникающие во время инициализации или внутренние ошибки наследуют InternalErrorException.
Ошибки валидаторов типов
Пока не используется, но в дальнейшем планируется - TypeException.
Ошибка, возникающие при получении/добавлении валидатора типа - TypeManagerException.
Ошибки, возникающие при обработке запроса.
Возникающие до обработки контроллером ошибки наследуют RequestException.
Если не указана, или указана несовместимая версия - VersionException.
Ошибки при работе контроллеров
Ошибки контроллеров наследуют ControllerException.
Некорректный ввод - BadInputException.
Указан неизвестный контроллер - UnknownControllerException.
Указан неизвестный метод - UnknownMethodException.
Используется неподдерживаемый HTTP метод - WrongHttpMethodException.