omniopt2 7262__py3-none-any.whl → 7277__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- .colorfunctions.sh +0 -1
- .omniopt.py +42 -32
- .shellscript_functions +8 -55
- omniopt +3 -4
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.colorfunctions.sh +0 -1
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt.py +42 -32
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.shellscript_functions +8 -55
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/omniopt +3 -4
- {omniopt2-7262.dist-info → omniopt2-7277.dist-info}/METADATA +1 -1
- {omniopt2-7262.dist-info → omniopt2-7277.dist-info}/RECORD +38 -38
- omniopt2.egg-info/PKG-INFO +1 -1
- pyproject.toml +1 -1
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.general.sh +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.helpers.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_cpu_ram_usage.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_general.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_gpu_usage.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_kde.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_scatter.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_scatter_generation_method.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_scatter_hex.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_time_and_exit_code.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_trial_index_result.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_worker.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.random_generator.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/.tpe.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/LICENSE +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/apt-dependencies.txt +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/omniopt_docker +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/omniopt_evaluate +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/omniopt_plot +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/omniopt_share +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/requirements.txt +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/setup.py +0 -0
- {omniopt2-7262.data → omniopt2-7277.data}/data/bin/test_requirements.txt +0 -0
- {omniopt2-7262.dist-info → omniopt2-7277.dist-info}/WHEEL +0 -0
- {omniopt2-7262.dist-info → omniopt2-7277.dist-info}/licenses/LICENSE +0 -0
- {omniopt2-7262.dist-info → omniopt2-7277.dist-info}/top_level.txt +0 -0
.colorfunctions.sh
CHANGED
.omniopt.py
CHANGED
@@ -613,7 +613,7 @@ class ConfigLoader:
|
|
613
613
|
run_mode: str
|
614
614
|
|
615
615
|
@beartype
|
616
|
-
def __init__(self, _parsing_arguments_loader) -> None:
|
616
|
+
def __init__(self: Any, _parsing_arguments_loader: Any) -> None:
|
617
617
|
self.parser = argparse.ArgumentParser(
|
618
618
|
prog="omniopt",
|
619
619
|
description='A hyperparameter optimizer for slurm-based HPC-systems',
|
@@ -629,7 +629,7 @@ class ConfigLoader:
|
|
629
629
|
self.add_arguments()
|
630
630
|
|
631
631
|
@beartype
|
632
|
-
def add_arguments(self) -> None:
|
632
|
+
def add_arguments(self: Any) -> None:
|
633
633
|
required = self.parser.add_argument_group('Required arguments', 'These options have to be set')
|
634
634
|
required_but_choice = self.parser.add_argument_group('Required arguments that allow a choice', 'Of these arguments, one has to be set to continue')
|
635
635
|
optional = self.parser.add_argument_group('Optional', 'These options are optional')
|
@@ -1780,14 +1780,15 @@ def live_share(force: bool = False) -> bool:
|
|
1780
1780
|
if not get_current_run_folder():
|
1781
1781
|
return False
|
1782
1782
|
|
1783
|
-
|
1783
|
+
if SHOWN_LIVE_SHARE_COUNTER == 0:
|
1784
|
+
stdout, stderr = run_live_share_command(force)
|
1784
1785
|
|
1785
|
-
|
1786
|
-
|
1786
|
+
if stderr:
|
1787
|
+
print_green(stderr)
|
1787
1788
|
|
1788
|
-
|
1789
|
-
|
1790
|
-
|
1789
|
+
extract_and_print_qr(stderr)
|
1790
|
+
else:
|
1791
|
+
stdout, stderr = run_live_share_command(force)
|
1791
1792
|
|
1792
1793
|
SHOWN_LIVE_SHARE_COUNTER = SHOWN_LIVE_SHARE_COUNTER + 1
|
1793
1794
|
except KeyboardInterrupt:
|
@@ -3300,23 +3301,29 @@ def find_file_paths_and_print_infos(_text: str, program_code: str) -> str:
|
|
3300
3301
|
return string
|
3301
3302
|
|
3302
3303
|
@beartype
|
3303
|
-
def write_failed_logs(data_dict: dict, error_description: str = "") -> None:
|
3304
|
-
headers =
|
3305
|
-
data = [
|
3304
|
+
def write_failed_logs(data_dict: Optional[dict], error_description: str = "") -> None:
|
3305
|
+
headers = []
|
3306
|
+
data = []
|
3307
|
+
|
3308
|
+
if data_dict is not None:
|
3309
|
+
headers = list(data_dict.keys())
|
3310
|
+
data = [list(data_dict.values())]
|
3311
|
+
else:
|
3312
|
+
print_debug("No data_dict provided, writing only error description.")
|
3313
|
+
data = [[]] # leeres Datenfeld, nur error_description kommt dazu
|
3306
3314
|
|
3307
3315
|
if error_description:
|
3308
3316
|
headers.append('error_description')
|
3309
3317
|
for row in data:
|
3310
3318
|
row.append(error_description)
|
3311
3319
|
|
3312
|
-
failed_logs_dir = os.path.join(get_current_run_folder(), 'failed_logs')
|
3313
|
-
|
3314
|
-
data_file_path = os.path.join(failed_logs_dir, 'parameters.csv')
|
3315
|
-
header_file_path = os.path.join(failed_logs_dir, 'headers.csv')
|
3316
|
-
|
3317
3320
|
try:
|
3321
|
+
failed_logs_dir = os.path.join(get_current_run_folder(), 'failed_logs')
|
3318
3322
|
makedirs(failed_logs_dir)
|
3319
3323
|
|
3324
|
+
header_file_path = os.path.join(failed_logs_dir, 'headers.csv')
|
3325
|
+
data_file_path = os.path.join(failed_logs_dir, 'parameters.csv')
|
3326
|
+
|
3320
3327
|
if not os.path.exists(header_file_path):
|
3321
3328
|
try:
|
3322
3329
|
with open(header_file_path, mode='w', encoding='utf-8', newline='') as header_file:
|
@@ -3327,11 +3334,10 @@ def write_failed_logs(data_dict: dict, error_description: str = "") -> None:
|
|
3327
3334
|
print_red(f"Failed to write header file: {e}")
|
3328
3335
|
|
3329
3336
|
try:
|
3330
|
-
with open(data_file_path, mode='a', encoding=
|
3337
|
+
with open(data_file_path, mode='a', encoding='utf-8', newline='') as data_file:
|
3331
3338
|
writer = csv.writer(data_file)
|
3332
3339
|
writer.writerows(data)
|
3333
3340
|
print_debug(f"Data appended to file: {data_file_path}")
|
3334
|
-
|
3335
3341
|
except Exception as e:
|
3336
3342
|
print_red(f"Failed to append data to file: {e}")
|
3337
3343
|
|
@@ -3613,7 +3619,15 @@ def _write_job_infos_csv_build_values(start_time: Union[int, float], end_time: U
|
|
3613
3619
|
|
3614
3620
|
@beartype
|
3615
3621
|
def _write_job_infos_csv_replace_none_with_str(elements: Optional[List[str]]) -> List[str]:
|
3616
|
-
|
3622
|
+
if elements is None:
|
3623
|
+
return []
|
3624
|
+
result = []
|
3625
|
+
for element in elements:
|
3626
|
+
if element is None:
|
3627
|
+
result.append('None')
|
3628
|
+
else:
|
3629
|
+
result.append(element)
|
3630
|
+
return result
|
3617
3631
|
|
3618
3632
|
@beartype
|
3619
3633
|
def print_evaluate_times() -> None:
|
@@ -3802,8 +3816,8 @@ def _evaluate_create_signal_map() -> Dict[str, type[BaseException]]:
|
|
3802
3816
|
@beartype
|
3803
3817
|
def _evaluate_handle_result(
|
3804
3818
|
stdout: str,
|
3805
|
-
result: Union[int, float, dict, list],
|
3806
|
-
parameters: dict
|
3819
|
+
result: Optional[Union[int, float, dict, list]],
|
3820
|
+
parameters: Optional[dict]
|
3807
3821
|
) -> Dict[str, Optional[Union[float, Tuple]]]:
|
3808
3822
|
final_result: Dict[str, Optional[Union[float, Tuple]]] = {}
|
3809
3823
|
|
@@ -3856,17 +3870,15 @@ def pretty_process_output(stdout_path: str, stderr_path: str, exit_code: Optiona
|
|
3856
3870
|
def is_nonempty(s: Optional[str]) -> bool:
|
3857
3871
|
return bool(s and s.strip())
|
3858
3872
|
|
3859
|
-
if is_nonempty(stdout_txt):
|
3873
|
+
if is_nonempty(stdout_txt) and stdout_txt is not None:
|
3860
3874
|
console.rule(Text(f" {stdout_path} ", style=header_style))
|
3861
|
-
|
3862
|
-
|
3863
|
-
)
|
3875
|
+
panel = Panel(stdout_txt, title="STDOUT", border_style="cyan", padding=(0, 1))
|
3876
|
+
console.print(panel)
|
3864
3877
|
|
3865
|
-
if is_nonempty(stderr_txt):
|
3878
|
+
if is_nonempty(stderr_txt) and stderr_txt is not None:
|
3866
3879
|
console.rule(Text(f" {stderr_path} ", style=header_style))
|
3867
|
-
|
3868
|
-
|
3869
|
-
)
|
3880
|
+
panel = Panel(stderr_txt, title="STDERR", border_style="magenta", padding=(0, 1))
|
3881
|
+
console.print(panel)
|
3870
3882
|
|
3871
3883
|
if not (is_nonempty(stdout_txt) or is_nonempty(stderr_txt)):
|
3872
3884
|
print("\n")
|
@@ -4571,8 +4583,6 @@ def show_end_table_and_save_end_files() -> int:
|
|
4571
4583
|
|
4572
4584
|
display_failed_jobs_table()
|
4573
4585
|
|
4574
|
-
best_result_exit = 0
|
4575
|
-
|
4576
4586
|
best_result_exit: int = print_best_result()
|
4577
4587
|
|
4578
4588
|
if not args.dryrun:
|
@@ -7369,7 +7379,7 @@ def get_batched_arms(nr_of_jobs_to_get: int) -> list:
|
|
7369
7379
|
return batched_arms
|
7370
7380
|
|
7371
7381
|
@beartype
|
7372
|
-
def _fetch_next_trials(nr_of_jobs_to_get: int, recursion: bool = False) ->
|
7382
|
+
def _fetch_next_trials(nr_of_jobs_to_get: int, recursion: bool = False) -> Tuple[Dict[int, Any], bool]:
|
7373
7383
|
die_101_if_no_ax_client_or_experiment_or_gs()
|
7374
7384
|
|
7375
7385
|
if not ax_client:
|
.shellscript_functions
CHANGED
@@ -8,7 +8,6 @@
|
|
8
8
|
|
9
9
|
os_name=$(uname -s)
|
10
10
|
|
11
|
-
declare -a bg_pids
|
12
11
|
declare -i exit_code=0
|
13
12
|
|
14
13
|
function set_debug {
|
@@ -223,7 +222,7 @@
|
|
223
222
|
PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
|
224
223
|
|
225
224
|
if [[ -z $CI ]]; then
|
226
|
-
green_reset_line "${PROGRESSBAR}➤Installing $MODULE
|
225
|
+
green_reset_line "${PROGRESSBAR}➤Installing $MODULE "
|
227
226
|
fi
|
228
227
|
|
229
228
|
|
@@ -239,7 +238,7 @@
|
|
239
238
|
for i in $(pip3 install --disable-pip-version-check --dry-run "$MODULE" | grep -v "already satisfied" | grep "Collecting" | sed -e 's#Collecting ##' | grep -v "^$MODULE$"); do
|
240
239
|
if [[ "$i" != "$MODULE" ]]; then
|
241
240
|
if [[ $k -eq 0 ]]; then
|
242
|
-
green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE
|
241
|
+
green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE"
|
243
242
|
fi
|
244
243
|
ppip "$i" "$MODULE" "$NUMBER_OF_MAIN_MODULES" || {
|
245
244
|
red_reset_line "❌Failed to install $i."
|
@@ -252,11 +251,11 @@
|
|
252
251
|
done
|
253
252
|
|
254
253
|
if [[ $k -gt 0 ]]; then
|
255
|
-
green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself
|
254
|
+
green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself..."
|
256
255
|
fi
|
257
256
|
fi
|
258
257
|
|
259
|
-
green_reset_line "${PROGRESSBAR}➤Installing $MODULE
|
258
|
+
green_reset_line "${PROGRESSBAR}➤Installing $MODULE..."
|
260
259
|
mkdir -p logs
|
261
260
|
export PIP_DISABLE_PIP_VERSION_CHECK=1
|
262
261
|
INSTALL_ERRORS_FILE="logs/install_errors"
|
@@ -292,7 +291,7 @@
|
|
292
291
|
PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
|
293
292
|
|
294
293
|
if [[ -z $CI ]]; then
|
295
|
-
green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully
|
294
|
+
green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully"
|
296
295
|
fi
|
297
296
|
fi
|
298
297
|
set -e
|
@@ -319,22 +318,6 @@
|
|
319
318
|
echo "$nr"
|
320
319
|
}
|
321
320
|
|
322
|
-
function get_nr_bg_jobs {
|
323
|
-
jobs -r | wc -l | tr -d " "
|
324
|
-
}
|
325
|
-
|
326
|
-
function bg_jobs_str {
|
327
|
-
bg_jobs=$(get_nr_bg_jobs)
|
328
|
-
|
329
|
-
if [[ $bg_jobs -gt 0 ]]; then
|
330
|
-
if [[ $bg_jobs -eq 1 ]]; then
|
331
|
-
echo " (Currently $bg_jobs background job)"
|
332
|
-
else
|
333
|
-
echo " (Currently $bg_jobs background jobs)"
|
334
|
-
fi
|
335
|
-
fi
|
336
|
-
}
|
337
|
-
|
338
321
|
function install_required_modules {
|
339
322
|
green_reset_line "➤Checking environment $VENV_DIR..."
|
340
323
|
MAX_NR="${#install_those[@]}"
|
@@ -346,42 +329,12 @@
|
|
346
329
|
install_this=${install_those[$key]}
|
347
330
|
PROGRESSBAR=$(generate_progress_bar_setup "$MAX_NR")
|
348
331
|
if [[ -z $CI ]]; then
|
349
|
-
green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed
|
332
|
+
green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed..."
|
350
333
|
fi
|
351
334
|
|
352
|
-
ppip "$install_this" "-" "$MAX_NR"
|
353
|
-
bg_pids+=($!)
|
354
|
-
|
355
|
-
nr_bg_jobs=$(get_nr_bg_jobs)
|
356
|
-
|
357
|
-
while [[ "$nr_bg_jobs" -gt 4 ]]; do
|
358
|
-
nr_bg_jobs=$(get_nr_bg_jobs)
|
359
|
-
if [[ -z $CI ]]; then
|
360
|
-
green_reset_line "${PROGRESSBAR}Currently waiting for jobs to end (currently $nr_bg_jobs)"
|
361
|
-
fi
|
362
|
-
wait -n
|
363
|
-
|
364
|
-
for pid in "${bg_pids[@]}"; do
|
365
|
-
wait "$pid"
|
366
|
-
job_exit_code=$?
|
367
|
-
if [[ $job_exit_code -ne 0 ]]; then
|
368
|
-
exit_code=$job_exit_code
|
369
|
-
exit "$exit_code"
|
370
|
-
fi
|
371
|
-
done
|
372
|
-
done
|
335
|
+
ppip "$install_this" "-" "$MAX_NR"
|
373
336
|
done
|
374
337
|
|
375
|
-
for pid in "${bg_pids[@]}"; do
|
376
|
-
wait "$pid"
|
377
|
-
job_exit_code=$?
|
378
|
-
if [[ $job_exit_code -ne 0 ]]; then
|
379
|
-
exit_code=$job_exit_code
|
380
|
-
exit "$exit_code"
|
381
|
-
fi
|
382
|
-
done
|
383
|
-
|
384
|
-
|
385
338
|
_tput cr
|
386
339
|
_tput el
|
387
340
|
|
@@ -439,7 +392,7 @@
|
|
439
392
|
fi
|
440
393
|
fi
|
441
394
|
|
442
|
-
green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it
|
395
|
+
green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it..."
|
443
396
|
python3 -mvenv "$VENV_DIR/" || {
|
444
397
|
red_text "❌Failed to create Virtual Environment in $VENV_DIR"
|
445
398
|
exit 20
|
omniopt
CHANGED
@@ -1703,8 +1703,8 @@ EOF
|
|
1703
1703
|
myexit 110
|
1704
1704
|
fi
|
1705
1705
|
|
1706
|
+
_tput civis # Disable cursor
|
1706
1707
|
while [[ ! -e $LOG_PATH || ! -s $LOG_PATH ]]; do
|
1707
|
-
_tput civis # Disable cursor
|
1708
1708
|
|
1709
1709
|
current_time=$(date +%s)
|
1710
1710
|
|
@@ -1772,11 +1772,10 @@ EOF
|
|
1772
1772
|
echo -ne "$print_line"
|
1773
1773
|
sleep 0.05
|
1774
1774
|
done
|
1775
|
-
|
1776
|
-
_tput cnorm # Enable cursor
|
1777
|
-
|
1778
1775
|
done
|
1779
1776
|
|
1777
|
+
_tput cnorm # Enable cursor
|
1778
|
+
|
1780
1779
|
if [[ $debug -eq 1 ]]; then
|
1781
1780
|
set_debug
|
1782
1781
|
fi
|
@@ -613,7 +613,7 @@ class ConfigLoader:
|
|
613
613
|
run_mode: str
|
614
614
|
|
615
615
|
@beartype
|
616
|
-
def __init__(self, _parsing_arguments_loader) -> None:
|
616
|
+
def __init__(self: Any, _parsing_arguments_loader: Any) -> None:
|
617
617
|
self.parser = argparse.ArgumentParser(
|
618
618
|
prog="omniopt",
|
619
619
|
description='A hyperparameter optimizer for slurm-based HPC-systems',
|
@@ -629,7 +629,7 @@ class ConfigLoader:
|
|
629
629
|
self.add_arguments()
|
630
630
|
|
631
631
|
@beartype
|
632
|
-
def add_arguments(self) -> None:
|
632
|
+
def add_arguments(self: Any) -> None:
|
633
633
|
required = self.parser.add_argument_group('Required arguments', 'These options have to be set')
|
634
634
|
required_but_choice = self.parser.add_argument_group('Required arguments that allow a choice', 'Of these arguments, one has to be set to continue')
|
635
635
|
optional = self.parser.add_argument_group('Optional', 'These options are optional')
|
@@ -1780,14 +1780,15 @@ def live_share(force: bool = False) -> bool:
|
|
1780
1780
|
if not get_current_run_folder():
|
1781
1781
|
return False
|
1782
1782
|
|
1783
|
-
|
1783
|
+
if SHOWN_LIVE_SHARE_COUNTER == 0:
|
1784
|
+
stdout, stderr = run_live_share_command(force)
|
1784
1785
|
|
1785
|
-
|
1786
|
-
|
1786
|
+
if stderr:
|
1787
|
+
print_green(stderr)
|
1787
1788
|
|
1788
|
-
|
1789
|
-
|
1790
|
-
|
1789
|
+
extract_and_print_qr(stderr)
|
1790
|
+
else:
|
1791
|
+
stdout, stderr = run_live_share_command(force)
|
1791
1792
|
|
1792
1793
|
SHOWN_LIVE_SHARE_COUNTER = SHOWN_LIVE_SHARE_COUNTER + 1
|
1793
1794
|
except KeyboardInterrupt:
|
@@ -3300,23 +3301,29 @@ def find_file_paths_and_print_infos(_text: str, program_code: str) -> str:
|
|
3300
3301
|
return string
|
3301
3302
|
|
3302
3303
|
@beartype
|
3303
|
-
def write_failed_logs(data_dict: dict, error_description: str = "") -> None:
|
3304
|
-
headers =
|
3305
|
-
data = [
|
3304
|
+
def write_failed_logs(data_dict: Optional[dict], error_description: str = "") -> None:
|
3305
|
+
headers = []
|
3306
|
+
data = []
|
3307
|
+
|
3308
|
+
if data_dict is not None:
|
3309
|
+
headers = list(data_dict.keys())
|
3310
|
+
data = [list(data_dict.values())]
|
3311
|
+
else:
|
3312
|
+
print_debug("No data_dict provided, writing only error description.")
|
3313
|
+
data = [[]] # leeres Datenfeld, nur error_description kommt dazu
|
3306
3314
|
|
3307
3315
|
if error_description:
|
3308
3316
|
headers.append('error_description')
|
3309
3317
|
for row in data:
|
3310
3318
|
row.append(error_description)
|
3311
3319
|
|
3312
|
-
failed_logs_dir = os.path.join(get_current_run_folder(), 'failed_logs')
|
3313
|
-
|
3314
|
-
data_file_path = os.path.join(failed_logs_dir, 'parameters.csv')
|
3315
|
-
header_file_path = os.path.join(failed_logs_dir, 'headers.csv')
|
3316
|
-
|
3317
3320
|
try:
|
3321
|
+
failed_logs_dir = os.path.join(get_current_run_folder(), 'failed_logs')
|
3318
3322
|
makedirs(failed_logs_dir)
|
3319
3323
|
|
3324
|
+
header_file_path = os.path.join(failed_logs_dir, 'headers.csv')
|
3325
|
+
data_file_path = os.path.join(failed_logs_dir, 'parameters.csv')
|
3326
|
+
|
3320
3327
|
if not os.path.exists(header_file_path):
|
3321
3328
|
try:
|
3322
3329
|
with open(header_file_path, mode='w', encoding='utf-8', newline='') as header_file:
|
@@ -3327,11 +3334,10 @@ def write_failed_logs(data_dict: dict, error_description: str = "") -> None:
|
|
3327
3334
|
print_red(f"Failed to write header file: {e}")
|
3328
3335
|
|
3329
3336
|
try:
|
3330
|
-
with open(data_file_path, mode='a', encoding=
|
3337
|
+
with open(data_file_path, mode='a', encoding='utf-8', newline='') as data_file:
|
3331
3338
|
writer = csv.writer(data_file)
|
3332
3339
|
writer.writerows(data)
|
3333
3340
|
print_debug(f"Data appended to file: {data_file_path}")
|
3334
|
-
|
3335
3341
|
except Exception as e:
|
3336
3342
|
print_red(f"Failed to append data to file: {e}")
|
3337
3343
|
|
@@ -3613,7 +3619,15 @@ def _write_job_infos_csv_build_values(start_time: Union[int, float], end_time: U
|
|
3613
3619
|
|
3614
3620
|
@beartype
|
3615
3621
|
def _write_job_infos_csv_replace_none_with_str(elements: Optional[List[str]]) -> List[str]:
|
3616
|
-
|
3622
|
+
if elements is None:
|
3623
|
+
return []
|
3624
|
+
result = []
|
3625
|
+
for element in elements:
|
3626
|
+
if element is None:
|
3627
|
+
result.append('None')
|
3628
|
+
else:
|
3629
|
+
result.append(element)
|
3630
|
+
return result
|
3617
3631
|
|
3618
3632
|
@beartype
|
3619
3633
|
def print_evaluate_times() -> None:
|
@@ -3802,8 +3816,8 @@ def _evaluate_create_signal_map() -> Dict[str, type[BaseException]]:
|
|
3802
3816
|
@beartype
|
3803
3817
|
def _evaluate_handle_result(
|
3804
3818
|
stdout: str,
|
3805
|
-
result: Union[int, float, dict, list],
|
3806
|
-
parameters: dict
|
3819
|
+
result: Optional[Union[int, float, dict, list]],
|
3820
|
+
parameters: Optional[dict]
|
3807
3821
|
) -> Dict[str, Optional[Union[float, Tuple]]]:
|
3808
3822
|
final_result: Dict[str, Optional[Union[float, Tuple]]] = {}
|
3809
3823
|
|
@@ -3856,17 +3870,15 @@ def pretty_process_output(stdout_path: str, stderr_path: str, exit_code: Optiona
|
|
3856
3870
|
def is_nonempty(s: Optional[str]) -> bool:
|
3857
3871
|
return bool(s and s.strip())
|
3858
3872
|
|
3859
|
-
if is_nonempty(stdout_txt):
|
3873
|
+
if is_nonempty(stdout_txt) and stdout_txt is not None:
|
3860
3874
|
console.rule(Text(f" {stdout_path} ", style=header_style))
|
3861
|
-
|
3862
|
-
|
3863
|
-
)
|
3875
|
+
panel = Panel(stdout_txt, title="STDOUT", border_style="cyan", padding=(0, 1))
|
3876
|
+
console.print(panel)
|
3864
3877
|
|
3865
|
-
if is_nonempty(stderr_txt):
|
3878
|
+
if is_nonempty(stderr_txt) and stderr_txt is not None:
|
3866
3879
|
console.rule(Text(f" {stderr_path} ", style=header_style))
|
3867
|
-
|
3868
|
-
|
3869
|
-
)
|
3880
|
+
panel = Panel(stderr_txt, title="STDERR", border_style="magenta", padding=(0, 1))
|
3881
|
+
console.print(panel)
|
3870
3882
|
|
3871
3883
|
if not (is_nonempty(stdout_txt) or is_nonempty(stderr_txt)):
|
3872
3884
|
print("\n")
|
@@ -4571,8 +4583,6 @@ def show_end_table_and_save_end_files() -> int:
|
|
4571
4583
|
|
4572
4584
|
display_failed_jobs_table()
|
4573
4585
|
|
4574
|
-
best_result_exit = 0
|
4575
|
-
|
4576
4586
|
best_result_exit: int = print_best_result()
|
4577
4587
|
|
4578
4588
|
if not args.dryrun:
|
@@ -7369,7 +7379,7 @@ def get_batched_arms(nr_of_jobs_to_get: int) -> list:
|
|
7369
7379
|
return batched_arms
|
7370
7380
|
|
7371
7381
|
@beartype
|
7372
|
-
def _fetch_next_trials(nr_of_jobs_to_get: int, recursion: bool = False) ->
|
7382
|
+
def _fetch_next_trials(nr_of_jobs_to_get: int, recursion: bool = False) -> Tuple[Dict[int, Any], bool]:
|
7373
7383
|
die_101_if_no_ax_client_or_experiment_or_gs()
|
7374
7384
|
|
7375
7385
|
if not ax_client:
|
@@ -8,7 +8,6 @@
|
|
8
8
|
|
9
9
|
os_name=$(uname -s)
|
10
10
|
|
11
|
-
declare -a bg_pids
|
12
11
|
declare -i exit_code=0
|
13
12
|
|
14
13
|
function set_debug {
|
@@ -223,7 +222,7 @@
|
|
223
222
|
PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
|
224
223
|
|
225
224
|
if [[ -z $CI ]]; then
|
226
|
-
green_reset_line "${PROGRESSBAR}➤Installing $MODULE
|
225
|
+
green_reset_line "${PROGRESSBAR}➤Installing $MODULE "
|
227
226
|
fi
|
228
227
|
|
229
228
|
|
@@ -239,7 +238,7 @@
|
|
239
238
|
for i in $(pip3 install --disable-pip-version-check --dry-run "$MODULE" | grep -v "already satisfied" | grep "Collecting" | sed -e 's#Collecting ##' | grep -v "^$MODULE$"); do
|
240
239
|
if [[ "$i" != "$MODULE" ]]; then
|
241
240
|
if [[ $k -eq 0 ]]; then
|
242
|
-
green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE
|
241
|
+
green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE"
|
243
242
|
fi
|
244
243
|
ppip "$i" "$MODULE" "$NUMBER_OF_MAIN_MODULES" || {
|
245
244
|
red_reset_line "❌Failed to install $i."
|
@@ -252,11 +251,11 @@
|
|
252
251
|
done
|
253
252
|
|
254
253
|
if [[ $k -gt 0 ]]; then
|
255
|
-
green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself
|
254
|
+
green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself..."
|
256
255
|
fi
|
257
256
|
fi
|
258
257
|
|
259
|
-
green_reset_line "${PROGRESSBAR}➤Installing $MODULE
|
258
|
+
green_reset_line "${PROGRESSBAR}➤Installing $MODULE..."
|
260
259
|
mkdir -p logs
|
261
260
|
export PIP_DISABLE_PIP_VERSION_CHECK=1
|
262
261
|
INSTALL_ERRORS_FILE="logs/install_errors"
|
@@ -292,7 +291,7 @@
|
|
292
291
|
PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
|
293
292
|
|
294
293
|
if [[ -z $CI ]]; then
|
295
|
-
green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully
|
294
|
+
green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully"
|
296
295
|
fi
|
297
296
|
fi
|
298
297
|
set -e
|
@@ -319,22 +318,6 @@
|
|
319
318
|
echo "$nr"
|
320
319
|
}
|
321
320
|
|
322
|
-
function get_nr_bg_jobs {
|
323
|
-
jobs -r | wc -l | tr -d " "
|
324
|
-
}
|
325
|
-
|
326
|
-
function bg_jobs_str {
|
327
|
-
bg_jobs=$(get_nr_bg_jobs)
|
328
|
-
|
329
|
-
if [[ $bg_jobs -gt 0 ]]; then
|
330
|
-
if [[ $bg_jobs -eq 1 ]]; then
|
331
|
-
echo " (Currently $bg_jobs background job)"
|
332
|
-
else
|
333
|
-
echo " (Currently $bg_jobs background jobs)"
|
334
|
-
fi
|
335
|
-
fi
|
336
|
-
}
|
337
|
-
|
338
321
|
function install_required_modules {
|
339
322
|
green_reset_line "➤Checking environment $VENV_DIR..."
|
340
323
|
MAX_NR="${#install_those[@]}"
|
@@ -346,42 +329,12 @@
|
|
346
329
|
install_this=${install_those[$key]}
|
347
330
|
PROGRESSBAR=$(generate_progress_bar_setup "$MAX_NR")
|
348
331
|
if [[ -z $CI ]]; then
|
349
|
-
green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed
|
332
|
+
green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed..."
|
350
333
|
fi
|
351
334
|
|
352
|
-
ppip "$install_this" "-" "$MAX_NR"
|
353
|
-
bg_pids+=($!)
|
354
|
-
|
355
|
-
nr_bg_jobs=$(get_nr_bg_jobs)
|
356
|
-
|
357
|
-
while [[ "$nr_bg_jobs" -gt 4 ]]; do
|
358
|
-
nr_bg_jobs=$(get_nr_bg_jobs)
|
359
|
-
if [[ -z $CI ]]; then
|
360
|
-
green_reset_line "${PROGRESSBAR}Currently waiting for jobs to end (currently $nr_bg_jobs)"
|
361
|
-
fi
|
362
|
-
wait -n
|
363
|
-
|
364
|
-
for pid in "${bg_pids[@]}"; do
|
365
|
-
wait "$pid"
|
366
|
-
job_exit_code=$?
|
367
|
-
if [[ $job_exit_code -ne 0 ]]; then
|
368
|
-
exit_code=$job_exit_code
|
369
|
-
exit "$exit_code"
|
370
|
-
fi
|
371
|
-
done
|
372
|
-
done
|
335
|
+
ppip "$install_this" "-" "$MAX_NR"
|
373
336
|
done
|
374
337
|
|
375
|
-
for pid in "${bg_pids[@]}"; do
|
376
|
-
wait "$pid"
|
377
|
-
job_exit_code=$?
|
378
|
-
if [[ $job_exit_code -ne 0 ]]; then
|
379
|
-
exit_code=$job_exit_code
|
380
|
-
exit "$exit_code"
|
381
|
-
fi
|
382
|
-
done
|
383
|
-
|
384
|
-
|
385
338
|
_tput cr
|
386
339
|
_tput el
|
387
340
|
|
@@ -439,7 +392,7 @@
|
|
439
392
|
fi
|
440
393
|
fi
|
441
394
|
|
442
|
-
green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it
|
395
|
+
green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it..."
|
443
396
|
python3 -mvenv "$VENV_DIR/" || {
|
444
397
|
red_text "❌Failed to create Virtual Environment in $VENV_DIR"
|
445
398
|
exit 20
|
@@ -1703,8 +1703,8 @@ EOF
|
|
1703
1703
|
myexit 110
|
1704
1704
|
fi
|
1705
1705
|
|
1706
|
+
_tput civis # Disable cursor
|
1706
1707
|
while [[ ! -e $LOG_PATH || ! -s $LOG_PATH ]]; do
|
1707
|
-
_tput civis # Disable cursor
|
1708
1708
|
|
1709
1709
|
current_time=$(date +%s)
|
1710
1710
|
|
@@ -1772,11 +1772,10 @@ EOF
|
|
1772
1772
|
echo -ne "$print_line"
|
1773
1773
|
sleep 0.05
|
1774
1774
|
done
|
1775
|
-
|
1776
|
-
_tput cnorm # Enable cursor
|
1777
|
-
|
1778
1775
|
done
|
1779
1776
|
|
1777
|
+
_tput cnorm # Enable cursor
|
1778
|
+
|
1780
1779
|
if [[ $debug -eq 1 ]]; then
|
1781
1780
|
set_debug
|
1782
1781
|
fi
|
@@ -1,9 +1,9 @@
|
|
1
|
-
.colorfunctions.sh,sha256=
|
1
|
+
.colorfunctions.sh,sha256=xxc08V3Fh_0Je20fkJMRO14u9VCSvMyOiMaDfioEyCY,1098
|
2
2
|
.dockerignore,sha256=vtgV4tvVZdmusf1z7MYscSBo_UTtHMG6T7Knb4llBvo,11
|
3
3
|
.general.sh,sha256=uyGMN8xNToQ0v50KoiYxm6jRmgf0orroOaodM_Nuq30,2107
|
4
4
|
.gitignore,sha256=OMaFWOR6wxjAlI85rF3euQcjQFFAl1F34abZkltKnaU,3714
|
5
5
|
.helpers.py,sha256=6uoxzpi8zfvvQy16LpGkIC1OzvDC8TR8luAOX1iW1OM,30679
|
6
|
-
.omniopt.py,sha256=
|
6
|
+
.omniopt.py,sha256=JUpMc0M0ZtIPbuDJAQpXf_Vwnz1dxEzT26WGFsNqBmA,401911
|
7
7
|
.omniopt_plot_cpu_ram_usage.py,sha256=DbOAmdrbcZtsMnHJgHfeRngjtv6zX5J0axyua_dYezc,3932
|
8
8
|
.omniopt_plot_general.py,sha256=ZERZJkvVOoJhi7SszmTF1Iln-_08_0Aki48u3LHUW-k,6809
|
9
9
|
.omniopt_plot_gpu_usage.py,sha256=ojxVicwSoiyl7f3c-6lLuT2EpyPcSJKEcbp75LgDY2k,5107
|
@@ -15,55 +15,55 @@
|
|
15
15
|
.omniopt_plot_trial_index_result.py,sha256=5DmqZAQO_PFmzdap-TIhSMAshRXpOHQacnHAtjwnzN4,4629
|
16
16
|
.omniopt_plot_worker.py,sha256=VuluQq4W6KRR5RU08dxmDSFk5mbfDRkRJQFwwcLgAGw,4524
|
17
17
|
.random_generator.py,sha256=ezBBUXpez_QaGdpCglMcJ0KZPdQP0XdX5gnLzO1xhwU,2987
|
18
|
-
.shellscript_functions,sha256=
|
18
|
+
.shellscript_functions,sha256=55nF3dy_xOeEzkDBINnu72L3RUAWMbnQbK_4GsoJlnA,13548
|
19
19
|
.tpe.py,sha256=Yd9s-ixCbWxTd3x0O1M1sok9QfM2mBEfsDwXhx50-Nc,6464
|
20
20
|
LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
21
21
|
MANIFEST.in,sha256=L3QBXyL1TtyWxbAPsfjZdCfpeBrRuI5MSgdnvwdQ22Q,24
|
22
22
|
README.md,sha256=ImtT_VuWENewZKkJySRL_qpbHbs0pr6Xgs_n9HURg90,3332
|
23
23
|
apt-dependencies.txt,sha256=X5tBB8ZLW9XaFtRh8B7C2pIkSoxNNawqioDr0QZAtuM,149
|
24
|
-
omniopt,sha256=
|
24
|
+
omniopt,sha256=WNbAGQOvqlmDPZyT3DrFJEg1Xn-QH07cgnq8n4jdRBc,47798
|
25
25
|
omniopt_docker,sha256=LWVUeyvmA5AKqAHiH9jBUkR5uZ6AHMnSy0eET7mK6E4,3602
|
26
26
|
omniopt_evaluate,sha256=9oBh0_ikCuIz_aJQZrN0j39NDiIDYoSvEFmSVIoFjJE,23842
|
27
27
|
omniopt_plot,sha256=Z8ZR10p-ZRSgMeVPO-wVCJ8lk-LQtntjZ9Bk9RifCIs,13360
|
28
28
|
omniopt_share,sha256=PiO7Vt-dL5aC2uAZZZEYlNbyGjkyMUSeWVoiIURjr3k,13999
|
29
|
-
pyproject.toml,sha256=
|
29
|
+
pyproject.toml,sha256=n43LDoRbnWGrAHhRzf7IR29MSyYykIjuSMnQDgFD_0A,397
|
30
30
|
requirements.txt,sha256=jqvp-P5m33fwsODnA_FFVVujUwIt9z_nhBRIxAtahcQ,302
|
31
31
|
setup.cfg,sha256=HEc8uu6NpfxG5_AVh5SvXOpEFMNKPPPxgMIAH144vT4,38
|
32
32
|
test_requirements.txt,sha256=qUBRLahv3rTxvKyddRhEzT-EnQyKdubu5KxyGhUHPr8,470
|
33
|
-
omniopt2-
|
34
|
-
omniopt2-
|
35
|
-
omniopt2-
|
36
|
-
omniopt2-
|
37
|
-
omniopt2-
|
38
|
-
omniopt2-
|
39
|
-
omniopt2-
|
40
|
-
omniopt2-
|
41
|
-
omniopt2-
|
42
|
-
omniopt2-
|
43
|
-
omniopt2-
|
44
|
-
omniopt2-
|
45
|
-
omniopt2-
|
46
|
-
omniopt2-
|
47
|
-
omniopt2-
|
48
|
-
omniopt2-
|
49
|
-
omniopt2-
|
50
|
-
omniopt2-
|
51
|
-
omniopt2-
|
52
|
-
omniopt2-
|
53
|
-
omniopt2-
|
54
|
-
omniopt2-
|
55
|
-
omniopt2-
|
56
|
-
omniopt2-
|
57
|
-
omniopt2-
|
58
|
-
omniopt2-
|
59
|
-
omniopt2-
|
60
|
-
omniopt2-
|
61
|
-
omniopt2.egg-info/PKG-INFO,sha256=
|
33
|
+
omniopt2-7277.data/data/bin/.colorfunctions.sh,sha256=xxc08V3Fh_0Je20fkJMRO14u9VCSvMyOiMaDfioEyCY,1098
|
34
|
+
omniopt2-7277.data/data/bin/.general.sh,sha256=uyGMN8xNToQ0v50KoiYxm6jRmgf0orroOaodM_Nuq30,2107
|
35
|
+
omniopt2-7277.data/data/bin/.helpers.py,sha256=6uoxzpi8zfvvQy16LpGkIC1OzvDC8TR8luAOX1iW1OM,30679
|
36
|
+
omniopt2-7277.data/data/bin/.omniopt.py,sha256=JUpMc0M0ZtIPbuDJAQpXf_Vwnz1dxEzT26WGFsNqBmA,401911
|
37
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_cpu_ram_usage.py,sha256=DbOAmdrbcZtsMnHJgHfeRngjtv6zX5J0axyua_dYezc,3932
|
38
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_general.py,sha256=ZERZJkvVOoJhi7SszmTF1Iln-_08_0Aki48u3LHUW-k,6809
|
39
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_gpu_usage.py,sha256=ojxVicwSoiyl7f3c-6lLuT2EpyPcSJKEcbp75LgDY2k,5107
|
40
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_kde.py,sha256=uRLWr72TDKvj3AqJ0O0AvkKZ1ok1O1QpXnbfQQdo0nA,6873
|
41
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_scatter.py,sha256=-amqmLR_YLCbHImLPh6gwVFv8iiVnXME544XHsRVCuw,8422
|
42
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_scatter_generation_method.py,sha256=rgKY_w1E516c9UucVaEvaKd8tCnoUq9xg-RrYSDzYEQ,4289
|
43
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_scatter_hex.py,sha256=w1L5gL6Bc_QudoSJi2lxEVvF17Apjjb3l2T-lXGnsUg,10279
|
44
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_time_and_exit_code.py,sha256=hC4RFDiJN_UImezFR6M5uVF-QKDqMDpq6R5DIg7dDDc,6463
|
45
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_trial_index_result.py,sha256=5DmqZAQO_PFmzdap-TIhSMAshRXpOHQacnHAtjwnzN4,4629
|
46
|
+
omniopt2-7277.data/data/bin/.omniopt_plot_worker.py,sha256=VuluQq4W6KRR5RU08dxmDSFk5mbfDRkRJQFwwcLgAGw,4524
|
47
|
+
omniopt2-7277.data/data/bin/.random_generator.py,sha256=ezBBUXpez_QaGdpCglMcJ0KZPdQP0XdX5gnLzO1xhwU,2987
|
48
|
+
omniopt2-7277.data/data/bin/.shellscript_functions,sha256=55nF3dy_xOeEzkDBINnu72L3RUAWMbnQbK_4GsoJlnA,13548
|
49
|
+
omniopt2-7277.data/data/bin/.tpe.py,sha256=Yd9s-ixCbWxTd3x0O1M1sok9QfM2mBEfsDwXhx50-Nc,6464
|
50
|
+
omniopt2-7277.data/data/bin/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
51
|
+
omniopt2-7277.data/data/bin/apt-dependencies.txt,sha256=X5tBB8ZLW9XaFtRh8B7C2pIkSoxNNawqioDr0QZAtuM,149
|
52
|
+
omniopt2-7277.data/data/bin/omniopt,sha256=WNbAGQOvqlmDPZyT3DrFJEg1Xn-QH07cgnq8n4jdRBc,47798
|
53
|
+
omniopt2-7277.data/data/bin/omniopt_docker,sha256=LWVUeyvmA5AKqAHiH9jBUkR5uZ6AHMnSy0eET7mK6E4,3602
|
54
|
+
omniopt2-7277.data/data/bin/omniopt_evaluate,sha256=9oBh0_ikCuIz_aJQZrN0j39NDiIDYoSvEFmSVIoFjJE,23842
|
55
|
+
omniopt2-7277.data/data/bin/omniopt_plot,sha256=Z8ZR10p-ZRSgMeVPO-wVCJ8lk-LQtntjZ9Bk9RifCIs,13360
|
56
|
+
omniopt2-7277.data/data/bin/omniopt_share,sha256=PiO7Vt-dL5aC2uAZZZEYlNbyGjkyMUSeWVoiIURjr3k,13999
|
57
|
+
omniopt2-7277.data/data/bin/requirements.txt,sha256=jqvp-P5m33fwsODnA_FFVVujUwIt9z_nhBRIxAtahcQ,302
|
58
|
+
omniopt2-7277.data/data/bin/setup.py,sha256=g3uEqJHXhggXwgLYoxOjsXg9Z6IV1ubh-Og59AZ264Q,4648
|
59
|
+
omniopt2-7277.data/data/bin/test_requirements.txt,sha256=qUBRLahv3rTxvKyddRhEzT-EnQyKdubu5KxyGhUHPr8,470
|
60
|
+
omniopt2-7277.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
61
|
+
omniopt2.egg-info/PKG-INFO,sha256=fsPTJP0X3feqvh61pf5KAQXX_k1VySSH62nbEPUfeEQ,5822
|
62
62
|
omniopt2.egg-info/SOURCES.txt,sha256=N-HtSaaqFRsd4XqAfeWVSp__3I-sw0d7cknJgyewRwQ,778
|
63
63
|
omniopt2.egg-info/dependency_links.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
64
64
|
omniopt2.egg-info/requires.txt,sha256=lR4dCom0VD9WtxDpAuN83qtJYZfMHl5GT8LjhUk6UJE,772
|
65
65
|
omniopt2.egg-info/top_level.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
66
|
-
omniopt2-
|
67
|
-
omniopt2-
|
68
|
-
omniopt2-
|
69
|
-
omniopt2-
|
66
|
+
omniopt2-7277.dist-info/METADATA,sha256=fsPTJP0X3feqvh61pf5KAQXX_k1VySSH62nbEPUfeEQ,5822
|
67
|
+
omniopt2-7277.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
68
|
+
omniopt2-7277.dist-info/top_level.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
69
|
+
omniopt2-7277.dist-info/RECORD,,
|
omniopt2.egg-info/PKG-INFO
CHANGED
pyproject.toml
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{omniopt2-7262.data → omniopt2-7277.data}/data/bin/.omniopt_plot_scatter_generation_method.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|