Версионирование FAR API

Место, где разработчики плагинов могут поделиться своим опытом.
Locked
User avatar
a'Lexus
Posts: 45
Joined: Mon 17 Oct, 2016 22:30

Версионирование FAR API

Post by a'Lexus » Mon 09 Sep, 2019 18:13

SEt wrote:
Sun 08 Sep, 2019 03:36
А вот зачем потребовалось изменять это в Far'е и потенциально ломать плагины – не ясно
Как мне кажется, FARу давно стоило бы обзавестись версионированием Plaugin API с проверкой совместимости.
In love with FAR since 1997

User avatar
zg
zero-gravity
Posts: 5572
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 89 times
Contact:

PictureView 3 — просмотр изображений различных форматов

Post by zg » Mon 09 Sep, 2019 18:39

a'Lexus wrote:
Mon 09 Sep, 2019 18:13
Как мне кажется, FARу давно стоило бы обзавестись версионированием Plaugin API с проверкой совместимости.
оно есть.

User avatar
a'Lexus
Posts: 45
Joined: Mon 17 Oct, 2016 22:30

PictureView 3 — просмотр изображений различных форматов

Post by a'Lexus » Mon 09 Sep, 2019 19:13

zg wrote:
Mon 09 Sep, 2019 18:39
оно есть.
Я имею ввиду не совместимомть ANSI/UNICODE и 1.70/3.хх, а более строгое. С подверсиями.
In love with FAR since 1997

User avatar
zg
zero-gravity
Posts: 5572
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 89 times
Contact:

PictureView 3 — просмотр изображений различных форматов

Post by zg » Mon 09 Sep, 2019 19:21

a'Lexus wrote:
Mon 09 Sep, 2019 19:13
Я имею ввиду не совместимомть ANSI/UNICODE и 1.70/3.хх, а более строгое. С подверсиями.
я именно это и имел ввиду.

User avatar
DrKnS
Posts: 5338
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 217 times

PictureView 3 — просмотр изображений различных форматов

Post by DrKnS » Mon 09 Sep, 2019 19:23

a'Lexus, обсуждаемая в последних сообщениях ситуация (если вы о ней) к plugin api отношения не имеет.

User avatar
a'Lexus
Posts: 45
Joined: Mon 17 Oct, 2016 22:30

Версионирование FAR API

Post by a'Lexus » Mon 09 Sep, 2019 19:49

DrKnS wrote:
Mon 09 Sep, 2019 19:23
plugin api отношения не имеет.
Я просто подумал, что если plugin api имеет версионирование (версия.подверсия), то можно предупреждать, что данный plugin под этим API не тестировался и разрешать его использование по выбору пользователя. Это могло бы отсечь сбои FAR при использовании старых плагинов и повысить стабильность работы самого FAR.
In love with FAR since 1997

User avatar
zg
zero-gravity
Posts: 5572
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 89 times
Contact:

Версионирование FAR API

Post by zg » Mon 09 Sep, 2019 20:06

a'Lexus wrote:
Mon 09 Sep, 2019 19:49
Это могло бы отсечь сбои FAR при использовании старых плагинов и повысить стабильность работы самого FAR.
нет.

User avatar
a'Lexus
Posts: 45
Joined: Mon 17 Oct, 2016 22:30

Версионирование FAR API

Post by a'Lexus » Mon 09 Sep, 2019 20:31

zg wrote:
Mon 09 Sep, 2019 20:06
нет.
А можно перенести обсуждение этого куда-то еще. мне не очень понятна такая категоричность.
In love with FAR since 1997

User avatar
zg
zero-gravity
Posts: 5572
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 89 times
Contact:

Версионирование FAR API

Post by zg » Mon 09 Sep, 2019 21:50

a'Lexus wrote:
Mon 09 Sep, 2019 20:31
мне не очень понятна такая категоричность.
сморите, в первом посте вы делаете заявление не разобравшись с тем, на что отвечаете. здесь опять же ваше заявление тоже общие фразы без понимания сути. в фаре уже почти семь лет в plugin api нет несовместимых изменений, за исключением чего-то нового, находящегося в экспериментальном статусе. если в новой версии какой-то плагин перестаёт работать, то это либо ошибка в фаре, либо в плагине. и очень часто с изменениями в апи вообще не связано.

User avatar
a'Lexus
Posts: 45
Joined: Mon 17 Oct, 2016 22:30

Версионирование FAR API

Post by a'Lexus » Mon 09 Sep, 2019 22:10

zg wrote:
Mon 09 Sep, 2019 21:50
то это либо ошибка в фаре, либо в плагине.
Так ошибка и проявляется только после изменения в коде FAR (И не важно это ошибка в FAR или в плагине). Ограничение по версии Plugin API приведет к тому, что старые плагины будут использоваться с оговоркой, что это не безопасно т.к. не тестировалось на совместимость. И добавить настройку позволяющую строго соблюдать версионирование или допускать использование на свой страх и риск.
Last edited by a'Lexus on Mon 09 Sep, 2019 22:22, edited 3 times in total.
In love with FAR since 1997

User avatar
HaRT
Moderator
Posts: 8831
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 86 times
Been thanked: 151 times

Версионирование FAR API

Post by HaRT » Mon 09 Sep, 2019 22:34

a'Lexus wrote:
Mon 09 Sep, 2019 22:10
допускать использование на свой страх и риск
Вспоминается бородатый анекдот про француженку в СССР: https://www.anekdot.ru/id/121751/
Фар есть инструмент, а не нянька. © 2009 DrKnS

User avatar
DrKnS
Posts: 5338
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 217 times

Версионирование FAR API

Post by DrKnS » Mon 09 Sep, 2019 22:37

a'Lexus wrote:
Mon 09 Sep, 2019 22:10
Так ошибка и проявляется только после изменения в коде FAR
"Изменения в коде FAR" бывают каждую неделю, а то и чаще.
Когда вы предлагаете начинать считать текущие плагины "старыми" - по понедельникам или по пятницам?

SEt
Posts: 452
Joined: Mon 21 Mar, 2005 10:22
Location: Питер
Been thanked: 17 times

Версионирование FAR API

Post by SEt » Tue 10 Sep, 2019 15:08

То, с чего всё это началось версионированием API не лечится.
Просто нужно понимать, что у Far'а много плагинов (в чём основная идея данной программы), причём далеко не все из них можно пересобрать. Соответственно, изменения в том, что явно или неявно (как в данном случае) видят плагины должны быть чем-то обоснованы (только не словом "рефакторинг").

В данном же случае изменение не несёт никакой пользы, но меняет неявное состояние, влияющие на плагины. Для поддерживаемых плагинов – не страшно. А вот для неподдерживаемых: я просто выброшу эту версию Far'а и возьму работающую.


PS: Использование Far3 вообще небезопасно, особенно если вы решили просто взять последнюю версию.

User avatar
a'Lexus
Posts: 45
Joined: Mon 17 Oct, 2016 22:30

Версионирование FAR API

Post by a'Lexus » Tue 10 Sep, 2019 21:54

DrKnS wrote:
Mon 09 Sep, 2019 22:37
Когда вы предлагаете начинать считать текущие плагины "старыми" - по понедельникам или по пятницам?
Как минимум при выходе "релизов". Ночные сборки не обязывают вас ни к чему.
SEt wrote:
Tue 10 Sep, 2019 15:08
Использование Far3 вообще небезопасно
Я уже заметил. Если что не так, как минимум можно нарваться на "сам дурак".
In love with FAR since 1997

User avatar
zg
zero-gravity
Posts: 5572
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 89 times
Contact:

Версионирование FAR API

Post by zg » Tue 10 Sep, 2019 22:55

как-то вы перешли все границы, бан. пока на месяц.

Locked

Return to “Разработка плагинов”