История изменений v200.1.1
История изменений DLE API.
200.1.1 — 2026-09-10
Исправлено
- При
SQLSTATE[42S02]наapi_*: нужен DevCraft Admin ≥ 200.4.1 (GenerateMigrations при пересборке схемы); сбросcycle_orm_schema.serи повторный заход в модуль. См. Установка.
Изменено
- Зависимость: DevCraft Admin ≥ 200.4.1 для авто-создания таблиц
api_*после установки ядра. - In-process SDK переехал в DevCraft Admin (
devcraft/src/sdk/dle/): пакет API больше не содержит копииSchema/Fluent/Xfield/DcApiи стал их потребителем. ФасадыDcApiсохранены; контракт/api/v2не изменился.DcApiтеперь работает и без установленного DLE API. См. Слои данных Admin. - Namespace SDK:
DleApi\{Schema,Fluent,Xfield,Sdk}→DevCraft\Dle\.... Пакет API сохраняет своиDleApi\HttpиDleApi\OpenApi.
Удалено
api/sdk/bootstrap.phpи вставки вengine/init.php— SDK поднимается черезdevcraft/init.php. Существующие вставки безопасны: обёрнуты вif (is_file(...)).
Устарело
- Имена классов
DleApi\{Schema,Fluent,Xfield,Sdk}\*— работают через алиасы, будут удалены в следующем мажоре.
200.1.0 — 2026-07-21
Добавлено
-
Политика публичной оболочки: глобальные файлы — только через
siteAssetsманифеста (Admin ≥ 200.4.1); admin/page-local JS остаются вassets()/ шаблонах. См. Публичные ресурсы. -
API v2 (
/api/v2) на CycleORM из DevCraft Admin -
OAuth2 AS: authorize / token / revoke; доступ к ресурсам только через Bearer
-
credential_typeapi_key|auth|oauth_client; ресурсы только AuthToken; GET/meи/oauth/userinfo -
OAuth AS discovery, authorize по сессии DLE, копируемые endpoint URL
-
Уровни доступа, синхронизация с группами, заявки на ключ, профиль (public AJAX)
-
DEMO_MODE/DLEAPI_SECUREиз.env; email-шаблоны черезinstall.xml -
Fluent:
prepareNewPost/prepareNewUser/preparePlugin/prepareNewUsergroup -
Каталог Schema таблиц DLE в
api/includes/Schemas/ -
OpenAPI (swagger-php) + OAD в документации
-
Загрузка файлов
POST /upload/ -
Фильтр постов по одной категории при нескольких (issue #12)
-
Админ-модуль DleApi для DevCraft Admin ≥ 200.4.0 (только конфигурация)
-
HTTP
/table/{name}: интроспекция таблиц вне SchemaRegistry +TableScopeGuard -
SDK facades:
DcApi::news()/user()/comment()/conversation()/plugin()/file()/staticPage()/schema() -
Fluent CRUD на
AbstractTableSchema(with/create/save/delete/filter/fromArray) -
GET-кэш
TableQueryчерез CacheControl (dle_api_query, TTL) -
Админка: multi получатели уведомлений, WYSIWYG для PM-тел; padding
panel-titleчерез.caption -
Документация: настройки, уровни, sync, шаблоны, безопасность; полная справка OAuth-клиентов
-
Руководства: проверка OAuth-клиента в Postman; XenForo — ACP OAuth2 clients (XF как AS) и add-on DLE API Connection Provider (XF как клиент DLE)
Изменено
- Совместимость с DLE 20.0 (xfields.json, dual category, conversations)
- Таблицы
api_keys/api_scope/api_access_levels/ OAuth создаются Cycle-миграциями DevCraft - Scopes: колонка
edit;own_only/cheaterна уровне; trailing slash на всех маршрутах v2 - Страница настроек: короткие descriptions, дефолтные PM-тексты, кликабельные плейсхолдеры и встроенный редактор email-шаблонов
dleapi_key_request/dleapi_key_decision - Публичный блок профиля: состояния
idle/pending/approved/deniedи отдельный moderation-mode для администратора - DevCraft Admin: глобальный Code Typing Loader для сохранения настроек и стандартных AJAX-запросов
Удалено
- API v1 (Slim + Illuminate Capsule,
X-Api-Key) полностью удалён; миграция: v1 → v2 - Приём сырого API-ключа как Bearer на ресурсах
/table - Пустые исторические версии из changelog модуля (
180.0.39,173.0.38,173.0.37,173.0.36,160.0.35,160.0.34,160.0.33,0.3.2,0.3.1,0.2.2)