mirror of https://gitlab.com/pamhyr/pamhyr2
Compare commits
No commits in common. "3a78d6d6f725bffa414e27d2da82994eb1b357dd" and "6dfa87680941e17a2dfa4ef6fe3102b505296e14" have entirely different histories.
3a78d6d6f7
...
6dfa876809
|
|
@ -37,8 +37,6 @@ logger = logging.getLogger()
|
||||||
|
|
||||||
|
|
||||||
class Study(SQLModel):
|
class Study(SQLModel):
|
||||||
_version = "0.2.0"
|
|
||||||
|
|
||||||
_sub_classes = [
|
_sub_classes = [
|
||||||
Scenario,
|
Scenario,
|
||||||
River,
|
River,
|
||||||
|
|
@ -46,6 +44,7 @@ class Study(SQLModel):
|
||||||
|
|
||||||
def __init__(self, filename=None, init_new=True):
|
def __init__(self, filename=None, init_new=True):
|
||||||
# Metadata
|
# Metadata
|
||||||
|
self._version = "0.2.0"
|
||||||
self.creation_date = datetime.now()
|
self.creation_date = datetime.now()
|
||||||
self.last_modification_date = datetime.now()
|
self.last_modification_date = datetime.now()
|
||||||
self.last_save_date = datetime.now()
|
self.last_save_date = datetime.now()
|
||||||
|
|
|
||||||
|
|
@ -127,7 +127,6 @@ class TableModel(PamhyrTableModel):
|
||||||
)
|
)
|
||||||
|
|
||||||
self.endRemoveRows()
|
self.endRemoveRows()
|
||||||
self.update()
|
|
||||||
|
|
||||||
def sort(self, _reverse, parent=QModelIndex()):
|
def sort(self, _reverse, parent=QModelIndex()):
|
||||||
self.layoutAboutToBeChanged.emit()
|
self.layoutAboutToBeChanged.emit()
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ from platformdirs import user_cache_dir
|
||||||
|
|
||||||
from Solver.AdisTS import AdisTS
|
from Solver.AdisTS import AdisTS
|
||||||
from Solver.Mage import Mage8
|
from Solver.Mage import Mage8
|
||||||
from tools import logger_exception, pamhyr_db_need_update
|
from tools import logger_exception
|
||||||
|
|
||||||
from PyQt5 import QtGui
|
from PyQt5 import QtGui
|
||||||
from PyQt5.QtGui import (
|
from PyQt5.QtGui import (
|
||||||
|
|
@ -1087,13 +1087,10 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
|
||||||
dialog.setDirectory(os.path.dirname(self.conf.last_study))
|
dialog.setDirectory(os.path.dirname(self.conf.last_study))
|
||||||
|
|
||||||
if dialog.exec_():
|
if dialog.exec_():
|
||||||
file_name = dialog.selectedFiles()[0]
|
file_name = dialog.selectedFiles()
|
||||||
|
|
||||||
if pamhyr_db_need_update(file_name, Study._version):
|
|
||||||
shutil.copyfile(file_name, file_name + ".old")
|
|
||||||
|
|
||||||
def fn():
|
def fn():
|
||||||
self._tmp_study = Study.open(file_name)
|
self._tmp_study = Study.open(file_name[0])
|
||||||
|
|
||||||
dlg = WaitingDialog(
|
dlg = WaitingDialog(
|
||||||
payload_fn=fn,
|
payload_fn=fn,
|
||||||
|
|
|
||||||
20
src/tools.py
20
src/tools.py
|
|
@ -19,7 +19,6 @@
|
||||||
import os
|
import os
|
||||||
import time
|
import time
|
||||||
import logging
|
import logging
|
||||||
import sqlite3
|
|
||||||
import traceback
|
import traceback
|
||||||
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
|
|
@ -457,22 +456,3 @@ def _parse_word_up_to_next_sep(words, sep=" "):
|
||||||
|
|
||||||
rest = words[i+1:]
|
rest = words[i+1:]
|
||||||
return word, rest
|
return word, rest
|
||||||
|
|
||||||
|
|
||||||
######
|
|
||||||
# DB #
|
|
||||||
######
|
|
||||||
|
|
||||||
def pamhyr_db_need_update(db_file, expected_version):
|
|
||||||
db = sqlite3.connect(db_file, check_same_thread=False)
|
|
||||||
cur = db.cursor()
|
|
||||||
|
|
||||||
data = cur.execute(
|
|
||||||
"SELECT value FROM info WHERE key='version'"
|
|
||||||
).fetchall()
|
|
||||||
|
|
||||||
db.close()
|
|
||||||
if len(data) == 0:
|
|
||||||
return True
|
|
||||||
|
|
||||||
return expected_version != data[0]
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue