ert 19.0.0rc1__py3-none-any.whl → 19.0.0rc3__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 (48) hide show
  1. ert/__main__.py +63 -94
  2. ert/analysis/_es_update.py +14 -11
  3. ert/config/_create_observation_dataframes.py +262 -23
  4. ert/config/_observations.py +153 -181
  5. ert/config/_read_summary.py +5 -4
  6. ert/config/ert_config.py +56 -1
  7. ert/config/parsing/observations_parser.py +0 -6
  8. ert/config/rft_config.py +1 -1
  9. ert/dark_storage/compute/__init__.py +0 -0
  10. ert/dark_storage/compute/misfits.py +42 -0
  11. ert/dark_storage/endpoints/__init__.py +2 -0
  12. ert/dark_storage/endpoints/compute/__init__.py +0 -0
  13. ert/dark_storage/endpoints/compute/misfits.py +95 -0
  14. ert/dark_storage/endpoints/experiments.py +3 -0
  15. ert/dark_storage/json_schema/experiment.py +1 -0
  16. ert/gui/main_window.py +0 -2
  17. ert/gui/tools/manage_experiments/export_dialog.py +0 -4
  18. ert/gui/tools/manage_experiments/storage_info_widget.py +5 -1
  19. ert/gui/tools/plot/plot_api.py +10 -10
  20. ert/gui/tools/plot/plot_widget.py +0 -5
  21. ert/gui/tools/plot/plot_window.py +1 -1
  22. ert/services/__init__.py +3 -7
  23. ert/services/_base_service.py +387 -0
  24. ert/services/_storage_main.py +22 -59
  25. ert/services/ert_server.py +24 -186
  26. ert/services/webviz_ert_service.py +20 -0
  27. ert/shared/storage/command.py +38 -0
  28. ert/shared/storage/extraction.py +42 -0
  29. ert/shared/version.py +3 -3
  30. ert/storage/local_ensemble.py +95 -2
  31. ert/storage/local_experiment.py +16 -0
  32. ert/storage/local_storage.py +1 -3
  33. ert/utils/__init__.py +0 -20
  34. {ert-19.0.0rc1.dist-info → ert-19.0.0rc3.dist-info}/METADATA +2 -2
  35. {ert-19.0.0rc1.dist-info → ert-19.0.0rc3.dist-info}/RECORD +46 -41
  36. {ert-19.0.0rc1.dist-info → ert-19.0.0rc3.dist-info}/WHEEL +1 -1
  37. everest/bin/everest_script.py +5 -5
  38. everest/bin/kill_script.py +2 -2
  39. everest/bin/monitor_script.py +2 -2
  40. everest/bin/utils.py +4 -4
  41. everest/detached/everserver.py +6 -6
  42. everest/gui/main_window.py +2 -2
  43. everest/util/__init__.py +19 -1
  44. ert/config/observation_config_migrations.py +0 -793
  45. ert/storage/migration/to22.py +0 -18
  46. {ert-19.0.0rc1.dist-info → ert-19.0.0rc3.dist-info}/entry_points.txt +0 -0
  47. {ert-19.0.0rc1.dist-info → ert-19.0.0rc3.dist-info}/licenses/COPYING +0 -0
  48. {ert-19.0.0rc1.dist-info → ert-19.0.0rc3.dist-info}/top_level.txt +0 -0
@@ -18,7 +18,7 @@ _ert/forward_model_runner/reporting/statemachine.py,sha256=4W-GfsqTWDFdI2774ghIj
18
18
  _ert/forward_model_runner/util/__init__.py,sha256=F3uc8Yk-UAAeNMsQTRUjGU8KVNv2av9xAM7lTm3PNJs,65
19
19
  _ert/forward_model_runner/util/data.py,sha256=PWXDgmjdmjLLKl2Z7zdEpXIheDYNSa60LkFay6s4-h0,1175
20
20
  ert/__init__.py,sha256=sL2Cq4_YZRcvX-0JVOijZ5cXBteTkBx7Zs9l_SNPQnY,932
21
- ert/__main__.py,sha256=zKtdA5YVQFsofSebSHDtijI4usf--DB3TAiHZHaToBM,26389
21
+ ert/__main__.py,sha256=qnjccxjZzawCo1SMUHcWafbLTwZTQb5PB8DNtIO8J0s,25348
22
22
  ert/base_model_context.py,sha256=TmZlWOPL0dfE8D2kIkGU108A6tgHgeB2tG-vEW4bGZA,853
23
23
  ert/constant_filenames.py,sha256=_oyoLi3nnxQXJxbPj8slcs-w5t9yCxnom_jwIl1iNwU,205
24
24
  ert/libres_facade.py,sha256=iQpgyoIvNK2dqklTOahIknyPiLXtpq9hAsWmAVWQhb4,3023
@@ -32,7 +32,7 @@ ert/trace.py,sha256=m2ZjKd1nf7LjBM2lL0fk1cNF04HnQs8blZhQbTXgcB0,1274
32
32
  ert/workflow_runner.py,sha256=3x0k6D_2euNLf2YbjjIPwICz7q7OvrvIoKUQuBcBsuc,7334
33
33
  ert/analysis/__init__.py,sha256=NNLGQG9gex6lJ8IZjEg_tXTfSeJceRA9zjOek-UeY0Y,591
34
34
  ert/analysis/_enif_update.py,sha256=Oh9oUiMLbBT8o3TPl9x3ZR24gqBpIn6nFPwrOjMNtnY,7654
35
- ert/analysis/_es_update.py,sha256=TpW0Y66yKTQYRFGwEaTgD0-rBEopBubr5jwVAo66NEM,17044
35
+ ert/analysis/_es_update.py,sha256=cKwkJu-iTeQArQcW5NrAGhSASTBQJHMCieuLj5_p9ho,17107
36
36
  ert/analysis/_update_commons.py,sha256=y2MYW_B02TDBcnuPJBh3WWqBCUmL0f9JoZ8nB_-K0pQ,12375
37
37
  ert/analysis/event.py,sha256=vBYqtTl5DXePPWHTLX9bROmGTD2ixcrQh4K07g-UikM,2248
38
38
  ert/analysis/misfit_preprocessor.py,sha256=2MjlL2yIg5KQpqWiD3675-hoy_5QM49pWQ7VXK4rous,8001
@@ -42,11 +42,11 @@ ert/cli/main.py,sha256=oWiIUF5r2E1QOforFY-nQ2k3mrE74EDqrk8QcjcdfmE,6567
42
42
  ert/cli/monitor.py,sha256=ad6aT1Ch-To5XpQR6eR1SMCBZ9HNRjPE9X8o6TEGURg,5973
43
43
  ert/cli/workflow.py,sha256=QKbpHr_Tc5NQjSNL1tB4uCo9ykTkqvwohywbjGAm-r4,1260
44
44
  ert/config/__init__.py,sha256=RVLt_v8nF9xjG51smLK9OXZT6yAH5KEmSgnFYYvVogU,4310
45
- ert/config/_create_observation_dataframes.py,sha256=je_UPh9_1SAcQXafmfh9Djr8JqCMSXyEl1ijODXKjrg,11115
45
+ ert/config/_create_observation_dataframes.py,sha256=P-cyJlushUR4Em58rRAsmK3jw3PoYhbqsT5qsHrpL7c,19717
46
46
  ert/config/_design_matrix_validator.py,sha256=_eEk07L4c7sv8WwTYYGHc_rT1HEOZDqLrgla0r9rpj0,1308
47
47
  ert/config/_get_num_cpu.py,sha256=IXOEHkGJEz7kEOysc29q-jpaXqbWeu-Y4FlQvGp0ryM,7684
48
- ert/config/_observations.py,sha256=txqNQ29BOh59i_mMlNDDuvmPnEHdD2vskv4j5AHlM6Q,15793
49
- ert/config/_read_summary.py,sha256=4gA2qyofCNQGyOPIDHfOrBUadrmIKimZ9MK2W20ynko,7590
48
+ ert/config/_observations.py,sha256=wByDMhvJau9iqimyVPcfY10ALlVJFP7nKoaMyON2r1A,14318
49
+ ert/config/_read_summary.py,sha256=_1f6iZV2tBDRtPn5C_29cyjN7suA5hh1HnLKyF9L4jY,7500
50
50
  ert/config/_str_to_bool.py,sha256=AxNCJAuTtKF-562CRh7HgjQIyM7N-jjSlRJKvpCNk9I,852
51
51
  ert/config/analysis_config.py,sha256=v-ZppIlP_NkmhtuYuxm31m2V3eA7YjvC3rDsMXm5qPk,8646
52
52
  ert/config/analysis_module.py,sha256=TLluRobz_0NNMDSGFdM4L2t9agfvHyhoN-b1Rg8MAE4,2070
@@ -54,7 +54,7 @@ ert/config/capture_validation.py,sha256=8HGEbJ2z9FXeEaxSewejP7NtEh4LLomPwcdpC0CJ
54
54
  ert/config/design_matrix.py,sha256=yyAFBppTwZXt4OeN6kxRmLk16jF8bntQWLHU_-rDQn4,17236
55
55
  ert/config/distribution.py,sha256=rzpO-U8c2ptsj1KlfUw6n_CRaj-e1cvzVvasR0t5sZI,12728
56
56
  ert/config/ensemble_config.py,sha256=b0KuQ_y85kr4AOPPX_qieYKgnDGZ4_87bSjYpVZuOlM,7322
57
- ert/config/ert_config.py,sha256=oToFsxaxdrpljdYWqHDW9-yaQnuSQ4kq5uDIR-dWsdk,55353
57
+ ert/config/ert_config.py,sha256=jLiqGYLA-lBlnHoh6tmWa1kZE6LT11gwoSZD-eLEYCs,57415
58
58
  ert/config/ert_plugin.py,sha256=hENwrc9FfhqUYjVpFYcmy66jDLgU_gagOJFBcYjxe6A,458
59
59
  ert/config/ert_script.py,sha256=64FZ-dMI8DZtRLHWReC19KY-ZOsBhdgYkwAe9ZWLc_I,8405
60
60
  ert/config/everest_control.py,sha256=-bwFEb_GpdodQ3N_BscQdcKatMlWBs8UVSCDURV8Q3s,8072
@@ -67,14 +67,13 @@ ert/config/gen_kw_config.py,sha256=_fboMvCjtk5CChSl-4A5LN3YNII5y9jiK1YLSHj_48M,1
67
67
  ert/config/known_response_types.py,sha256=aIlO4ox21-cmsigAJUbQwbkHjfpppQ_CDYzbl5jN9q0,454
68
68
  ert/config/lint_file.py,sha256=DZv2j2OzhArtr7oDDUin6lJRwP6Ww620b7Yh-0SHUFc,671
69
69
  ert/config/model_config.py,sha256=puFBesPfksWM9Yp1qKa1gu_y7r2drZf9etJUBqGspu4,5056
70
- ert/config/observation_config_migrations.py,sha256=cYdhSjbEAM4mCQD2LTRvfPbc9orTQzeyZqE3YPDFDIs,27006
71
70
  ert/config/parameter_config.py,sha256=9bXooLk9UIXPrqVhZN8Q42-3bxkyDh1Wxf2YjrzmaB8,5038
72
71
  ert/config/parse_arg_types_list.py,sha256=Z0dy6c7mpkkZCMHXhR3KWpQJx8bboDFiKQUTevMcsVs,917
73
72
  ert/config/queue_config.py,sha256=PF0TNcdzoWVLWU0Nwd5lV3RipS9bUAZxwmDyqEgJGBg,19630
74
73
  ert/config/refcase.py,sha256=hTTJ87wYTVqlwkIf1vyjxnnvIiZ-msDfhT-_OxE-yjE,1555
75
74
  ert/config/response_config.py,sha256=40cDJyxwNnPzkVfjyq4MtCIe0PrnXxZm577omBM7Fu8,2305
76
75
  ert/config/responses_index.py,sha256=ewBOFRkus6LMg3GYao53KI4-6T2Gr6IJ1OhWOaiRP_c,1437
77
- ert/config/rft_config.py,sha256=Z_dGFBUmIBICaBmRyLPf4vl1-Gl8RyaesnJeEz06IzU,10141
76
+ ert/config/rft_config.py,sha256=fqWQ1wOoIIqptgvqKH-F_G0R9HIRfEhi117Cwjhcnvw,10123
78
77
  ert/config/summary_config.py,sha256=T0NPZQ0GX0ZLJL_dMVEZl2taRf-HQH7zhGO7tPBIo3w,3980
79
78
  ert/config/surface_config.py,sha256=6UlNsrVhSznFzK08M64ru70wZoq_WQZE7Iz19tQz7cg,10316
80
79
  ert/config/workflow.py,sha256=WqEzT5YtXj0v6Quzqn0VP7fKTPUSpAgnKtgxoE8hL24,3569
@@ -100,7 +99,7 @@ ert/config/parsing/forward_model_schema.py,sha256=m2a9rVVPbw8HusoIv5bgrGbnPVKt-9
100
99
  ert/config/parsing/history_source.py,sha256=z-DCe5TS3egxSXoK1kOIXC2IWL70kUhQNtzfTWsl8iU,141
101
100
  ert/config/parsing/hook_runtime.py,sha256=f1rRgYOXl6HY0acMNT0am5cdS-5cJFA0FnCausoEDmA,315
102
101
  ert/config/parsing/lark_parser.py,sha256=SS0yXTI5w_qmpFvePMO-r0g9NPqOOrlCFF3amPefnLM,15930
103
- ert/config/parsing/observations_parser.py,sha256=idpvJGkP72eO3P95g3kwKjovZS9C1loDQAclDRlFAbU,6955
102
+ ert/config/parsing/observations_parser.py,sha256=35l2UdX3mBPh51wOjyUnruo5FdH5YOxqQ1X6TuRMYyQ,6792
104
103
  ert/config/parsing/queue_system.py,sha256=2bFuVc1JSVyE3gnBnN4YsUXHfLHeWAtasnPPCu9Za_w,793
105
104
  ert/config/parsing/schema_dict.py,sha256=MWKhtLhdRvqfWm8oZatWFnAhiIU03DdQCOaX6A71068,4313
106
105
  ert/config/parsing/schema_item_type.py,sha256=LP6lXE7YihnAEVP3kCJ80kdpgH6Veu--xcPfgaqJhdc,653
@@ -117,19 +116,22 @@ ert/dark_storage/security.py,sha256=-rKpL0yPvsPiKs-SsMgZ4JQE87vgS1DE6BIQi43L79I,
117
116
  ert/dark_storage/client/__init__.py,sha256=wygW0TqMVtKC6oScJkbqa8XqLO_RFUr8HODUDY6XR2k,122
118
117
  ert/dark_storage/client/_session.py,sha256=1oWlBfXb952zShsn2KjSlugGoyyY9Ur3RIUyVDgqK1Q,2033
119
118
  ert/dark_storage/client/client.py,sha256=Ia4r5-NrJx0fRdaJNNe7UVlDjW_C33DjPpnSBxP7-ag,1140
120
- ert/dark_storage/compute/misfits.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
121
- ert/dark_storage/endpoints/__init__.py,sha256=Vm-NFAKWx8xFYTmo3xkQDbo-50uNH8TFzXg-E7Lpg2o,803
119
+ ert/dark_storage/compute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
120
+ ert/dark_storage/compute/misfits.py,sha256=7dYyYIBH1Jt9g4bIsnHJbjR7mWcoeZpqqaHQMhd12OY,1374
121
+ ert/dark_storage/endpoints/__init__.py,sha256=o093-GLgw8br7PDKhHna0LviXeJQdC5P1RoIW2xlLqs,895
122
122
  ert/dark_storage/endpoints/ensembles.py,sha256=22M358HTAjiNuKaRYp9FZ3SZvkWL3v9wMDD0DGwLF8M,1363
123
123
  ert/dark_storage/endpoints/experiment_server.py,sha256=snaCwRXayGn6_SIqH49Qmi4u1ZILiH2ynFZL6L4YsxQ,14118
124
- ert/dark_storage/endpoints/experiments.py,sha256=fpp4H892IIyj_cJY45DmaAKFk_ror6uk5ERmJ-tXza8,3269
124
+ ert/dark_storage/endpoints/experiments.py,sha256=_tY95HzW6ibJy7N9C-1XICFHSOrKdz4vM3bv7ePRvY8,3413
125
125
  ert/dark_storage/endpoints/observations.py,sha256=gnww5S1B9G8vAw7AwcR1fgW_vFgyf5WlU1gOSUXW1i4,4841
126
126
  ert/dark_storage/endpoints/parameters.py,sha256=LERil7H-L3ZsPGGFm97kvy3XeIqpceyBe5aSFLkSVEY,4406
127
127
  ert/dark_storage/endpoints/responses.py,sha256=tFEdgqP1vcOuRPmr4YpE9okEpxowXMoYjYdUq2wljZ8,6195
128
128
  ert/dark_storage/endpoints/updates.py,sha256=BWEh2XUTqdsPPEtiSE8bJtXcFVzw-GlbKIK3vvc_Cu8,142
129
129
  ert/dark_storage/endpoints/version.py,sha256=sEgwRIgPGJHztacjhbQKT3btiEQCe9PPQghZAtlZhh0,364
130
+ ert/dark_storage/endpoints/compute/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
131
+ ert/dark_storage/endpoints/compute/misfits.py,sha256=x7NuTdgd5s2_qdgcD73FjWEgsZRHAbgTUJ5BnXpd2aA,2877
130
132
  ert/dark_storage/json_schema/__init__.py,sha256=1xcKlKmoCWmuwh0LzvRbDFycSi-UkWfFom4xjjVkSzI,328
131
133
  ert/dark_storage/json_schema/ensemble.py,sha256=0hUr851q3rL8lRro-6me1gqjxsVhZR_UV81b3NLlJSU,573
132
- ert/dark_storage/json_schema/experiment.py,sha256=_E2E5pE-8tZFzU-QVSEP-7sXHr3ScRehk2oKWAkc4rQ,654
134
+ ert/dark_storage/json_schema/experiment.py,sha256=epx0qsCpzraGDNudK1JVXXN6-OkJYLmbSOzdilMxt-I,695
133
135
  ert/dark_storage/json_schema/observation.py,sha256=7BG4lB1vqeBz74QKEySuN50eWgepBd-ak9phDLp6jjY,990
134
136
  ert/dark_storage/json_schema/prior.py,sha256=gq-EsvMoQPx2Cjq8g4hf9ML2QOkcTgFfyVXhlAdtyp0,2815
135
137
  ert/dark_storage/json_schema/record.py,sha256=gr_qsEEZLfiSut3zHnHmZzbKXLRDnm8LxVMV7934gxE,367
@@ -156,7 +158,7 @@ ert/gui/about_dialog.py,sha256=H0Jfso2v9s1eONTVgghH84UcaUlwVs0Cqqbv17Hvw4g,3127
156
158
  ert/gui/ertnotifier.py,sha256=4ZFXOrk2ATr5Dq-WW-0s_wokfKHIUgrBn3Y6cfb3JlM,3030
157
159
  ert/gui/find_ert_info.py,sha256=hwqiCa5rDZEL_25QVsx920d9NOaVM2PyUor89_-70-Q,301
158
160
  ert/gui/main.py,sha256=dsT2AAPFgSEGLlsHiaEwALCdJNt2OcUe11TkdB7WU-g,10123
159
- ert/gui/main_window.py,sha256=T-Vpai6vslMjEWMdG-iyjBT7pIfXpNS6dY4PffaRICw,14889
161
+ ert/gui/main_window.py,sha256=kvqQgf-6XUJibJhFgefD1vqFQm0TRTcBGcYVGdP8Uxk,14780
160
162
  ert/gui/summarypanel.py,sha256=pIMCUyEulNB-TzC1d6NBSUv4dzmM3RzDKiDRc6HuUe4,4832
161
163
  ert/gui/ertwidgets/__init__.py,sha256=LtwHe4wpA0YpbealTrukMb7rDSSTxSyGkVaM8IvlI8A,1878
162
164
  ert/gui/ertwidgets/analysismoduleedit.py,sha256=Ff9gzaQHrEH1yQ2tWg15fZrUN0mr_rJEUMciatOjlLc,1444
@@ -259,19 +261,19 @@ ert/gui/tools/load_results/__init__.py,sha256=P6mSptsply70br8pzTW6PsUE4OwtPMntLh
259
261
  ert/gui/tools/load_results/load_results_panel.py,sha256=e7SxQDypviYx-RUlROmkHJ7I7kaiI9SRS8dGN5HVUF0,5884
260
262
  ert/gui/tools/load_results/load_results_tool.py,sha256=deP__dGX8z5iycPMYv3cYyOtag6urjAvX4ZXq0TZUN8,2290
261
263
  ert/gui/tools/manage_experiments/__init__.py,sha256=MAB41GPqlpALPYRvFFpKCcr2Sz3cya7Grd88jLxUj2A,99
262
- ert/gui/tools/manage_experiments/export_dialog.py,sha256=D-kCCm7aW3UXIZxETOe49VLoqMQ8KW4dMdBqq8wPtfI,4609
264
+ ert/gui/tools/manage_experiments/export_dialog.py,sha256=tWtttCLqr4T0HK9uEtM8JUubBLvytn_A2cZRZBvJ1AI,4485
263
265
  ert/gui/tools/manage_experiments/manage_experiments_panel.py,sha256=EUGOo68g8E9f4oG3K4MFRCu8a7rm7ojOF6jUvz_dqic,5680
264
- ert/gui/tools/manage_experiments/storage_info_widget.py,sha256=LodyZIqm0qMqZgpM-_lyedqYXJCWgQonqnqTmoXVTWI,19791
266
+ ert/gui/tools/manage_experiments/storage_info_widget.py,sha256=J3Xm59mQ6VIYTrwCkhKzZqojrBtncxgEI_f_nLfbFF4,19940
265
267
  ert/gui/tools/manage_experiments/storage_model.py,sha256=wf5JPqvbFWLI9ZcVTc4gpZh3hUPDNwOxRdbdcRtjKCc,6802
266
268
  ert/gui/tools/manage_experiments/storage_widget.py,sha256=pe5mWOgw-uNGXaZYhl1JsF5--Krz1W4n3Ut4sRcx6uc,6692
267
269
  ert/gui/tools/plot/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
268
270
  ert/gui/tools/plot/data_type_keys_list_model.py,sha256=HkPeD_tke-iGFh9LPz5Aux-A0syRRFk1k_luLCbOgi4,2203
269
271
  ert/gui/tools/plot/data_type_keys_widget.py,sha256=AgJh_7vfXFKzzzCMq8pxhldkzuhBtfaVyZXEcQYDjG0,4222
270
272
  ert/gui/tools/plot/data_type_proxy_model.py,sha256=DGj7GsDwbvr2OUIudmQpdnoqtPeWyKVJHlctxl1TzzQ,2176
271
- ert/gui/tools/plot/plot_api.py,sha256=KnQVqat4MD1munLJNvnROlR1B_y2zo0jRg3FJCSpMho,16365
273
+ ert/gui/tools/plot/plot_api.py,sha256=8nkfFZJENIrHI-yWwHnrg01AOjYGiV3eE1Qfj-7aUTI,16361
272
274
  ert/gui/tools/plot/plot_ensemble_selection_widget.py,sha256=WnXsI5SwIklPvlkJ_02qjv6T8pDhXVStiHqerD53u_4,7619
273
- ert/gui/tools/plot/plot_widget.py,sha256=GYCQFtNnfHf42NauQ73H7kBPVVjVmuQQHTe0QbdD54Q,7800
274
- ert/gui/tools/plot/plot_window.py,sha256=4zzUUGF4HXfx8Xka8NjzG1Hi8VJNyUJXhuYl8gs--Cc,17313
275
+ ert/gui/tools/plot/plot_widget.py,sha256=w_avqCvBe68rvZXOa4WiFC2IsXSbIAYOGEZhHtzFeiA,7527
276
+ ert/gui/tools/plot/plot_window.py,sha256=_9KgIi_jbNNUnOW80DkCJb1GACStYRQ7BZYAq2fE7Hs,17327
275
277
  ert/gui/tools/plot/customize/__init__.py,sha256=spAW99ubzOmWuScii_idW0frGDttKCcT4XQegF3vOSU,151
276
278
  ert/gui/tools/plot/customize/color_chooser.py,sha256=fxrXEFCCvHwJnE0pQMELIy0torqSNATnARx6hBgSV5E,2576
277
279
  ert/gui/tools/plot/customize/customization_view.py,sha256=er1PQnhePTs43dsB9gDV7nkMDV0tDmqFneHG7R5UDkM,5093
@@ -388,12 +390,14 @@ ert/scheduler/lsf_driver.py,sha256=mT42-OSljFfSAO5AsUm4CVUstxRDpWV776SK9f41lSI,2
388
390
  ert/scheduler/openpbs_driver.py,sha256=LQhvmU-EVcMwgBolbKbMptzT4LLhLkYyjfDtzU7XIrw,14143
389
391
  ert/scheduler/scheduler.py,sha256=7GvodjkCQrAzVHGu8JKRSd913zKyAeqC_EarsVj0CA0,16106
390
392
  ert/scheduler/slurm_driver.py,sha256=xL8vb-jSLwjXYJrGZEJ9RozDdevh2KGNLuDxLiTz_AA,18054
391
- ert/services/__init__.py,sha256=ac2DdYRfxEwIAI4Z3nL1RZHJdN0YReUGds2hEovrPIw,198
392
- ert/services/_storage_main.py,sha256=dVMAzHs8MJZR3N8EOAwm5LvnzvlXIE-L6p-1rBGIYZA,11778
393
- ert/services/ert_server.py,sha256=SNIIYyF9xwBj7o6aqL4aR-nMAUFAVqIMfa0ZddXaVZg,15645
393
+ ert/services/__init__.py,sha256=3UQWAvu1IrJcyMifJVcKg1-KFAScjc25h7BvSm4K3hw,114
394
+ ert/services/_base_service.py,sha256=qDmAasu5L7uDGYEwLVUNqn5TATkd-iUqHfti3Y7475o,12203
395
+ ert/services/_storage_main.py,sha256=adooB5K2atXhX-rM5jFrEUJHly0ZSAQymhTndm7qhpk,10819
396
+ ert/services/ert_server.py,sha256=qIzqugIHcxwKuzjkItiMt3jah3hNI7x3NQ3p_WBBf_o,10768
397
+ ert/services/webviz_ert_service.py,sha256=J5vznqb_-DjlDMOze7tdvuBE4GWEPgJ5dIIXvRLKd0Y,650
394
398
  ert/shared/__init__.py,sha256=OwgL-31MxA0fabETJ5Svw0tqJpHi569CZDRFHdHiqA0,644
395
399
  ert/shared/net_utils.py,sha256=Wp9Qyd5wWNHPU0Myh1GCbUONu0a-akYEdJ07MjQJt4I,6130
396
- ert/shared/version.py,sha256=lwpP6zUTvg5xbaGaRTDRFy-iEE3-9Zue4Wvd9oBQUmg,724
400
+ ert/shared/version.py,sha256=l535qCMHPX_OouidXmZZfWhYSl0-tdcRVCWcfczt7-0,724
397
401
  ert/shared/_doc_utils/__init__.py,sha256=09KMJxjza26BXouUy6yJmMiSuYFGSI6c8nZ-1_qXh90,995
398
402
  ert/shared/_doc_utils/ert_jobs.py,sha256=uHP8ozhKwCHG6BkyhAgCGoy59JEFb102pHKot-5ZEys,8054
399
403
  ert/shared/_doc_utils/everest_jobs.py,sha256=uBDN7tIwlBJIZVZ6ZFL1tkewEJJGDLoeVrFIIrJznvM,2081
@@ -405,12 +409,14 @@ ert/shared/share/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,
405
409
  ert/shared/status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
406
410
  ert/shared/status/utils.py,sha256=RrCutWwpzSEyKRNxby1bSzOhyr6uKGeKPDFjEQzMeME,1293
407
411
  ert/shared/storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
412
+ ert/shared/storage/command.py,sha256=fksba9v75M2QajD_n0waus9NgT9jy1m5svmmjVOhXbk,1087
408
413
  ert/shared/storage/connection.py,sha256=Y5P8B8B__j3doE9UE-1QROFYwrLcrmFcG80LhGTdg58,396
414
+ ert/shared/storage/extraction.py,sha256=52Nyh2SITXIglEBMIRcW2a_iqJL3OdAf_dWMY0plTZE,1307
409
415
  ert/storage/__init__.py,sha256=f4uzzomaB1TpFpzGMF2Jd_PV54lq4EfkiZzQApDBuPQ,2110
410
416
  ert/storage/load_status.py,sha256=7h_GdA2qYGgQ-M5AOIo7xG43ljwzEEgbRb7vg0xSYEE,304
411
- ert/storage/local_ensemble.py,sha256=cJgExjRsK_VpLDxMrfX7HmCwXxLuGpth_mVhSZS0F4Y,47676
412
- ert/storage/local_experiment.py,sha256=bzYAsalnAFymxDRfjnC8kb0Cg9P-wnkqLKLcoM-c3zM,16470
413
- ert/storage/local_storage.py,sha256=ihrzfMjBfCUvJFOLUISHbrVf7d-Y0CFktMyM_jZ9LLE,24059
417
+ ert/storage/local_ensemble.py,sha256=m3p8pUG8mYzYO8l_tnhjlVvhQwvPp97ztUNDO4Zjd1s,50965
418
+ ert/storage/local_experiment.py,sha256=JNdTQWn0jJLqN8pYeh4XbuSxxiTN5Qbc0nkJzzgjhAU,16871
419
+ ert/storage/local_storage.py,sha256=oDdhtQkuKXrmXiFX-RKSoyfHwSWkS1M61yZZvmJQJQ0,24011
414
420
  ert/storage/mode.py,sha256=GJBlRSqS0Q06qDvaAztdcG-oV2MLsVID2Mo3OgQKjUw,2470
415
421
  ert/storage/realization_storage_state.py,sha256=JdiBr__Ce5e1MzmRsRdMuwgCtiuHZRjsQ-as8ivTX7Q,220
416
422
  ert/storage/migration/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -426,12 +432,11 @@ ert/storage/migration/to18.py,sha256=R6ou46jS-R03WJKB4ZeHTehzTsxH4df2QsJ9wczeQPk
426
432
  ert/storage/migration/to19.py,sha256=1FmfNeXBW149W07u78AyU39g57TXXNl-fG9c4kqlIpU,1090
427
433
  ert/storage/migration/to20.py,sha256=DZ79hfJxdbaewP4W8TyRdsQvi-FkeSco_0uZKBdyD_4,697
428
434
  ert/storage/migration/to21.py,sha256=ArUePLN6placVlgKFS2Fi1kWD4qQZ1bsJGOxYMmhCP0,811
429
- ert/storage/migration/to22.py,sha256=UxPy5i5o0UzNk9chY024PmwbHMdJCXCngmsquG_yGkI,622
430
435
  ert/storage/migration/to6.py,sha256=Pj9lVCyPCOP0-dt4uypsZtS5Awbc8B7oaySu_VTwnnA,1514
431
436
  ert/storage/migration/to7.py,sha256=hV5lLfaQegyvxsy_lWfsiQAYVPCvS8Oe0fYc_fvKXzY,4500
432
437
  ert/storage/migration/to8.py,sha256=VL7A5KWTSFhBWmx3n-vCKBaEd2U8SUqyz8vPieyVd9E,5390
433
438
  ert/storage/migration/to9.py,sha256=0YMcFH1__SijLLTL6qluhE21bKRvMbuOsafVm6xeSM0,3310
434
- ert/utils/__init__.py,sha256=pvElfU1gixK6x3gb2ZPDdZUTaDXrB8AKhfa0Z2dmGOg,1544
439
+ ert/utils/__init__.py,sha256=v1iOFS0t4c8nM7zNcqu3IrRSH03IX66qq3nR7_tY40M,912
435
440
  ert/validation/__init__.py,sha256=tIo-USPe7W2v0qKWKZm1LqyXMcCtFFkjJovQFWQFup8,1176
436
441
  ert/validation/active_range.py,sha256=7ActPaKpoZmFKSNCqSjimsmKxAS60tRBqDP8_sMoOFU,3256
437
442
  ert/validation/argument_definition.py,sha256=XCXhUTRvxczzHLQV0HCgxxSU1ZxXuuoi-q8BdJIrs-0,561
@@ -448,7 +453,7 @@ ert/validation/validation_status.py,sha256=f47_B7aS-9DEh6uaVzKxD97pXienkyTVVCqTy
448
453
  ert/warnings/__init__.py,sha256=IBwQVkdD7Njaad9PAB-9K-kr15wnA4EBKboxyqgu9NA,214
449
454
  ert/warnings/_warnings.py,sha256=7qhNZ0W4nnljzoOx6AXX7VlMv5pa34Ek5M5n1Ep0Kak,189
450
455
  ert/warnings/specific_warning_handler.py,sha256=5dVXtOhzcMmtPBGx4AOddXNPfzTFOPA7RVtdH8hLv68,932
451
- ert-19.0.0rc1.dist-info/licenses/COPYING,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
456
+ ert-19.0.0rc3.dist-info/licenses/COPYING,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
452
457
  everest/__init__.py,sha256=8_f50f6H3-onqaiuNCwC0Eiotdl9JuTxhwyF_54MVvU,306
453
458
  everest/config_file_loader.py,sha256=rOHYvB4ayB2MaKdaAynvJVtbCOqi_z25EdwEqJ02-DQ,5675
454
459
  everest/everest_storage.py,sha256=c3sgU7-3BDSRXxJfCR_4F58rWEaoII1wygz6VvM-GGI,42025
@@ -459,12 +464,12 @@ everest/assets/everest_logo.svg,sha256=1GDy-tJYQSean8f_WWTlcKPhv1Wsb_xhFzXe3Gguk
459
464
  everest/bin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
460
465
  everest/bin/config_branch_script.py,sha256=-xMKskcDf5hxlzTtcyNG55yvnUKPQTtoUetlEGss6KM,5063
461
466
  everest/bin/everconfigdump_script.py,sha256=MKzJZiE14RhuNGf4OUhjygxR25VzLfQtR8I4DViG8CU,821
462
- everest/bin/everest_script.py,sha256=qNYTSMMo4a9at7gceV1mA-KflgwHFskgWseguwownmE,9698
467
+ everest/bin/everest_script.py,sha256=QZC2J-pMntGSBzJ4DyfpLfNc602MMdKGWpIFWU3lZaY,9649
463
468
  everest/bin/everlint_script.py,sha256=-tPenYSSMfyf1Tk8FNxcQRKzVSkeLHI_oYJg2mntjZw,1202
464
- everest/bin/kill_script.py,sha256=ywjEkBjz2-30YRkNb88_4SL_234PKUQGgrd3sVbbaok,3211
469
+ everest/bin/kill_script.py,sha256=JtzRDXOS2Wksg7OzO9bXzu12EFhWAuZAzKqBeaikJ5Q,3191
465
470
  everest/bin/main.py,sha256=eJhcM_cJHieWDs6f3R0IjKfw9VWoI9ZnkyLpic01pi4,3352
466
- everest/bin/monitor_script.py,sha256=2DlYyLKAITR28BVj1WDBOiSFU3icZB57_QzrjM8klN4,4477
467
- everest/bin/utils.py,sha256=L_XgOxGWCS0j8hdQdBt6CQvm_CLi46Hr7IPrdeaq6t0,18872
471
+ everest/bin/monitor_script.py,sha256=4FOkLvGJXaBf84Pl97JxE_fGQXU5AiRVgLWEXmFrLHs,4457
472
+ everest/bin/utils.py,sha256=JZsCgFG1ierp2eqwgTMg5fXU1za_pSLaAgCDUf-2eLo,18849
468
473
  everest/bin/visualization_script.py,sha256=k73iFgh6uZTWoFjMcsjqVg_Ni2qztL09XWWg554760A,2497
469
474
  everest/config/__init__.py,sha256=nYC7D8A0Lh8jFIbtCiLjRxSjufPCsQsdQ6HW5dZfHfc,1535
470
475
  everest/config/control_config.py,sha256=B-HToLIbeIAT9ye49_R6TpbcpSw1cc7q38cJCBQriJw,13584
@@ -490,11 +495,11 @@ everest/config/well_config.py,sha256=EbpqyxVhLhb0aGSgL5k4t03VMHv0riaaX2anVrF8W1M
490
495
  everest/config/workflow_config.py,sha256=sUWJPNouDBr5g_sTL4g3rs5SluC7TdXLP2kMCYILNFc,812
491
496
  everest/detached/__init__.py,sha256=d9U1Mjl-zAb_wIOnlLiYa6nPzN8SVldJlLe5neWeCIs,431
492
497
  everest/detached/client.py,sha256=MSDv000zA54x25uyNKgvv6mAsIXbGS_-Q7FbXdBt_Y0,8707
493
- everest/detached/everserver.py,sha256=vuofusGYwL__s1Cye8ZmL4-WAg2moL_WmYucHDHpnfo,6196
498
+ everest/detached/everserver.py,sha256=ujOEG10BmoOU-LF3JUrLcgty3Xve-qydQxGirnhAsLg,6199
494
499
  everest/gui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
495
500
  everest/gui/everest_client.py,sha256=sNuilf3WqfjY_7tv1694bZd5mozhj3-3iy0DxtGpF4A,5633
496
501
  everest/gui/main.py,sha256=tdaIf2uJT3Uveao4cqv1tUcjto1Kf8Lbx6SLDsFA2GA,1241
497
- everest/gui/main_window.py,sha256=eaIi8Q_MZsuECEkAv-mPK1iN3yOyky31aROef3hXUuI,2795
502
+ everest/gui/main_window.py,sha256=dR8YDo4RG-YL2YYkfUgM0G_WLklu3oGpCJQgaLpeuQw,2775
498
503
  everest/optimizer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
499
504
  everest/optimizer/everest2ropt.py,sha256=evVvZEC_5l8zouWInpQSHkJd1TK0c0kadtwVUZ4tJUY,13087
500
505
  everest/optimizer/opt_model_transforms.py,sha256=3q0gp11MrVV_jwPh4gpJsixxWIZ0u4nnQH7PC7dYK4k,19271
@@ -510,10 +515,10 @@ everest/templates/slot_delay.tmpl,sha256=VCWyl3JruIrkke2NPGGwKGqDMvkyDGCAZU_NyDZ
510
515
  everest/templates/well_delay.tmpl,sha256=6_rXMcuV53CMEWd9CZuPL01_6f1diAHDktPg-GevH7s,131
511
516
  everest/templates/well_drill.tmpl,sha256=9iLexmBHMsMQNXyyRK4GlmVuVpVIxRcCHpy1av57_qE,94
512
517
  everest/templates/well_order.tmpl,sha256=XJ1eVRkeyTdLu5sLsltJSSK6BDLN7rFOAqLdM3ZZy3w,75
513
- everest/util/__init__.py,sha256=84RowTXhOiElFo6izQ2iRyvlRUemFyr8cWq_Q2smKvU,744
518
+ everest/util/__init__.py,sha256=xEYLz6pUtgkH8VHer1RfoCwKiO70dBnuhHonsOPaOx0,1359
514
519
  everest/util/forward_models.py,sha256=JPxHhLI6TrmQJwW50wwGBmw57TfRd8SG2svYhXFHrc8,1617
515
- ert-19.0.0rc1.dist-info/METADATA,sha256=oMn7q2oJQr6uBNCujfF8qmailZCIQh_enb50Yumc-rs,10016
516
- ert-19.0.0rc1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
517
- ert-19.0.0rc1.dist-info/entry_points.txt,sha256=ChZ7vn8Qy9v9rT8GM2JtAvWDN3NVoy4BIcvVRtU73CM,189
518
- ert-19.0.0rc1.dist-info/top_level.txt,sha256=LRh9GfdfyDWfAGmrQgp_XdoMHA4v6aotw8xgsy5YyHE,17
519
- ert-19.0.0rc1.dist-info/RECORD,,
520
+ ert-19.0.0rc3.dist-info/METADATA,sha256=SRYfiXI2kEriVA505ALyGhUxZSM7zaUzkO4BnCdBwoY,10015
521
+ ert-19.0.0rc3.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
522
+ ert-19.0.0rc3.dist-info/entry_points.txt,sha256=ChZ7vn8Qy9v9rT8GM2JtAvWDN3NVoy4BIcvVRtU73CM,189
523
+ ert-19.0.0rc3.dist-info/top_level.txt,sha256=LRh9GfdfyDWfAGmrQgp_XdoMHA4v6aotw8xgsy5YyHE,17
524
+ ert-19.0.0rc3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -14,9 +14,8 @@ import anyio
14
14
 
15
15
  from _ert.threading import ErtThread
16
16
  from ert.config import QueueSystem
17
- from ert.services import create_ertserver_client
17
+ from ert.services import ErtServer
18
18
  from ert.storage.local_experiment import ExperimentState
19
- from ert.utils import makedirs_if_needed
20
19
  from everest.config import EverestConfig, ServerConfig
21
20
  from everest.detached import (
22
21
  start_experiment,
@@ -25,6 +24,7 @@ from everest.detached import (
25
24
  )
26
25
  from everest.everest_storage import EverestStorage
27
26
  from everest.util import (
27
+ makedirs_if_needed,
28
28
  version_info,
29
29
  warn_user_that_runpath_is_nonempty,
30
30
  )
@@ -48,7 +48,7 @@ def everest_entry(args: list[str] | None = None) -> None:
48
48
 
49
49
  options = parser.parse_args(args)
50
50
 
51
- makedirs_if_needed(Path(options.config.output_dir), roll_if_exists=True)
51
+ makedirs_if_needed(options.config.output_dir, roll_if_exists=True)
52
52
  with setup_logging(options):
53
53
  logger.info(version_info())
54
54
 
@@ -169,7 +169,7 @@ async def run_everest(options: argparse.Namespace) -> None:
169
169
  )
170
170
 
171
171
  try:
172
- create_ertserver_client(
172
+ ErtServer.session(
173
173
  Path(ServerConfig.get_session_dir(options.config.output_dir)), timeout=1
174
174
  )
175
175
  server_running = True
@@ -233,7 +233,7 @@ async def run_everest(options: argparse.Namespace) -> None:
233
233
 
234
234
  print("Waiting for server ...")
235
235
  logger.debug("Waiting for response from everserver")
236
- client = create_ertserver_client(
236
+ client = ErtServer.session(
237
237
  Path(ServerConfig.get_session_dir(options.config.output_dir))
238
238
  )
239
239
  wait_for_server(client, timeout=600)
@@ -12,7 +12,7 @@ from functools import partial
12
12
  from pathlib import Path
13
13
  from typing import Any
14
14
 
15
- from ert.services import create_ertserver_client
15
+ from ert.services import ErtServer
16
16
  from everest.bin.utils import setup_logging
17
17
  from everest.config import EverestConfig, ServerConfig
18
18
  from everest.detached import stop_server, wait_for_server_to_stop
@@ -74,7 +74,7 @@ def _handle_keyboard_interrupt(signal: int, _: Any, after: bool = False) -> None
74
74
 
75
75
  def kill_everest(options: argparse.Namespace) -> None:
76
76
  try:
77
- client = create_ertserver_client(
77
+ client = ErtServer.session(
78
78
  Path(ServerConfig.get_session_dir(options.config.output_dir)), timeout=1
79
79
  )
80
80
  server_context = ServerConfig.get_server_context_from_conn_info(
@@ -7,7 +7,7 @@ from functools import partial
7
7
  from pathlib import Path
8
8
  from textwrap import dedent
9
9
 
10
- from ert.services import create_ertserver_client
10
+ from ert.services import ErtServer
11
11
  from ert.storage import ErtStorageException, ExperimentState
12
12
  from everest.config import EverestConfig, ServerConfig
13
13
  from everest.everest_storage import EverestStorage
@@ -82,7 +82,7 @@ def _build_args_parser() -> argparse.ArgumentParser:
82
82
  def monitor_everest(options: argparse.Namespace) -> None:
83
83
  config: EverestConfig = options.config
84
84
  try:
85
- with create_ertserver_client(
85
+ with ErtServer.session(
86
86
  Path(ServerConfig.get_session_dir(config.output_dir)), timeout=1
87
87
  ) as client:
88
88
  server_context = ServerConfig.get_server_context_from_conn_info(
everest/bin/utils.py CHANGED
@@ -26,12 +26,11 @@ from ert.ensemble_evaluator import (
26
26
  from ert.ensemble_evaluator.event import EndEvent
27
27
  from ert.logging import LOGGING_CONFIG
28
28
  from ert.plugins.plugin_manager import ErtPluginManager
29
- from ert.services import create_ertserver_client
29
+ from ert.services import ErtServer
30
30
  from ert.storage import (
31
31
  ExperimentStatus,
32
32
  open_storage,
33
33
  )
34
- from ert.utils import makedirs_if_needed
35
34
  from everest.config import EverestConfig
36
35
  from everest.config.server_config import ServerConfig
37
36
  from everest.detached import (
@@ -41,6 +40,7 @@ from everest.detached import (
41
40
  wait_for_server_to_stop,
42
41
  )
43
42
  from everest.strings import EVEREST, OPT_PROGRESS_ID, SIM_PROGRESS_ID
43
+ from everest.util import makedirs_if_needed
44
44
 
45
45
  JOB_SUCCESS = "Finished"
46
46
  JOB_RUNNING = "Running"
@@ -54,7 +54,7 @@ def cleanup_logging() -> None:
54
54
  @contextmanager
55
55
  def setup_logging(options: argparse.Namespace) -> Generator[None, None, None]:
56
56
  if isinstance(options.config, EverestConfig):
57
- makedirs_if_needed(Path(options.config.output_dir), roll_if_exists=False)
57
+ makedirs_if_needed(options.config.output_dir, roll_if_exists=False)
58
58
  log_dir = Path(options.config.output_dir) / "logs"
59
59
  else:
60
60
  # `everest branch` gives a tuple object here.
@@ -106,7 +106,7 @@ def handle_keyboard_interrupt(signum: int, _: Any, options: argparse.Namespace)
106
106
  "The optimization will be stopped and the program will exit..."
107
107
  )
108
108
  try:
109
- client = create_ertserver_client(
109
+ client = ErtServer.session(
110
110
  Path(ServerConfig.get_session_dir(options.config.output_dir))
111
111
  )
112
112
  server_context = ServerConfig.get_server_context_from_conn_info(
@@ -12,11 +12,11 @@ import yaml
12
12
  from opentelemetry.trace.propagation.tracecontext import TraceContextTextMapPropagator
13
13
 
14
14
  from ert.plugins.plugin_manager import ErtPluginManager
15
- from ert.services import ErtServer, ErtServerExit, create_ertserver_client
15
+ from ert.services import ErtServer
16
+ from ert.services._base_service import BaseServiceExit
16
17
  from ert.storage import ExperimentStatus
17
18
  from ert.storage.local_experiment import ExperimentState
18
19
  from ert.trace import tracer
19
- from ert.utils import makedirs_if_needed
20
20
  from everest.config import ServerConfig
21
21
  from everest.strings import (
22
22
  DEFAULT_LOGGING_FORMAT,
@@ -25,7 +25,7 @@ from everest.strings import (
25
25
  EXPERIMENT_SERVER,
26
26
  OPTIMIZATION_LOG_DIR,
27
27
  )
28
- from everest.util import version_info
28
+ from everest.util import makedirs_if_needed, version_info
29
29
 
30
30
  logger = logging.getLogger(__name__)
31
31
 
@@ -34,7 +34,7 @@ def _configure_loggers(
34
34
  log_dir: Path, logging_level: int, output_file: str | None
35
35
  ) -> None:
36
36
  def make_handler_config(path: Path, log_level: int) -> dict[str, Any]:
37
- makedirs_if_needed(path.parent)
37
+ makedirs_if_needed(str(path.parent))
38
38
  return {
39
39
  "class": "logging.FileHandler",
40
40
  "formatter": "default",
@@ -166,7 +166,7 @@ def main() -> None:
166
166
  timeout=240, project=Path(server_path), logging_config=log_file.name
167
167
  ) as server:
168
168
  server.fetch_connection_info()
169
- with create_ertserver_client(Path(server_path)) as client:
169
+ with ErtServer.session(project=Path(server_path)) as client:
170
170
  done = False
171
171
  while not done:
172
172
  response = client.get(
@@ -178,7 +178,7 @@ def main() -> None:
178
178
  ExperimentState.running,
179
179
  }
180
180
  time.sleep(0.5)
181
- except ErtServerExit:
181
+ except BaseServiceExit:
182
182
  # Server exit, happens on normal shutdown and keyboard interrupt
183
183
  logging.getLogger(EVERSERVER).info("Everserver stopped by user")
184
184
  except Exception as e:
@@ -13,7 +13,7 @@ from PyQt6.QtWidgets import (
13
13
  from ert.gui.ertnotifier import ErtNotifier
14
14
  from ert.gui.simulation.run_dialog import RunDialog
15
15
  from ert.plugins import ErtPluginManager
16
- from ert.services import create_ertserver_client
16
+ from ert.services import ErtServer
17
17
  from everest.config import ServerConfig
18
18
  from everest.detached import wait_for_server
19
19
  from everest.gui.everest_client import EverestClient
@@ -43,7 +43,7 @@ class EverestMainWindow(QMainWindow):
43
43
  self.setCentralWidget(self.central_widget)
44
44
 
45
45
  def run(self) -> None:
46
- storage_client = create_ertserver_client(
46
+ storage_client = ErtServer.session(
47
47
  Path(ServerConfig.get_session_dir(self.output_dir))
48
48
  )
49
49
  wait_for_server(storage_client, 60)
everest/util/__init__.py CHANGED
@@ -1,4 +1,6 @@
1
1
  import logging
2
+ import os
3
+ from datetime import UTC, datetime
2
4
 
3
5
  from ropt.version import version as ropt_version
4
6
 
@@ -6,7 +8,7 @@ try:
6
8
  from ert.shared.version import version as ert_version
7
9
  except ImportError:
8
10
  ert_version = "0.0.0"
9
-
11
+ from _ert.utils import file_safe_timestamp
10
12
  from everest.strings import EVEREST
11
13
 
12
14
 
@@ -14,6 +16,14 @@ def version_info() -> str:
14
16
  return f"everest:{ert_version}, ropt:{ropt_version}, ert:{ert_version}"
15
17
 
16
18
 
19
+ def makedirs_if_needed(path: str, roll_if_exists: bool = False) -> None:
20
+ if os.path.isdir(path):
21
+ if not roll_if_exists:
22
+ return
23
+ _roll_dir(path) # exists and should be rolled
24
+ os.makedirs(path)
25
+
26
+
17
27
  def warn_user_that_runpath_is_nonempty() -> None:
18
28
  print(
19
29
  "Everest is running in an existing runpath.\n\n"
@@ -24,3 +34,11 @@ def warn_user_that_runpath_is_nonempty() -> None:
24
34
  "be used if not configured correctly.\n"
25
35
  )
26
36
  logging.getLogger(EVEREST).warning("Everest is running in an existing runpath")
37
+
38
+
39
+ def _roll_dir(old_name: str) -> None:
40
+ old_name = os.path.realpath(old_name)
41
+ timestamp = file_safe_timestamp(datetime.now(UTC).isoformat())
42
+ new_name = f"{old_name}__{timestamp}"
43
+ os.rename(old_name, new_name)
44
+ logging.getLogger(EVEREST).info(f"renamed {old_name} to {new_name}")