← Ко всем релизам
Dynamic Pages & Relations
Этот релиз делает apidcms по-настоящему автономным: один скрипт — и проект готов к работе. Попутно решена критическая проблема с блокировками БД на shared-хостинге.
✨ Новое
- ### install.php — автоустановка
- Скрипт `php install.php` разворачивает проект одной командой:
- Проверка PHP 8.1+ и всех расширений (sqlite3, curl, mbstring, json, gd, openssl, fileinfo, zip, xml, session)
- Создание структуры папок (storage, uploads, logs, database)
- Генерация конфигов (admin/config.php, front/config.php)
- Установка Composerзависимостей
- Инициализация БД с системными таблицами
- Защита: обновление ядра не разносит install.php на рабочие проекты
- ### WALрежим SQLite
- Конкурентный доступ к БД (веб + CLI) вызывал крах FastCGI на всём аккаунте хостинга:
- `journal_mode=WAL` — параллельные чтение и запись
- `busy_timeout=5000` — ожидание до 5 секунд вместо мгновенной ошибки
- CLIобновления больше не могут уронить сайт
🚀 Улучшено
- ### обновление ядра — защита
- `exclude=core_lib` предотвращает вложенность `core_lib/core_lib/`
- apidcmscore исключён из синхронизации (он сам источник)
- `exclude=storage`, `exclude=CHANGELOG.md`, `exclude=README.md`, `exclude=LICENSE`
- ### Документация
- README.md: раздел установки (git clone + ZIP)
- Страница установки на apidcms.dezajno.ru/docs переписана
🐛 Исправлено
- ### Исправлено
- Удалён дубликат таблицы forms в init_system_tables.php
- Исправлен SQLquoting во втором экземпляре forms
- обновление ядра больше не создаёт рекурсивные core_lib/ в проектах