issue fixes

This commit is contained in:
2026-03-23 22:18:22 -07:00
parent 3afcb54b77
commit 9a32c8e301
3 changed files with 24 additions and 7 deletions
+8 -3
View File
@@ -1,6 +1,11 @@
# Version 1.3.1 # Version 1.3.1
- Added new parameters to the right side of the screen: MAX_SHIFT, T_MIN, T_MAX. Fixes [Issue 69](https://git.research.dezeeuw.ca/tyler/flares/issues/69)
- Fixed an issue where the fOLD files were not included in the Windows version. Fixes [Issue 60](https://git.research.dezeeuw.ca/tyler/flares/issues/60) - Fixed an issue where the fOLD files were not included in the Windows version. Fixes [Issue 60](https://git.research.dezeeuw.ca/tyler/flares/issues/60)
- Fixed an issue where the MacOS version would fail to persorm some analysis options. Fixes [Issue 63](https://git.research.dezeeuw.ca/tyler/flares/issues/63)
- Fixed an issue where processing too many participants would cause the analysis button to not appear. Fixes [Issue 61](https://git.research.dezeeuw.ca/tyler/flares/issues/61)
- Fixed an issue where the error message when a participant fails would not appear. Fixes [Issue 68](https://git.research.dezeeuw.ca/tyler/flares/issues/68)
- Fixed an issue where pressing the 'Clear' button after loading a save would cause the application to crash. Fixes [Issue 67](https://git.research.dezeeuw.ca/tyler/flares/issues/67)
# Version 1.3.0 # Version 1.3.0
@@ -9,10 +14,10 @@
- It is still potentially possible to load older saves by enabling 'Incompatible Save Bypass' from the Preferences menu - It is still potentially possible to load older saves by enabling 'Incompatible Save Bypass' from the Preferences menu
- Fixed workers not releasing memory when processing multiple participants. Fixes [Issue 55](https://git.research.dezeeuw.ca/tyler/flares/issues/55) - Fixed workers not releasing memory when processing multiple participants. Fixes [Issue 55](https://git.research.dezeeuw.ca/tyler/flares/issues/55)
- Fixed part of an issue where memory could increase over time despite clicking the clear button. There is still some edge cases where this can occur - Fixed part of an issue where memory could increase over time despite clicking the clear button. There is still some edge cases where this can occur
- Fixed an issue when clearing a bubble, reloading the same file, and clicking it would cause the app to crash. Fixes [Issue 57](https://git.research.dezeeuw.ca/tyler/flares/issues/57) - Fixed an issue when clearing a bubble, reloading the same file, and clicking it again would cause the app to crash. Fixes [Issue 57](https://git.research.dezeeuw.ca/tyler/flares/issues/57)
- Picking a .txt or .xlsx file now has both in the same file selection instead of having to select which extension was desired - Picking a .txt or .xlsx file now has both in the same file selection instead of having to select which extension was desired
- Added a new parameter to the right side of the screen: EPOCH_EVENTS_HANDLING. Fixes [Issue 58](https://git.research.dezeeuw.ca/tyler/flares/issues/58) - Added a new parameter to the right side of the screen: EPOCH_HANDLING. Fixes [Issue 58](https://git.research.dezeeuw.ca/tyler/flares/issues/58)
- EPOCH_EVENTS_HANDLING defaults to 'shift' compared to previous versions where the default would have been equivalent to 'strict' - EPOCH_HANDLING defaults to 'shift' compared to previous versions where the default would have been equivalent to 'strict'
- The label for ENHANCE_NEGATIVE_CORRELATION no longer gets cut off by its dropdown selection - The label for ENHANCE_NEGATIVE_CORRELATION no longer gets cut off by its dropdown selection
- Loading in files and folders have changes to immediately show their bubbles having a respective loading symbol on each bubble - Loading in files and folders have changes to immediately show their bubbles having a respective loading symbol on each bubble
- Once the file has been completely loaded and processed, the loading symbol will change to a green checkmark and clicking will be enabled - Once the file has been completely loaded and processed, the loading symbol will change to a green checkmark and clicking will be enabled
+11 -3
View File
@@ -172,6 +172,9 @@ L_TRANS_BANDWIDTH: float
H_TRANS_BANDWIDTH: float H_TRANS_BANDWIDTH: float
EPOCH_HANDLING: str EPOCH_HANDLING: str
MAX_SHIFT: int
T_MIN: int
T_MAX: int
RESAMPLE: bool RESAMPLE: bool
RESAMPLE_FREQ: int RESAMPLE_FREQ: int
@@ -236,6 +239,11 @@ REQUIRED_KEYS: dict[str, Any] = {
"L_FREQ": float, "L_FREQ": float,
"H_FREQ": float, "H_FREQ": float,
"EPOCH_HANDLING": str,
"MAX_SHIFT": int,
"T_MIN": int,
"T_MAX": int,
"TDDR": bool, "TDDR": bool,
"WAVELET": bool, "WAVELET": bool,
"IQR": float, "IQR": float,
@@ -1212,7 +1220,7 @@ def safe_create_epochs(raw, events, event_dict, tmin, tmax, baseline):
""" """
shift_increment = 1.0 / raw.info['sfreq'] # The duration of exactly one sample shift_increment = 1.0 / raw.info['sfreq'] # The duration of exactly one sample
for attempt in range(10): # Limit attempts to avoid infinite loops for attempt in range(MAX_SHIFT): # Limit attempts to avoid infinite loops
try: try:
epochs = Epochs( epochs = Epochs(
raw, events, event_id=event_dict, raw, events, event_id=event_dict,
@@ -1244,9 +1252,9 @@ def epochs_calculations(raw_haemo, events, event_dict):
fig_epochs = [] # List to store figures fig_epochs = [] # List to store figures
if EPOCH_HANDLING == 'shift': if EPOCH_HANDLING == 'shift':
epochs = safe_create_epochs(raw=raw_haemo, events=events, event_dict=event_dict, tmin=-5, tmax=15, baseline=(None, 0)) epochs = safe_create_epochs(raw=raw_haemo, events=events, event_dict=event_dict, tmin=T_MIN, tmax=T_MAX, baseline=(None, 0))
else: else:
epochs = Epochs(raw_haemo, events, event_id=event_dict, tmin=-5, tmax=15, baseline=(None, 0)) epochs = Epochs(raw_haemo, events, event_id=event_dict, tmin=T_MIN, tmax=T_MAX, baseline=(None, 0))
# Make a copy of the epochs and drop bad ones # Make a copy of the epochs and drop bad ones
epochs2 = epochs.copy() epochs2 = epochs.copy()
+5 -1
View File
@@ -180,6 +180,9 @@ SECTIONS = [
"params": [ "params": [
# TODO: implement drop # TODO: implement drop
{"name": "EPOCH_HANDLING", "default": ["shift"], "type": list, "options": ["shift", "strict"], "help": "What to do if two unique events occur at the same time. Shift will automatically move one event to the first valid free index. Strict will raise an error processing the file. Drop will remove one of the events."}, {"name": "EPOCH_HANDLING", "default": ["shift"], "type": list, "options": ["shift", "strict"], "help": "What to do if two unique events occur at the same time. Shift will automatically move one event to the first valid free index. Strict will raise an error processing the file. Drop will remove one of the events."},
{"name": "MAX_SHIFT", "default": 5, "type": int, "depends_on": "EPOCH_HANDLING", "depends_value": "shift", "help": "Amount of indexes to look ahead and see if there is a valid one to shift to. If none were found, will fall back to 'strict' behaviour."},
{"name": "T_MIN", "default": -5, "type": int, "help": "Seconds before the epoch to be used."},
{"name": "T_MAX", "default": 15, "type": int, "help": "Seconds after the epoch to be used."},
] ]
}, },
{ {
@@ -4830,7 +4833,8 @@ class MainApplication(QMainWindow):
self.pending_files_count = 0 self.pending_files_count = 0
# Increment session so any 'in-flight' callbacks are ignored # Increment session so any 'in-flight' callbacks are ignored
self.loading_session_id += 1 if hasattr(self, "loading_session_id"):
self.last_clicked_bubble += 1
# Disconnect the buttons to break potential closures # Disconnect the buttons to break potential closures
for btn in [self.button1, self.button3]: for btn in [self.button1, self.button3]: