omniopt2 7263__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.
Files changed (38) hide show
  1. .colorfunctions.sh +0 -1
  2. .omniopt.py +42 -32
  3. .shellscript_functions +7 -32
  4. omniopt +3 -4
  5. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.colorfunctions.sh +0 -1
  6. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt.py +42 -32
  7. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.shellscript_functions +7 -32
  8. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/omniopt +3 -4
  9. {omniopt2-7263.dist-info → omniopt2-7277.dist-info}/METADATA +1 -1
  10. {omniopt2-7263.dist-info → omniopt2-7277.dist-info}/RECORD +38 -38
  11. omniopt2.egg-info/PKG-INFO +1 -1
  12. pyproject.toml +1 -1
  13. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.general.sh +0 -0
  14. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.helpers.py +0 -0
  15. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_cpu_ram_usage.py +0 -0
  16. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_general.py +0 -0
  17. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_gpu_usage.py +0 -0
  18. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_kde.py +0 -0
  19. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_scatter.py +0 -0
  20. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_scatter_generation_method.py +0 -0
  21. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_scatter_hex.py +0 -0
  22. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_time_and_exit_code.py +0 -0
  23. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_trial_index_result.py +0 -0
  24. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.omniopt_plot_worker.py +0 -0
  25. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.random_generator.py +0 -0
  26. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/.tpe.py +0 -0
  27. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/LICENSE +0 -0
  28. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/apt-dependencies.txt +0 -0
  29. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/omniopt_docker +0 -0
  30. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/omniopt_evaluate +0 -0
  31. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/omniopt_plot +0 -0
  32. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/omniopt_share +0 -0
  33. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/requirements.txt +0 -0
  34. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/setup.py +0 -0
  35. {omniopt2-7263.data → omniopt2-7277.data}/data/bin/test_requirements.txt +0 -0
  36. {omniopt2-7263.dist-info → omniopt2-7277.dist-info}/WHEEL +0 -0
  37. {omniopt2-7263.dist-info → omniopt2-7277.dist-info}/licenses/LICENSE +0 -0
  38. {omniopt2-7263.dist-info → omniopt2-7277.dist-info}/top_level.txt +0 -0
.colorfunctions.sh CHANGED
@@ -47,7 +47,6 @@ _tput() {
47
47
  ;;
48
48
  bel)
49
49
  if [[ "$OO_MAIN_TESTS" -eq "1" ]]; then
50
- echo "Not print BEL-character for main-test-suite ($CHAR, $OO_MAIN_TESTS)"
51
50
  return 0
52
51
  else
53
52
  echo -ne '\a'
.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
- stdout, stderr = run_live_share_command(force)
1783
+ if SHOWN_LIVE_SHARE_COUNTER == 0:
1784
+ stdout, stderr = run_live_share_command(force)
1784
1785
 
1785
- if SHOWN_LIVE_SHARE_COUNTER == 0 and stderr:
1786
- print_green(stderr)
1786
+ if stderr:
1787
+ print_green(stderr)
1787
1788
 
1788
- extract_and_print_qr(stderr)
1789
-
1790
- time.sleep(1)
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 = list(data_dict.keys())
3305
- data = [list(data_dict.values())]
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="utf-8", newline='') as data_file:
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
- return ['None' if element is None else element for element in elements]
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
- console.print(
3862
- Panel(stdout_txt, title="STDOUT", border_style="cyan", padding=(0, 1))
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
- console.print(
3868
- Panel(stderr_txt, title="STDERR", border_style="magenta", padding=(0, 1))
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) -> Optional[Tuple[Dict[int, Any], bool]]:
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
@@ -222,7 +222,7 @@
222
222
  PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
223
223
 
224
224
  if [[ -z $CI ]]; then
225
- green_reset_line "${PROGRESSBAR}➤Installing $MODULE $(bg_jobs_str)"
225
+ green_reset_line "${PROGRESSBAR}➤Installing $MODULE "
226
226
  fi
227
227
 
228
228
 
@@ -238,7 +238,7 @@
238
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
239
239
  if [[ "$i" != "$MODULE" ]]; then
240
240
  if [[ $k -eq 0 ]]; then
241
- green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE$(bg_jobs_str)"
241
+ green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE"
242
242
  fi
243
243
  ppip "$i" "$MODULE" "$NUMBER_OF_MAIN_MODULES" || {
244
244
  red_reset_line "❌Failed to install $i."
@@ -251,11 +251,11 @@
251
251
  done
252
252
 
253
253
  if [[ $k -gt 0 ]]; then
254
- green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself$(bg_jobs_str)..."
254
+ green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself..."
255
255
  fi
256
256
  fi
257
257
 
258
- green_reset_line "${PROGRESSBAR}➤Installing $MODULE$(bg_jobs_str)..."
258
+ green_reset_line "${PROGRESSBAR}➤Installing $MODULE..."
259
259
  mkdir -p logs
260
260
  export PIP_DISABLE_PIP_VERSION_CHECK=1
261
261
  INSTALL_ERRORS_FILE="logs/install_errors"
@@ -291,7 +291,7 @@
291
291
  PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
292
292
 
293
293
  if [[ -z $CI ]]; then
294
- green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully$(bg_jobs_str)"
294
+ green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully"
295
295
  fi
296
296
  fi
297
297
  set -e
@@ -318,22 +318,6 @@
318
318
  echo "$nr"
319
319
  }
320
320
 
321
- function get_nr_bg_jobs {
322
- jobs -r | wc -l | tr -d " "
323
- }
324
-
325
- function bg_jobs_str {
326
- bg_jobs=$(get_nr_bg_jobs)
327
-
328
- if [[ $bg_jobs -gt 0 ]]; then
329
- if [[ $bg_jobs -eq 1 ]]; then
330
- echo " (Currently $bg_jobs background job)"
331
- else
332
- echo " (Currently $bg_jobs background jobs)"
333
- fi
334
- fi
335
- }
336
-
337
321
  function install_required_modules {
338
322
  green_reset_line "➤Checking environment $VENV_DIR..."
339
323
  MAX_NR="${#install_those[@]}"
@@ -345,19 +329,10 @@
345
329
  install_this=${install_those[$key]}
346
330
  PROGRESSBAR=$(generate_progress_bar_setup "$MAX_NR")
347
331
  if [[ -z $CI ]]; then
348
- green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed$(bg_jobs_str)..."
332
+ green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed..."
349
333
  fi
350
334
 
351
335
  ppip "$install_this" "-" "$MAX_NR"
352
-
353
- nr_bg_jobs=$(get_nr_bg_jobs)
354
-
355
- while [[ "$nr_bg_jobs" -gt 4 ]]; do
356
- nr_bg_jobs=$(get_nr_bg_jobs)
357
- if [[ -z $CI ]]; then
358
- green_reset_line "${PROGRESSBAR}Currently waiting for jobs to end (currently $nr_bg_jobs)"
359
- fi
360
- done
361
336
  done
362
337
 
363
338
  _tput cr
@@ -417,7 +392,7 @@
417
392
  fi
418
393
  fi
419
394
 
420
- green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it$(bg_jobs_str)..."
395
+ green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it..."
421
396
  python3 -mvenv "$VENV_DIR/" || {
422
397
  red_text "❌Failed to create Virtual Environment in $VENV_DIR"
423
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
@@ -47,7 +47,6 @@ _tput() {
47
47
  ;;
48
48
  bel)
49
49
  if [[ "$OO_MAIN_TESTS" -eq "1" ]]; then
50
- echo "Not print BEL-character for main-test-suite ($CHAR, $OO_MAIN_TESTS)"
51
50
  return 0
52
51
  else
53
52
  echo -ne '\a'
@@ -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
- stdout, stderr = run_live_share_command(force)
1783
+ if SHOWN_LIVE_SHARE_COUNTER == 0:
1784
+ stdout, stderr = run_live_share_command(force)
1784
1785
 
1785
- if SHOWN_LIVE_SHARE_COUNTER == 0 and stderr:
1786
- print_green(stderr)
1786
+ if stderr:
1787
+ print_green(stderr)
1787
1788
 
1788
- extract_and_print_qr(stderr)
1789
-
1790
- time.sleep(1)
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 = list(data_dict.keys())
3305
- data = [list(data_dict.values())]
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="utf-8", newline='') as data_file:
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
- return ['None' if element is None else element for element in elements]
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
- console.print(
3862
- Panel(stdout_txt, title="STDOUT", border_style="cyan", padding=(0, 1))
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
- console.print(
3868
- Panel(stderr_txt, title="STDERR", border_style="magenta", padding=(0, 1))
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) -> Optional[Tuple[Dict[int, Any], bool]]:
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:
@@ -222,7 +222,7 @@
222
222
  PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
223
223
 
224
224
  if [[ -z $CI ]]; then
225
- green_reset_line "${PROGRESSBAR}➤Installing $MODULE $(bg_jobs_str)"
225
+ green_reset_line "${PROGRESSBAR}➤Installing $MODULE "
226
226
  fi
227
227
 
228
228
 
@@ -238,7 +238,7 @@
238
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
239
239
  if [[ "$i" != "$MODULE" ]]; then
240
240
  if [[ $k -eq 0 ]]; then
241
- green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE$(bg_jobs_str)"
241
+ green_reset_line "${PROGRESSBAR}➤Installing requirements for $MODULE"
242
242
  fi
243
243
  ppip "$i" "$MODULE" "$NUMBER_OF_MAIN_MODULES" || {
244
244
  red_reset_line "❌Failed to install $i."
@@ -251,11 +251,11 @@
251
251
  done
252
252
 
253
253
  if [[ $k -gt 0 ]]; then
254
- green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself$(bg_jobs_str)..."
254
+ green_reset_line "${PROGRESSBAR}➤Installed all requirements for $MODULE, now installing the package itself..."
255
255
  fi
256
256
  fi
257
257
 
258
- green_reset_line "${PROGRESSBAR}➤Installing $MODULE$(bg_jobs_str)..."
258
+ green_reset_line "${PROGRESSBAR}➤Installing $MODULE..."
259
259
  mkdir -p logs
260
260
  export PIP_DISABLE_PIP_VERSION_CHECK=1
261
261
  INSTALL_ERRORS_FILE="logs/install_errors"
@@ -291,7 +291,7 @@
291
291
  PROGRESSBAR=$(generate_progress_bar_setup "$NUMBER_OF_MAIN_MODULES")
292
292
 
293
293
  if [[ -z $CI ]]; then
294
- green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully$(bg_jobs_str)"
294
+ green_reset_line "${PROGRESSBAR}✅$MODULE installed successfully"
295
295
  fi
296
296
  fi
297
297
  set -e
@@ -318,22 +318,6 @@
318
318
  echo "$nr"
319
319
  }
320
320
 
321
- function get_nr_bg_jobs {
322
- jobs -r | wc -l | tr -d " "
323
- }
324
-
325
- function bg_jobs_str {
326
- bg_jobs=$(get_nr_bg_jobs)
327
-
328
- if [[ $bg_jobs -gt 0 ]]; then
329
- if [[ $bg_jobs -eq 1 ]]; then
330
- echo " (Currently $bg_jobs background job)"
331
- else
332
- echo " (Currently $bg_jobs background jobs)"
333
- fi
334
- fi
335
- }
336
-
337
321
  function install_required_modules {
338
322
  green_reset_line "➤Checking environment $VENV_DIR..."
339
323
  MAX_NR="${#install_those[@]}"
@@ -345,19 +329,10 @@
345
329
  install_this=${install_those[$key]}
346
330
  PROGRESSBAR=$(generate_progress_bar_setup "$MAX_NR")
347
331
  if [[ -z $CI ]]; then
348
- green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed$(bg_jobs_str)..."
332
+ green_reset_line "${PROGRESSBAR}➤Checking if $install_this is installed..."
349
333
  fi
350
334
 
351
335
  ppip "$install_this" "-" "$MAX_NR"
352
-
353
- nr_bg_jobs=$(get_nr_bg_jobs)
354
-
355
- while [[ "$nr_bg_jobs" -gt 4 ]]; do
356
- nr_bg_jobs=$(get_nr_bg_jobs)
357
- if [[ -z $CI ]]; then
358
- green_reset_line "${PROGRESSBAR}Currently waiting for jobs to end (currently $nr_bg_jobs)"
359
- fi
360
- done
361
336
  done
362
337
 
363
338
  _tput cr
@@ -417,7 +392,7 @@
417
392
  fi
418
393
  fi
419
394
 
420
- green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it$(bg_jobs_str)..."
395
+ green_reset_line "${PROGRESSBAR}➤Environment $VENV_DIR was not found. Creating it..."
421
396
  python3 -mvenv "$VENV_DIR/" || {
422
397
  red_text "❌Failed to create Virtual Environment in $VENV_DIR"
423
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,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omniopt2
3
- Version: 7263
3
+ Version: 7277
4
4
  Summary: Automatic highly parallelized hyperparameter optimizer based on Ax/Botorch
5
5
  Home-page: https://scads.ai/transfer-2/verfuegbare-software-dienste-en/omniopt/
6
6
  Author: Norman Koch
@@ -1,9 +1,9 @@
1
- .colorfunctions.sh,sha256=yCEfWolwKtZps4TcN1rLbZETHUQSh8kpTCytPGCLfNU,1177
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=VCqF5dxME7HZBgWH7lzWXQEYk49xMCZUxccnJmriqM4,401395
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=5ss-dSF3z5r7nk4hH-KbzWn4tTr-hKoG9lp_BENLO9s,14188
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=nL1EoqoLiuyVixXfOMKwoXyQwYg0EzAhPWofxixmm14,47801
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=p7AKOr7b78AdH6jBYaWHkqIMXwoD9k1P7dzvBlblF_E,397
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-7263.data/data/bin/.colorfunctions.sh,sha256=yCEfWolwKtZps4TcN1rLbZETHUQSh8kpTCytPGCLfNU,1177
34
- omniopt2-7263.data/data/bin/.general.sh,sha256=uyGMN8xNToQ0v50KoiYxm6jRmgf0orroOaodM_Nuq30,2107
35
- omniopt2-7263.data/data/bin/.helpers.py,sha256=6uoxzpi8zfvvQy16LpGkIC1OzvDC8TR8luAOX1iW1OM,30679
36
- omniopt2-7263.data/data/bin/.omniopt.py,sha256=VCqF5dxME7HZBgWH7lzWXQEYk49xMCZUxccnJmriqM4,401395
37
- omniopt2-7263.data/data/bin/.omniopt_plot_cpu_ram_usage.py,sha256=DbOAmdrbcZtsMnHJgHfeRngjtv6zX5J0axyua_dYezc,3932
38
- omniopt2-7263.data/data/bin/.omniopt_plot_general.py,sha256=ZERZJkvVOoJhi7SszmTF1Iln-_08_0Aki48u3LHUW-k,6809
39
- omniopt2-7263.data/data/bin/.omniopt_plot_gpu_usage.py,sha256=ojxVicwSoiyl7f3c-6lLuT2EpyPcSJKEcbp75LgDY2k,5107
40
- omniopt2-7263.data/data/bin/.omniopt_plot_kde.py,sha256=uRLWr72TDKvj3AqJ0O0AvkKZ1ok1O1QpXnbfQQdo0nA,6873
41
- omniopt2-7263.data/data/bin/.omniopt_plot_scatter.py,sha256=-amqmLR_YLCbHImLPh6gwVFv8iiVnXME544XHsRVCuw,8422
42
- omniopt2-7263.data/data/bin/.omniopt_plot_scatter_generation_method.py,sha256=rgKY_w1E516c9UucVaEvaKd8tCnoUq9xg-RrYSDzYEQ,4289
43
- omniopt2-7263.data/data/bin/.omniopt_plot_scatter_hex.py,sha256=w1L5gL6Bc_QudoSJi2lxEVvF17Apjjb3l2T-lXGnsUg,10279
44
- omniopt2-7263.data/data/bin/.omniopt_plot_time_and_exit_code.py,sha256=hC4RFDiJN_UImezFR6M5uVF-QKDqMDpq6R5DIg7dDDc,6463
45
- omniopt2-7263.data/data/bin/.omniopt_plot_trial_index_result.py,sha256=5DmqZAQO_PFmzdap-TIhSMAshRXpOHQacnHAtjwnzN4,4629
46
- omniopt2-7263.data/data/bin/.omniopt_plot_worker.py,sha256=VuluQq4W6KRR5RU08dxmDSFk5mbfDRkRJQFwwcLgAGw,4524
47
- omniopt2-7263.data/data/bin/.random_generator.py,sha256=ezBBUXpez_QaGdpCglMcJ0KZPdQP0XdX5gnLzO1xhwU,2987
48
- omniopt2-7263.data/data/bin/.shellscript_functions,sha256=5ss-dSF3z5r7nk4hH-KbzWn4tTr-hKoG9lp_BENLO9s,14188
49
- omniopt2-7263.data/data/bin/.tpe.py,sha256=Yd9s-ixCbWxTd3x0O1M1sok9QfM2mBEfsDwXhx50-Nc,6464
50
- omniopt2-7263.data/data/bin/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
51
- omniopt2-7263.data/data/bin/apt-dependencies.txt,sha256=X5tBB8ZLW9XaFtRh8B7C2pIkSoxNNawqioDr0QZAtuM,149
52
- omniopt2-7263.data/data/bin/omniopt,sha256=nL1EoqoLiuyVixXfOMKwoXyQwYg0EzAhPWofxixmm14,47801
53
- omniopt2-7263.data/data/bin/omniopt_docker,sha256=LWVUeyvmA5AKqAHiH9jBUkR5uZ6AHMnSy0eET7mK6E4,3602
54
- omniopt2-7263.data/data/bin/omniopt_evaluate,sha256=9oBh0_ikCuIz_aJQZrN0j39NDiIDYoSvEFmSVIoFjJE,23842
55
- omniopt2-7263.data/data/bin/omniopt_plot,sha256=Z8ZR10p-ZRSgMeVPO-wVCJ8lk-LQtntjZ9Bk9RifCIs,13360
56
- omniopt2-7263.data/data/bin/omniopt_share,sha256=PiO7Vt-dL5aC2uAZZZEYlNbyGjkyMUSeWVoiIURjr3k,13999
57
- omniopt2-7263.data/data/bin/requirements.txt,sha256=jqvp-P5m33fwsODnA_FFVVujUwIt9z_nhBRIxAtahcQ,302
58
- omniopt2-7263.data/data/bin/setup.py,sha256=g3uEqJHXhggXwgLYoxOjsXg9Z6IV1ubh-Og59AZ264Q,4648
59
- omniopt2-7263.data/data/bin/test_requirements.txt,sha256=qUBRLahv3rTxvKyddRhEzT-EnQyKdubu5KxyGhUHPr8,470
60
- omniopt2-7263.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
61
- omniopt2.egg-info/PKG-INFO,sha256=iNQZ4N0CFV3IPB8FRKxwg8kRVLAnZnotiHMbhjjTZ-4,5822
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-7263.dist-info/METADATA,sha256=iNQZ4N0CFV3IPB8FRKxwg8kRVLAnZnotiHMbhjjTZ-4,5822
67
- omniopt2-7263.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
68
- omniopt2-7263.dist-info/top_level.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
69
- omniopt2-7263.dist-info/RECORD,,
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,,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omniopt2
3
- Version: 7263
3
+ Version: 7277
4
4
  Summary: Automatic highly parallelized hyperparameter optimizer based on Ax/Botorch
5
5
  Home-page: https://scads.ai/transfer-2/verfuegbare-software-dienste-en/omniopt/
6
6
  Author: Norman Koch
pyproject.toml CHANGED
@@ -5,7 +5,7 @@ authors = [
5
5
  {email = "norman.koch@tu-dresden.de"},
6
6
  {name = "Norman Koch"}
7
7
  ]
8
- version = "7263"
8
+ version = "7277"
9
9
 
10
10
  readme = "README.md"
11
11
  dynamic = ["dependencies"]