DEV: Release v0.4.1

Evg Evg 6 Мая 2022

Это большое изменение и первый релиз подобного вида. Он не затрагивает изменений в базе данных. Напомню, мы перешли на использование Сomposer, что позволит проводить разработку и поддержку более гибко.

Что в нём?

  • Исправлены все известные ошибки.
  • Добавлено удаление сайтов.
  • Новая локализация.
  • Некоторые улучшения UX.

Перед началом обновления обязательно сделайте резервную копию своего сайта и дамп базы данных!

Замените слудующие папки:

  • app
  • config
  • modules
  • resources
  • routes
  • vendor

Собранный архив находится (от корня сайта):

/dev/1/libarea-0.4.1.zip

Обратите внимание, что идет замена всех файлов в папке config, а там у нас были прописаны настройки.

А так, единственно отличие от GitHub в том, что в собранном архиве появилась папка vendor. Она образуется, когда сайт собирается используя composer.

Этот архив создан для тех, кто не хочет использовать его.

А так:

composer create-project libarea/libarea

возьмет последнюю версию. Или можно скачать репозиторий и сделать: composer install в корне сайта.

Если есть какие-то предложения, замечания по существу, то буду только рад. Пишите, если возникли какие-то проблемы, вопросы. Не забываем ВСЕГДА делать резервную копию своего сайта!

P.S. Подписываемся на Тему «Релизы»

8 Ответов

  1. Хорошая новость, на тему подписался. В эти выходные посмотрим. )

  1. Уже смотрю и нашел баг. Если удалить сайт, то в логах пишет Ответ в каталоге удален, но ссылка ведёт правильно, на раздел с удаленными сайтами. При восстановлении аналогично.

    1. Evg Evg 6 Мая 2022 (ред.)

      Подправлю, спасибо! Вот надо делать слияние ответов, ваш повторный ответ напомнил ещё.

  1. Какие планы кроме рефаторинга? Вы говорили мне про него.

    1. Evg Evg 6 Мая 2022 (ред.)

      Хочу посмотреть насколько накладно будет добавить анализатор PHP CommonMark для PHP.

      https://commonmark.thephpleague.com/

      Если расширять редактор, смайлы там и т.д. включать, то имеет смысл глянуть. Да, и в любом случае, некоторые библиотеки необходимо вынести. В composer их. Всё, теперь подход поменялся, можно (только аккуратно) и поработать с внешними библиотеками.

      P.S. отбой. Хорошее дополнение, удобное, но не готов платить такую цену + > 160 классов. И это для разбора текста. Если встать на этот путь, то можно добавить ещё шаблонизатор, например, Twig. И еще столько же. И так у нас есть всего 2 мелких решения — текст и шаблоны, а мы накинули больше 300 классов. Давайте пойдем дальше, еще набросим пару элегантных решений. Не для этого проекта… точно.

  1. dream dream 27 Мая 2022

    我已将 简体中文(zh-CN) --v0.4.1 翻译完成。

    文件在此 https://github.com/Redweiweb/libarea/tree/main/app/Languages/zh-CN

    希望能添加到下一个版本中。

    可能有少量翻译错误,以后再更正。
    注意:app.php中第278行,语言已修改。
    需要在源码中增加相应的语言代码。
    需要将原来的zh目录修改成zh-TW(繁体中文)

    Я закончил перевод упрощенного китайского (zh-CN) --v0.4.1.

    файл здесь

    https://github.com/Redweiweb/libarea/tree/main/app/Languages/zh-CN

    Надеюсь добавить в следующую версию.

    Возможны небольшие ошибки перевода, которые будут исправлены позже.

    Примечание. Строка 278 в app.php, язык изменен.
    Соответствующий языковой код необходимо добавить в исходный код.
    Вам нужно изменить исходный каталог zh на zh-TW (традиционный китайский)

    1. dream dream 27 Мая 2022 (ред.)

      Позвольте мне сказать вам, что есть два вида китайских языков.

      1. Упрощенный китайский (zh-CN) — официальный язык Китая.

      2. Традиционный китайский (zh-TW) — используется в Сингапуре, Гонконге, Тайване и т. д.

      (Традиционный китайский используется редко, потому что на нем неудобно писать).

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

      Сопутствующая информация доступна.

      说一下,汉语语言分两种,

      1,简体中文(zh-CN) — 中国官方语言

      2,繁体中文(zh-TW) — 新加坡,中国香港,中国台湾等在用

      (繁体中文因不方便书写,已很少再用)。

      如果你学习中文的话,请优先选择简体中文,因为你学会了简体中文即使不学繁体中文,一样可以看懂繁体中文。

      可查阅相关资料。

  1. Evg Evg 28 Мая 2022 (ред.)

    Есть информация по локализации сайта (изменения).

    Теперь строка для локализации в файле /config/general.php будет выглядеть так:

    'languages' => ['ru', 'en', 'ro', 'fr', 'zh_TW', 'zh_CN', 'de'],

    см.: https://github.com/LibArea/libarea/blob/main/config/general.php#L29

    С увеличением длины необходимо изменить длину поля lang в таблице users.

    Выполните запрос или в ручную сделайте это через phpmyadmin:

    ALTER TABLE `users` CHANGE `lang` `lang` VARCHAR(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'ru';

    Чтобы получилось:

    Увеличим длину поля Lang

    Мы можем посмотреть возможные варианты локазилации на примере Laravel, тут:

    https://github.com/Laravel-Lang/lang/tree/main/locales

    P.S. Да, и я слегка изменил название самих папок, стало: zh_TW и zh_CN (с нижним подчеркиванием). @dream спасибо! Не знай, вроде верно все сделал, ну если что — подправим.

    Возможны варианты, когда участник сохранил значение старой локализации. В его строчке в базе данных в таблице users выставлено значение zh. Папки zh больше не стало, её надо удалить. В этом случае, его перевод на сайте будет английским (он установлен если перевод не найден). Тут возможно варианты, вы можете найти значения zh в базе данных и в ручную поменять у пользователь это значение, например, на zh_CN. Или сам пользователь увидит, что перевод стал английским заново сохранит новое значение перевода.

    В скрипте Laravel мы видим три перевода: zh_CN, zh_HK, zh_TW. Посмотреть можно по ссылке выше.

    Все эти изменения будут в следующем релизе. Чтобы не забыть, увеличить длину поля lang в таблице users уже можно сейчас.

    Возможно на GitHub надо создать отдельный репозиторий Lang, чтобы там заниматься локализацией, т.к. в общем дестрибутиве может быть не совсем удобно. Особенно, если количество переводов будет расти.