Skip to content

Releases: GreenWix/prismaFrame

v1.0.2 Рефакторинг эксепшенов

23 Feb 18:35
Compare
Choose a tag to compare

Возможно стоило это минорным апдейтом сделать, но в целом изменений не очень много, так что пусть будет патч.

Было решено отказаться от использований эксепшенов в виде SomeError::SOME_ERROR(...); Такой подход мусорил трейсы, мешал созданию новых видов ошибок и в целом выглядел не очень.

Теперь все как у людей. Ну, или, по крайней мере, похоже на что-то нормальное.

Родители всех эксепшенов

Возникающие во время обработки запросов ошибки наследуют RuntimeErrorException.

Возникающие во время инициализации или внутренние ошибки наследуют InternalErrorException.

Ошибки валидаторов типов

Пока не используется, но в дальнейшем планируется - TypeException.

Ошибка, возникающие при получении/добавлении валидатора типа - TypeManagerException.

Ошибки, возникающие при обработке запроса.

Возникающие до обработки контроллером ошибки наследуют RequestException.

Если не указана, или указана несовместимая версия - VersionException.

Ошибки при работе контроллеров

Ошибки контроллеров наследуют ControllerException.

Некорректный ввод - BadInputException.

Указан неизвестный контроллер - UnknownControllerException.

Указан неизвестный метод - UnknownMethodException.

Используется неподдерживаемый HTTP метод - WrongHttpMethodException.

v1.0.1 Полный рефакторинг!

16 Feb 22:52
Compare
Choose a tag to compare

Весь код prismaFrame был переделан. В ходе рефакторинга были найдены некоторые ошибки, которые сейчас исправлены.

Отказались от поддержки нескольких типов (в phpdoc) для 1 переменной. Причина - это просто не нужно. В таких случаях лучше отдельные методы делать.

Теперь supported types больше не называются так. Теперь они просто types. А еще теперь есть TypeValidator'ы.
Так что проверка входных данных и сама структура данных являются разными классами.

Пререлиз, потому что еще планируется переработать систему исключений, а также в большей мере задействовать логгер.

0.2.1 POST и Security

13 Aug 18:45
Compare
Choose a tag to compare
Pre-release
  • Исправлена проблема с POST запросами. Она заключалась в том, что было невозможно получить аргументы
  • Теперь Security должен иметь статические методы php beforeRequest(ServerRequestInterface $request) и php report(string $message).
  • Также изменен метод указания Security класса.
    Было
    PrismaFrame::setSecurity(new SomeSecurityClass)
    Стало
    PrismaFrame::setSecurity(SomeSecurityClass::class)

0.2

09 Aug 16:43
Compare
Choose a tag to compare
0.2 Pre-release
Pre-release

Добавлен класс Security. Используется для пользовательских проверок перед выполнением контроллеров

0.1 It works!

03 Jun 15:28
c62acf1
Compare
Choose a tag to compare
0.1 It works! Pre-release
Pre-release

Первый пре-релиз.

Что готово:

  • Контроллеры в виде классов
  • Контроллеры умеют принимать в одном аргументе несколько поддерживаемых типов
  • Поддерживаемые типы в виде классов и Closure'ов (а также возможность сделать их вариации в виде массивов)
  • internal, runtime и security ошибки