Добавление проверки последней версии расширения

Обсуждение новой системы расширения функциональности phpBB 4.0-dev, разработки новых расширений.
Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Добавление проверки последней версии расширения

Сообщение rxu »

В текущей версии phpBB 3.1 позволяет добавить в расширение информацию для проверки наличия новой версии.
Для этого необходимо:
  • Создать JSON файл с информацией о расширении, поместив его на какой-либо общедоступный интернет-ресурс. Имя файла может быть, в общем случае, произвольным. Назовем его version.json:

    Код: Выделить всё

    {
        "stable": {
            "2.0": {
                "current": "2.0.0",
                "announcement": "http://anderson.phpbbguru.net/viewtopic.php?f=5&t=33",
                "download": "https://github.com/rxu/posts_merging",
                "eol": null,
                "security": false
            }
        }
    }
    Как видно из содержимого файла, он содержит сведения о текущей стабильной версии разработки, в том числе его текущей минорной версии, ссылку на объявление о выходе данной версии, ссылку на страницу, где можно загрузить расширение. Файл может содержать также сведения о других (нестабильных) версиях, с примером можно ознакомиться на соответствующей странице phpBB development wiki.
  • Дополнить файл composer.json расширения информацией о местонахождении и имени файла для проверки версии, например:

    Код: Выделить всё

            "version-check": {
                "host": "rxu.github.io",
                "directory": "/versions/posts_merging",
                "filename": "version.json"
            }
    
    Данный блок должен быть добавлен в раздел "extra"Э который в результате выглядит примерно так:

    Код: Выделить всё

        "extra": {
            "display-name": "Posts merging",
            "soft-require": {
               "phpbb/phpbb": "3.1.*@dev"
            },
            "version-check": {
                "host": "rxu.github.io",
                "directory": "/versions/posts_merging",
                "filename": "version.json"
            }
        }
В итоге, на странице управления расширениями во вкладке "Персонализация" админраздела можно будет проверить актуальность установленной версии расширения. В зависимости от результатов проверки, номер версии будет выделен жирным зеленым или красным шрифтом.

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Добавление проверки последней версии расширения

Сообщение Алг »

с первого раза не получилось

1. создала в гитхабе репо alg.ext.3.1.store, в нём папку versions и в ней файл AddonForThanksForPostsVersion.json

Код: Выделить всё

{
    "stable": {
        "2.0": {
            "current": "2.0.2",
            "announcement": "http://anderson.phpbbguru.net/viewtopic.php?f=5&t=52",
            "download": "https://github.com/alg5/AddonForThanksForPosts",
            "eol": null,
            "security": false
        }
    }
}
2. добавила в composer.json аддона след. блок

Код: Выделить всё

        "version-check": {
            "host": "alg.ext.3.1.store",
            "directory": "/versions",
            "filename": "AddonForThanksForPostsVersion.json"
        }

3. аддон отключила, удалила, кеш почистила, включила.
4. Хочу версию проверить, получаю
Не удалось получить сведения о последней версии.
php_network_getaddresses: getaddrinfo failed: No such host is known
где-то ошиблась?

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Добавление проверки последней версии расширения

Сообщение rxu »

Алг писал(а):QR_BBPOST "host": "alg.ext.3.1.store"
Алг писал(а):QR_BBPOST No such host is known
Ну это очевидно, такого хоста нет в природе. Тут нужен адрес сервера. Дело в том, что http://rxu.github.io реально существует ;)


Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Добавление проверки последней версии расширения

Сообщение rxu »

ну по факту оно превращается в https://github.com/alg5/alg.ext.3.1.sto ... r/versions а при просмотре самого файла - в https://github.com/alg5/alg.ext.3.1.sto ... rsion.json, можно и так попробовать конечно (указать сервер github.com и прямо такой путь - /alg5/alg.ext.3.1.store/blob/master/versions/AddonForThanksForPostsVersion.json), но я не знаю, сработает ли. Думаю, нет, т.к. там выводится не содержимое файла, а страница.
Сам я специално создавал сайт в поддомене github.io только для этой цели (там любой может так сделать, см. https://pages.github.com).

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Добавление проверки последней версии расширения

Сообщение Алг »

Не поверите, целый день ушёл, чтобы разобраться. Добавила для двух расширений пока. Работает. И все равно понимаю не до конца. Когда мне надо обновлять
rxu писал(а):QR_BBPOST Назовем его version.json:
и надо ли при каждом обновлении репо менять минорную версию в composer.json экста?

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Добавление проверки последней версии расширения

Сообщение rxu »

Алг писал(а):QR_BBPOST Когда мне надо обновлять
При выходе новой версии экста вестимо.
Алг писал(а):QR_BBPOST и надо ли при каждом обновлении репо менять минорную версию в composer.json экста?
Хороший вопрос. По идее, обновлять надо, но не при каждом минорном обновлении, а при первом после выхода стабильной версии.
Например, на коммите "выхода" стабильной версии - 1.0.0, а уже на следующем - 1.0.1-dev, при следующей стабильной - 1.0.1, потом сразу - 1.0.2-dev и так далее.

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Добавление проверки последней версии расширения

Сообщение Алг »

здорово, но непонятно. А есть какие-то критерии, что считать версией, а что минорным обновлением? И ещё нюанс, мы в миграциях записываем в конфиг версию расширения. Надо ли менять при каждом минорном обновлении?

Аватара пользователя
rxu
Сообщения: 1125
Зарегистрирован: 21 янв 2014, 21:20
Откуда: Krasnoyarsk
Github repo: https://github.com/rxu
Контактная информация:

Добавление проверки последней версии расширения

Сообщение rxu »

Алг писал(а):QR_BBPOST А есть какие-то критерии, что считать версией, а что минорным обновлением?
Ну, это автор сам решает. По логике, минорное - оно и есть минорное, т.е. незначительные исправления, изменения. В принципе, по версиям phpBB видно, что это означает.
Алг писал(а):QR_BBPOST Надо ли менять при каждом минорном обновлении?
Если решаете сделать ее релизом - видимо, да.

Алг
Сообщения: 645
Зарегистрирован: 18 фев 2014, 17:28

Добавление проверки последней версии расширения

Сообщение Алг »

как добавить ссылку Изображение в свой репо? например, как тут https://github.com/BoardTools/upload

Ответить