From 20b86801c6aa74a6117d3cd95f5039ad8f417353 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Sierro?= Date: Tue, 21 Mar 2023 09:38:20 +0100 Subject: [PATCH] less saving, better Windows file handling --- src/dispersionapp/__init__.py | 2 +- src/dispersionapp/core.py | 5 ++--- src/dispersionapp/gui.py | 8 +++++--- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/dispersionapp/__init__.py b/src/dispersionapp/__init__.py index 66588c4..71e4e56 100755 --- a/src/dispersionapp/__init__.py +++ b/src/dispersionapp/__init__.py @@ -1,3 +1,3 @@ -import importlib +import importlib.metadata __version__ = importlib.metadata.version("dispersionapp") diff --git a/src/dispersionapp/core.py b/src/dispersionapp/core.py index 3d81ff9..1b8f9e6 100644 --- a/src/dispersionapp/core.py +++ b/src/dispersionapp/core.py @@ -10,7 +10,7 @@ import tomli import tomli_w from pydantic import BaseModel, PrivateAttr, ValidationError, confloat -DEFAULT_CONFIG_FILE = "config.toml" +DEFAULT_CONFIG_FILE = "dispersion_config.toml" class CurrentState(BaseModel): @@ -61,7 +61,7 @@ class Config(BaseModel): tmp = self._file_name.parent / f"{self._file_name.name}.tmp" with open(tmp, "wb") as file: tomli_w.dump(self.dict(), file) - tmp.rename(self._file_name) + tmp.replace(self._file_name) def update_current( self, core_diameter_um, pressure_mbar, wall_thickness_um, n_tubes, gap_um, t_fwhm_fs @@ -74,7 +74,6 @@ class Config(BaseModel): gap_um=gap_um, t_fwhm_fs=t_fwhm_fs, ) - self.save() class LimitValues(NamedTuple): diff --git a/src/dispersionapp/gui.py b/src/dispersionapp/gui.py index a097110..283c41a 100644 --- a/src/dispersionapp/gui.py +++ b/src/dispersionapp/gui.py @@ -1,13 +1,13 @@ from __future__ import annotations import os +import warnings +from functools import cache import numpy as np import scgenerator as sc -from functools import cache -import warnings -from dispersionapp.core import Config, LimitValues, N_ion_max, N_sf_max, energy, b2 +from dispersionapp.core import Config, LimitValues, N_ion_max, N_sf_max, b2, energy from dispersionapp.plotapp import PlotApp @@ -144,3 +144,5 @@ def app(config_file: os.PathLike | None = None): zdw = lim.wl_zero_disp * 1e9 app[0].set_line_data("zdw", [zdw, zdw], [-3, 3]) app[0].set_line_name("zdw", f"ZDW = {zdw:.0f}nm") + + config.save()