Skip to content

Releases: joke-php/joke

v1.4.0

Choose a tag to compare

@Voral Voral released this 24 Jun 07:26

New features

  • Файловый кэш, привязанный к исходному файлу.

Other changes

  • В Route name сделал публичным

v.1.3.2

Choose a tag to compare

@Voral Voral released this 08 Jun 03:59

CsrfTokenManager::getToken сделан публичным методом

Full Changelog: v1.3.1...v1.3.2

v1.3.1

Choose a tag to compare

@Voral Voral released this 04 May 04:33

Fixes

  • HtmlPageBuilder не возвращал страницу
  • Исправлена логика получения конфигов из контейнера

Full Changelog: v1.3.0...v1.3.1

v1.3.0

Choose a tag to compare

@Voral Voral released this 29 Apr 05:15

1.3.0 (2026-04-29)

New features

  • скрытие деталей ошибок в продакшене
  • умный HtmlPageResponse
  • Механизм работы с CORS
  • Добавлен метод получения Origin запроса
  • Добавлены getPort, getScheme, getHost и getBaseUrl для коллекции сервера
  • Менеджер CSRF токенов
  • CSRF через куки
  • Работа с Cookie ответа
  • Определение запроса выполненного по протоколу https

Refactoring

  • Уточнено поведение определения isSecure в запросе
  • Перенес CSRF классы в отдельное пространство
  • Перенес часть мидлваров в пространство Http
  • метод AbstractConfig::freeze теперь не финальный
  • Перенес коллекцию кук в базовый класс http ответов
  • В HttpRequest rawBody по умолчанию равен пустой строке

Other

  • security: убрал проверку CSRF-токена в GET-параметрах

v1.2.0

Choose a tag to compare

@Voral Voral released this 05 Mar 21:08
  • Система конфигураций
  • Система сервис провайдеров
  • Служба логирования
  • Утилита нормализации путей
  • Поддержка метода OPTIONS
  • Настройка типа ответа по умолчанию уровня приложения
  • Добавлен расширяющий интерфейс DI контейнера с методом has
  • Добавлена проверка существования класса/интерфейса при регистрации сервисов
  • Поддержка алиасов в DI контейнерах
  • toArray скаляр преобразует в массив с одним значением
  • Добавлен класс для безопасного преобразования значений к заданным типам
  • Добавлена коллекция строк, ServerCollection унаследован от этого типа
  • Доступ к загрузчику конфигурации
  • Подключение конфигураций в приложении
  • В коллекцию свойств добавлены методы get* с приведением к заданным типам
  • В коллекцию свойств добавлены методы has и getOrFail
  • Разделение коллекции свойств на только для чтения и с возможностью записи
  • Добавлен базовый класс ошибок связывания параметров
  • BinaryResponse

Full Changelog: v1.1.0...v1.2.0

v1.1.0

Choose a tag to compare

@Voral Voral released this 20 Jan 14:14

Добавлена поддержка wildcard-маршрута {*} для catch-all сценариев

Реализована возможность регистрации маршрута вида /{*}, который
перехватывает любые URI (включая вложенные пути со слэшами).
Значение захваченного пути передаётся в обработчик как строковый
параметр $path.

Пример использования:

$router->get('/{*}', fn(string $path) => "404: {$path}");

Полезно для отображения страницы «Not Found» без конфликта
с более конкретными маршрутами. Рекомендуется размещать такой
маршрут в конце списка.

v1.0.0

Choose a tag to compare

@Voral Voral released this 20 Jan 12:04

🎉 Первый стабильный релиз Joke — учебного микрофреймворка, написанного с нуля в рамках образовательного челленджа.

Несмотря на скромные цели, Joke предоставляет полноценное ядро для обработки HTTP-запросов: ручную маршрутизацию, DI-контейнер с автовайрингом, гибкую систему middleware, управление сессиями (включая неблокирующий режим) и обработку ошибок.

Фреймворк не использует внешние зависимости (кроме Composer, PHPUnit и voral/version-increment) и создан для обучения и экспериментов. Он не претендует на конкуренцию с Laravel или Symfony.

Добро пожаловать в Joke! 🧪