From 3d91509ab6e072537c225d1f63991a8542683a95 Mon Sep 17 00:00:00 2001 From: Justus Kuhlmann Date: Fri, 20 Feb 2026 09:42:28 +0100 Subject: [PATCH] rename getter for the database file name --- corrlib/cache_io.py | 28 ++++++++++++++-------------- corrlib/find.py | 8 ++++---- corrlib/main.py | 10 +++++----- corrlib/meas_io.py | 10 +++++----- corrlib/tracker.py | 4 ++-- 5 files changed, 30 insertions(+), 30 deletions(-) diff --git a/corrlib/cache_io.py b/corrlib/cache_io.py index c890164..63d2e68 100644 --- a/corrlib/cache_io.py +++ b/corrlib/cache_io.py @@ -1,22 +1,22 @@ -from typing import Union, Optional +from typing import Optional import os import shutil from .tools import record2name_key -from pyerrors import dump_object import datalad.api as dl import sqlite3 +from tools import db_filename -def get_version_hash(path, record): - db = os.path.join(path, "backlogger.db") +def get_version_hash(path: str, record: str) -> str: + db = os.path.join(path, db_filename(path)) dl.get(db, dataset=path) conn = sqlite3.connect(db) c = conn.cursor() c.execute(f"SELECT current_version FROM 'backlogs' WHERE path = '{record}'") - return c.fetchall()[0][0] + return str(c.fetchall()[0][0]) -def drop_cache_files(path: str, fs: Optional[list[str]]=None): +def drop_cache_files(path: str, fs: Optional[list[str]]=None) -> None: cache_dir = os.path.join(path, ".cache") if fs is None: fs = os.listdir(cache_dir) @@ -24,7 +24,7 @@ def drop_cache_files(path: str, fs: Optional[list[str]]=None): shutil.rmtree(os.path.join(cache_dir, f)) -def cache_dir(path, file): +def cache_dir(path: str, file: str) -> str: cache_path_list = [path] cache_path_list.append(".cache") cache_path_list.extend(file.split("/")[1:]) @@ -32,27 +32,27 @@ def cache_dir(path, file): return cache_path -def cache_path(path, file, sha_hash, key): +def cache_path(path: str, file: str, sha_hash: str, key: str) -> str: cache_path = os.path.join(cache_dir(path, file), key + "_" + sha_hash) return cache_path -def is_old_version(path, record): +def is_old_version(path: str, record: str) -> bool: version_hash = get_version_hash(path, record) file, key = record2name_key(record) meas_cache_path = os.path.join(cache_dir(path, file)) ls = [] + is_old = True for p, ds, fs in os.walk(meas_cache_path): ls.extend(fs) for filename in ls: if key == filename.split("_")[0]: - if not version_hash == filename.split("_")[1][:-2]: - return True - else: - return False + if version_hash == filename.split("_")[1][:-2]: + is_old = False + return is_old -def is_in_cache(path, record): +def is_in_cache(path: str, record: str) -> bool: version_hash = get_version_hash(path, record) file, key = record2name_key(record) return os.path.exists(cache_path(path, file, version_hash, key) + ".p") diff --git a/corrlib/find.py b/corrlib/find.py index 21063ec..5d0a678 100644 --- a/corrlib/find.py +++ b/corrlib/find.py @@ -4,7 +4,7 @@ import json import pandas as pd import numpy as np from .input.implementations import codes -from .tools import k2m, get_db_file +from .tools import k2m, db_filename from .tracker import get from typing import Any, Optional @@ -230,7 +230,7 @@ def sfcf_filter(results: pd.DataFrame, **kwargs: Any) -> pd.DataFrame: def find_record(path: str, ensemble: str, correlator_name: str, code: str, project: Optional[str]=None, parameters: Optional[str]=None, created_before: Optional[str]=None, created_after: Optional[str]=None, updated_before: Optional[str]=None, updated_after: Optional[str]=None, revision: Optional[str]=None, **kwargs: Any) -> pd.DataFrame: - db_file = get_db_file(path) + db_file = db_filename(path) db = os.path.join(path, db_file) if code not in codes: raise ValueError("Code " + code + "unknown, take one of the following:" + ", ".join(codes)) @@ -262,7 +262,7 @@ def find_project(path: str, name: str) -> str: uuid: str The uuid of the project in question. """ - db_file = get_db_file(path) + db_file = db_filename(path) get(path, db_file) return _project_lookup_by_alias(os.path.join(path, db_file), name) @@ -281,7 +281,7 @@ def list_projects(path: str) -> list[tuple[str, str]]: results: list[Any] The projects known to the library. """ - db_file = get_db_file(path) + db_file = db_filename(path) get(path, db_file) conn = sqlite3.connect(os.path.join(path, db_file)) c = conn.cursor() diff --git a/corrlib/main.py b/corrlib/main.py index 88b99b3..df0cd7a 100644 --- a/corrlib/main.py +++ b/corrlib/main.py @@ -5,7 +5,7 @@ import os from .git_tools import move_submodule import shutil from .find import _project_lookup_by_id -from .tools import list2str, str2list, get_db_file +from .tools import list2str, str2list, db_filename from .tracker import get, save, unlock, clone, drop from typing import Union, Optional @@ -25,7 +25,7 @@ def create_project(path: str, uuid: str, owner: Union[str, None]=None, tags: Uni code: str (optional) The code that was used to create the measurements. """ - db_file = get_db_file(path) + db_file = db_filename(path) db = os.path.join(path, db_file) get(path, db_file) conn = sqlite3.connect(db) @@ -64,7 +64,7 @@ def update_project_data(path: str, uuid: str, prop: str, value: Union[str, None] value: str or None Value to se `prop` to. """ - db_file = get_db_file(path) + db_file = db_filename(path) get(path, db_file) conn = sqlite3.connect(os.path.join(path, db_file)) c = conn.cursor() @@ -75,7 +75,7 @@ def update_project_data(path: str, uuid: str, prop: str, value: Union[str, None] def update_aliases(path: str, uuid: str, aliases: list[str]) -> None: - db_file = get_db_file(path) + db_file = db_filename(path) db = os.path.join(path, db_file) get(path, db_file) known_data = _project_lookup_by_id(db, uuid)[0] @@ -135,7 +135,7 @@ def import_project(path: str, url: str, owner: Union[str, None]=None, tags: Opti if not uuid: raise ValueError("The dataset does not have a uuid!") if not os.path.exists(path + "/projects/" + uuid): - db_file = get_db_file(path) + db_file = db_filename(path) get(path, db_file) unlock(path, db_file) create_project(path, uuid, owner, tags, aliases, code) diff --git a/corrlib/meas_io.py b/corrlib/meas_io.py index 0f77638..3344efb 100644 --- a/corrlib/meas_io.py +++ b/corrlib/meas_io.py @@ -3,12 +3,12 @@ import os import sqlite3 from .input import sfcf,openQCD import json -from typing import Union, Optional,Any +from typing import Union, Any from pyerrors import Obs, Corr, load_object, dump_object -from hashlib import sha256, sha1 +from hashlib import sha256 from .tools import record2name_key, name_key2record, make_version_hash from .cache_io import is_in_cache, cache_path, cache_dir, get_version_hash -from .tools import get_db_file, cache_enabled +from .tools import db_filename, cache_enabled from .tracker import get, save, unlock import shutil @@ -33,7 +33,7 @@ def write_measurement(path: str, ensemble: str, measurement: dict[str, dict[str, parameter_file: str The parameter file used for the measurement. """ - db_file = get_db_file(path) + db_file = db_filename(path) db = os.path.join(path, db_file) get(path, db_file) unlock(path, db_file) @@ -204,7 +204,7 @@ def drop_record(path: str, meas_path: str) -> None: """ file_in_archive = meas_path.split("::")[0] file = os.path.join(path, file_in_archive) - db_file = get_db_file(path) + db_file = db_filename(path) db = os.path.join(path, db_file) get(path, db_file) sub_key = meas_path.split("::")[1] diff --git a/corrlib/tracker.py b/corrlib/tracker.py index 5cc281c..63aabf2 100644 --- a/corrlib/tracker.py +++ b/corrlib/tracker.py @@ -3,7 +3,7 @@ from configparser import ConfigParser import datalad.api as dl from typing import Optional import shutil -from .tools import get_db_file +from .tools import db_filename def get_tracker(path: str) -> str: @@ -43,7 +43,7 @@ def get(path: str, file: str) -> None: """ tracker = get_tracker(path) if tracker == 'datalad': - if file == get_db_file(path): + if file == db_filename(path): print("Downloading database...") else: print("Downloading data...")