-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathversion.py
More file actions
31 lines (23 loc) · 2.29 KB
/
Copy pathversion.py
File metadata and controls
31 lines (23 loc) · 2.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
"""Версия приложения - один источник правды.
Отдельным модулем, а не в pyproject.toml: в собранном .exe никакого
pyproject рядом нет, а версию надо знать и обновлятору, и окну «О программе».
Отсюда же её берут tools/build.py (для установщика) и tools/release.py.
Правило: поднять здесь -> собрать -> tools/release.py. Больше нигде цифру
руками не писать, иначе установщик, приложение и релиз разъедутся, и
обновлятор начнёт предлагать «обновиться» на то, что уже стоит.
Схема - два числа, `МАЖОР.НОМЕР`. Мажор меняется только по прямому решению
владельца за эпохальное (macOS, полная переработка); сам я его не трогаю никогда.
Номер растёт на единицу за выпуск, включая хотфиксы. Третьих и четвёртых чисел
нет. Подробно и с обоснованием - в шапке CHANGELOG.md.
Мажор стал 2 на 2.0: интерфейс собран заново и добавлены целые возможности.
Дальше он снова стоит на месте, номер растёт по одному.
Сравнение версий терпит любую длину: `updater._parse` берёт до четырёх чисел,
и (2, 0) > (1, 0) > (0, 21, 0) считается правильно само собой. Старые теги 0.x
тоже разбираются, и это не мёртвый код: у людей на руках стоят версии со старой
схемой.
Двух чисел хватает везде: способ доставки один - установщик из GitHub Releases,
и больше версию нигде переводить в чужой формат не надо.
"""
__version__ = "2.2"
# Кто раздаёт обновления. Пусто - проверка обновлений выключена.
GITHUB_REPO = "romankandeevy/flowlocal"