warchron_app/main.py

40 lines
958 B
Python
Raw Normal View History

2026-01-15 12:43:40 +01:00
import sys
2025-12-19 09:56:45 +01:00
2026-01-15 12:43:40 +01:00
from PyQt6.QtWidgets import QApplication
2026-02-11 13:23:04 +01:00
from setuptools_scm import get_version
from setuptools_scm.version import get_local_node_and_date
2026-01-19 11:16:23 +01:00
from warchron.view.view import View
from warchron.model.model import Model
2026-02-10 09:53:49 +01:00
from warchron.controller.app_controller import AppController
2026-01-15 12:43:40 +01:00
if sys.version_info < (3, 12):
raise RuntimeError("Python 3.12 or higher is required")
2025-12-19 09:56:45 +01:00
2026-02-11 13:23:04 +01:00
def get_app_version() -> str:
return get_version(
root=".",
relative_to=__file__,
fallback_version="0.0.0",
tag_regex=r"^v(?P<version>\d+\.\d+\.\d+)$",
version_scheme="guess-next-dev",
local_scheme=get_local_node_and_date,
)
app_version = get_app_version()
# app_version = get_version(root=".", relative_to=__file__)
2025-12-19 09:56:45 +01:00
if __name__ == "__main__":
2026-01-15 12:43:40 +01:00
app = QApplication(sys.argv)
view = View()
model = Model()
2026-02-11 13:23:04 +01:00
controller = AppController(model, view, app_version)
2026-01-15 12:43:40 +01:00
view.show()
sys.exit(app.exec())