<!-- Release notes generated using configuration in .github/release.yml at version-14.0 -->
What's Changed
User impact ðŸ›
* Mark ES_MDA as recommended algorithm by berland in https://github.com/equinor/ert/pull/9771
* Remove copy debug info button by andreas-el in https://github.com/equinor/ert/pull/9886
* Enforce objectives and controls have at least one element in everest config by DanSava in https://github.com/equinor/ert/pull/9898
* Change filename for log in realization directories from job-runner to forward-model-runner by berland in https://github.com/equinor/ert/pull/9972
Breaking Changes ðŸ›
* Remove IES by sondreso in https://github.com/equinor/ert/pull/9843
* Add Everest storage (port of seba_sqlite logic) by yngve-sk in https://github.com/equinor/ert/pull/9763
* Change XML field name in EXIT file from forward model by berland in https://github.com/equinor/ert/pull/10020
New Features 🎉
* Extract and log warnings from forward model steps by berland in https://github.com/equinor/ert/pull/10050
Improvements
* Add event serialization testing by DanSava in https://github.com/equinor/ert/pull/9573
* Have parameter config keep parameters types when using design matrix with categorical data by jonathan-eq in https://github.com/equinor/ert/pull/9841
* Make the run dialogue snappier by tuning batching interval by berland in https://github.com/equinor/ert/pull/9824
* Make everest config imutable by DanSava in https://github.com/equinor/ert/pull/9842
* Port range of dark storage changed by JHolba in https://github.com/equinor/ert/pull/9889
* Replace normalization and auto_normalize keyes with scaling and auto_scale in ObjectiveFunctionConfig by DanSava in https://github.com/equinor/ert/pull/9965
* Add more validation to design matrix by jonathan-eq in https://github.com/equinor/ert/pull/9915
Bug Fixes
* Fix storage service not being closed by eivindjahren in https://github.com/equinor/ert/pull/9813
* Fix rerun button not disabled for ES-MDA by jonathan-eq in https://github.com/equinor/ert/pull/9819
* Fix unable to have path object in argslist for localdriver by jonathan-eq in https://github.com/equinor/ert/pull/9825
* Divide instead of multiply with observation errors in misfit preprocessor by larsevj in https://github.com/equinor/ert/pull/9838
* Ensure SETENV is also substituted when writing json by berland in https://github.com/equinor/ert/pull/9859
* Make sure parameter.txt files with too few values per line is validated by eivindjahren in https://github.com/equinor/ert/pull/9861
* Ensure cpu_seconds is always reported increasingly by berland in https://github.com/equinor/ert/pull/9872
* Make tests write to tmp by frode-aarstad in https://github.com/equinor/ert/pull/9876
* Verify selection when refreshing current selection by andreas-el in https://github.com/equinor/ert/pull/9911
* Drop fm_dispatch reporters on error by eivindjahren in https://github.com/equinor/ert/pull/9890
* Transpose input to get nr prim components by larsevj in https://github.com/equinor/ert/pull/9921
* Correctly calculate cpu_seconds for processtree by berland in https://github.com/equinor/ert/pull/9943
* Fixup logic related to asof join by yngve-sk in https://github.com/equinor/ert/pull/9913
* Let zmq select port in EnsembleEvaluator by JHolba in https://github.com/equinor/ert/pull/9991
* Add snapshot event for STOP_LONG_RUNNING by berland in https://github.com/equinor/ert/pull/10025
* Propogate ens_path to plot_api StorageService.session calls by larsevj in https://github.com/equinor/ert/pull/10036
* Update communication between the everest server job and the experiment server by DanSava in https://github.com/equinor/ert/pull/10051
* Fix bug where the iteration (batch) number was not set for Everest by oyvindeide in https://github.com/equinor/ert/pull/10068
* Fix fm_dispatch not terminating correctly and gui stuck on fm running when terminating by jonathan-eq in https://github.com/equinor/ert/pull/10069
* Some adaptations to workflows by yngve-sk in https://github.com/equinor/ert/pull/9994
Maintenance
* Add integration test label to potentially conflicting tests by xjules in https://github.com/equinor/ert/pull/9818
* Trust the queue system when a job is finished in tests by berland in https://github.com/equinor/ert/pull/9812
* Remove logging_level setter from Everest config by DanSava in https://github.com/equinor/ert/pull/9806
* Add everest to rapid tests by eivindjahren in https://github.com/equinor/ert/pull/9831
* Adapt Slurm test setup to Ubuntu 24.04 by berland in https://github.com/equinor/ert/pull/9823
* Refactor control handling in everest config by verveerpj in https://github.com/equinor/ert/pull/9805
* Reduce test matrix for flow and slurm tests by eivindjahren in https://github.com/equinor/ert/pull/9845
* Install correct dependency and adjust slurm config by berland in https://github.com/equinor/ert/pull/9851
* Move type parsing for genkw from `enkf_main` to `gen_kw_config` by jonathan-eq in https://github.com/equinor/ert/pull/9855
* Speed up client-zmq tests by eivindjahren in https://github.com/equinor/ert/pull/9865
* Upgrade to pyqt6 by JHolba in https://github.com/equinor/ert/pull/9860
* Simplify GA workflows by eivindjahren in https://github.com/equinor/ert/pull/9882
* Make sure check-all runs the same as github actions by eivindjahren in https://github.com/equinor/ert/pull/9884
* Fix select-string by eivindjahren in https://github.com/equinor/ert/pull/9895
* Set max_batch_num to 2 to make test faster by frode-aarstad in https://github.com/equinor/ert/pull/9896
* Refactor everserver 2 by frode-aarstad in https://github.com/equinor/ert/pull/9777
* Fix logging of custom forward model steps by eivindjahren in https://github.com/equinor/ert/pull/9893
* Send resubmit event to evaluator to reset snapshot by larsevj in https://github.com/equinor/ert/pull/9888
* Set initial state in gui for forward model steps by larsevj in https://github.com/equinor/ert/pull/9864
* Remove tests that are covered by ropt testing by frode-aarstad in https://github.com/equinor/ert/pull/9904
* Refactor and update for ropt 0.11 by verveerpj in https://github.com/equinor/ert/pull/9923
* Add more ruff rules ICN, PIE by larsevj in https://github.com/equinor/ert/pull/9931
* Log pending time for a job by berland in https://github.com/equinor/ert/pull/9948
* Merge fm_dispatch.py and cli.py by berland in https://github.com/equinor/ert/pull/9966
* Skip reporter if dispatch_url is None by berland in https://github.com/equinor/ert/pull/9992
* Unpin mypy by larsevj in https://github.com/equinor/ert/pull/9996
* Remove ErtConfig from EverestRunModel by frode-aarstad in https://github.com/equinor/ert/pull/9869
* Make everserver port selection random by frode-aarstad in https://github.com/equinor/ert/pull/10010
* Start everest server whitout config file by DanSava in https://github.com/equinor/ert/pull/10012
* Rename job to step in _ert/forward_model_runner by berland in https://github.com/equinor/ert/pull/10013
* Make rapid tests rapid again by eivindjahren in https://github.com/equinor/ert/pull/10026
* Remove function connect_or_start_server only used in tests by larsevj in https://github.com/equinor/ert/pull/10028
* Add uv lockfile by larsevj in https://github.com/equinor/ert/pull/9561
* Solve pandas FutureWarning in plotHistogram by larsevj in https://github.com/equinor/ert/pull/10062
* Remove usage of everest_to_ert_config by frode-aarstad in https://github.com/equinor/ert/pull/10032
* Use the correct term step in log message by berland in https://github.com/equinor/ert/pull/10104
* Type everest/simulator by frode-aarstad in https://github.com/equinor/ert/pull/10083
* Backport: Log how long `rm_run_path()` takes by jonathan-eq in https://github.com/equinor/ert/pull/10144
* Backport: Format logged config dict to enhance readability by HakonSohoel in https://github.com/equinor/ert/pull/10145
Build System
* Skip slow tests in mac ci by eivindjahren in https://github.com/equinor/ert/pull/9833
* Fix mac select string by eivindjahren in https://github.com/equinor/ert/pull/9839
* Fix mac failing on main by eivindjahren in https://github.com/equinor/ert/pull/9853
* Combine running of unit and performance tests by eivindjahren in https://github.com/equinor/ert/pull/9854
Dependencies
* Bump pypa/gh-action-pypi-publish from 1.12.3 to 1.12.4 by dependabot in https://github.com/equinor/ert/pull/9880
* Update uv lockfile by larsevj in https://github.com/equinor/ert/pull/10094
Other Changes
* Add pre-push hook to run the fastest tests by oyvindeide in https://github.com/equinor/ert/pull/9817
* Replace server_started Event with Future to handle exceptions by xjules in https://github.com/equinor/ert/pull/9749
* Increase timeout of test_that_killed_ert_does_not_leave_storage_server_process by eivindjahren in https://github.com/equinor/ert/pull/9846
* Do not split integration_test in everest by eivindjahren in https://github.com/equinor/ert/pull/9849
* Do heartbeat on clients by xjules in https://github.com/equinor/ert/pull/9798
* Add test that monitor can't connect to a secured server by xjules in https://github.com/equinor/ert/pull/9628
* zmq: make sure no clients are connected when closing mockzmqsever by xjules in https://github.com/equinor/ert/pull/9871
* Consolidate optimizer options and backend_options by yngve-sk in https://github.com/equinor/ert/pull/9887
* Deprecate backend options by yngve-sk in https://github.com/equinor/ert/pull/9899
* Clean up analysis config by eivindjahren in https://github.com/equinor/ert/pull/9902
* Increase timeout for some everest tests by frode-aarstad in https://github.com/equinor/ert/pull/9920
* Update readthedocs python version by oyvindeide in https://github.com/equinor/ert/pull/9926
* Account for immutable everconfig in test_opm_fail by yngve-sk in https://github.com/equinor/ert/pull/9935
* Reimplement control scaling by verveerpj in https://github.com/equinor/ert/pull/9925
* Add logging of duplicate gen_kw parameter names by larsevj in https://github.com/equinor/ert/pull/9086
* Add snapshot tests for ropt config generation by yngve-sk in https://github.com/equinor/ert/pull/9945
* unstuck main by yngve-sk in https://github.com/equinor/ert/pull/9968
* Use only dots to delimit controls by yngve-sk in https://github.com/equinor/ert/pull/9942
* Remove unnecessary dataclass annotation by yngve-sk in https://github.com/equinor/ert/pull/9990
* Remove evaluator_server_config_generator fixture by xjules in https://github.com/equinor/ert/pull/9997
* Remove unneeded part of some comments by JHolba in https://github.com/equinor/ert/pull/10007
* Some refactorings to EverestRunModel by yngve-sk in https://github.com/equinor/ert/pull/10015
* Add dev documentation on everest vs ert data models by StephanDeHoop in https://github.com/equinor/ert/pull/9820
* Update everest logging test to make it more useful by DanSava in https://github.com/equinor/ert/pull/10024
* Log events left in the queue only if it makes sense by xjules in https://github.com/equinor/ert/pull/10030
* Mute FutureWarnings from plugin initialization by berland in https://github.com/equinor/ert/pull/10054
* Add explicit interface between BaseRunModel and GUI by yngve-sk in https://github.com/equinor/ert/pull/10056
* Add events to everest cached example by yngve-sk in https://github.com/equinor/ert/pull/10043
* Add some typing to everest by frode-aarstad in https://github.com/equinor/ert/pull/9967
* Revert "Fix bug where the iteration (batch) number was not set for Everest" by yngve-sk in https://github.com/equinor/ert/pull/10074
* Enable typing for everst detached by DanSava in https://github.com/equinor/ert/pull/10084
* Pass ropt events to status queue by yngve-sk in https://github.com/equinor/ert/pull/10011
* Raise error on undefined substitution by DanSava in https://github.com/equinor/ert/pull/10103
* Skip executing empty forward model w/ ensemble evaluator by yngve-sk in https://github.com/equinor/ert/pull/10081
* Skip test_cpu_seconds_can_detect_multiprocess on macOS by andreas-el in https://github.com/equinor/ert/pull/10153
* Allow non-utf-8 characters in PRT files by berland in https://github.com/equinor/ert/pull/10223
**Full Changelog**: https://github.com/equinor/ert/compare/13.0.5...14.0.0