Hydra is a framework for elegantly configuring complex applications
MIT License
Published by Jasha10 almost 2 years ago
This bugfix release updates a version pin on the OmegaConf library, allowing Hydra to be installed alongside the latest version of OmegaConf.
Published by Jasha10 almost 2 years ago
_convert_="object"
option for instantiate
, enabling conversion of non-_target_
structured configs to instances of the backing dataclass / attr class. (#1719)@hydra.main
decorator on top of other decorators produced using functools.wraps
. (#2303)--config-path
(#2368)AssertionError
(#2342)Published by pixelb over 2 years ago
hydra.runtime.choices
is now updated correctly during multi-run (#1882)hydra.verbose=True
now works with multirun. (#1897)_target_
keyword argument to instantiate
(#1914)hydra.main
. (#2042)functools.partial
instances via a _partial_
keyword. (#1283)--experimental-rerun
command-line option to reproduce pickled single runs (#1805)|
in unquoted strings when parsing command-line overrides. (#1850)hydra.utils.instantiate
encounters a _target_
that cannot be located (#1863)instantiate
API now accepts ListConfig
/list
-type config as top-level input. (#1950)instantiate
, raise an InstantiateError
exception instead of an instance of the same exception class that was raised by the user code. (#1911)config_loader
to Plugin.setup, and update signature of run_job
to require hydra_context
. (#1953)The remaining changes are protected by the new version_base support,
which allows one to either configure Hydra to support older setups / config, or configure Hydra to use the following more modern defaults:
_name_
and _group_
from package header (see deprecation notice)hydra.job.chdir=True
to reinstate old behavior.config_path
options)Published by jieru-hu over 2 years ago
functools.partial
instances via a _partial_
keyword. (#1283)instantiate
API now accepts ListConfig
/list
-type config as top-level input. (#1950)- group@_global_: choice
is used in the same defaults list as - group: choice
. (#1784)Published by jieru-hu about 3 years ago
_self_
(#1755)target
as a parameter name (#1669)--cfg=job --resolve
and --help --resolve
so that the ${hydra:...} resolver now prints properly (#1681)Published by omry over 3 years ago
This release contains a few small changes to make Hydra 1.0 a bit more compatible with OmegaConf 2.1 and Hydra 1.1 to enable easier migration.
There is no risk in using it if you are using 1.0.6 now as it just makes the migration a bit smoother in some scenarios:
Published by omry over 3 years ago
This is the biggest Hydra release yet.
instantiate
API, nested defined objects are instantiated automatically.There have also been many bug fixes and performance improvements, as well of as some breaking changes - both in Hydra and in OmegaConf.
Please check the API changes and deprecation sections in these release notes and in the OmegaConf release notes.
@
, $
and ?
symbols in unquoted values in overrides (#1074, #1437, #1597)++key=value
(force-add overrides if the value exists and adds it otherwise) (#1049)_self_
keyword. (#326)hydra.utils.instantiate()
(#566)_target_
of instantiation with a Python type or a string (#1017)@hydra.main
and the Compose API
(#1010)@hydra.main
is now an error (#1010)hydra.experimental.{compose,initialize,initialize_config_dir,initialize_config_module}
out from the hydra.experimental
module to the hydra module. (#1030)HydraContext
to run_job
and Launcher/Sweeper's setup
(#1498)_recursive_=False
to disable recursive instantiation. (#566)list : Optional[List[int]] = None
(#1117)hydra.job.{id,num}
are now properly passed to jobs in multirun (#1270)%f
directive (microseconds) to the ${now:PATTERN}
resolver (#1287)+
overrides to properly insert new values into Structured Configs. (#1515)--cfg=hydra
now works for read-only config (#1461)hydra.callbacks
(#1526)Published by omry over 3 years ago
This is the biggest Hydra release yet.
instantiate
API, nested defined objects are instantiated automatically.There have also been many bug fixes and performance improvements, as well of as some breaking changes - both in Hydra and in OmegaConf.
Please check the API changes and deprecation sections in these release notes and in the OmegaConf release notes.
@
, $
and ?
symbols in unquoted values in overrides (#1074, #1437, #1597)++key=value
(force-add overrides if the value exists and adds it otherwise) (#1049)_self_
keyword. (#326)hydra.utils.instantiate()
(#566)_target_
of instantiation with a Python type or a string (#1017)@hydra.main
and the Compose API
(#1010)@hydra.main
is now an error (#1010)hydra.experimental.{compose,initialize,initialize_config_dir,initialize_config_module}
out from the hydra.experimental
module to the hydra module. (#1030)_recursive_=False
to disable recursive instantiation. (#566)list : Optional[List[int]] = None
(#1117)hydra.job.{id,num}
are now properly passed to jobs in multirun (#1270)%f
directive (microseconds) to the ${now:PATTERN}
resolver (#1287)+
overrides to properly insert new values into Structured Configs. (#1515)Published by omry over 3 years ago
The following are informal release notes for Hydra 1.1 as of the publication of 1.1.0.dev6.
Note that there are many changes in OmegaConf 2.1 that are not covered by these release notes. Once OmegaConf 2.1 is officially release it will have formal release notes.
Published by jieru-hu over 3 years ago
Published by omry almost 4 years ago
additional_parameters
as an optional param in the Submitit launcher plugin.Published by omry almost 4 years ago
Published by omry about 4 years ago
Published by omry about 4 years ago
Published by omry about 4 years ago
Published by omry about 4 years ago
Hydra 1.0 is out!
See blog post for high level details.
Major new features in Hydra 1.0
These release notes are covering the changes since 1.0.0rc4.
To see the complete release notes for 1.0 take a look at the release notes of:
Published by omry about 4 years ago
Published by omry about 4 years ago
Hydra 1.0 is a major release introducing many new features and breaking some compatibility.
@package
header for config files (#586)config_path
and config_name
(--config-path
and --config-name
) (#386).hydra
subdirectory by overriding "hydra.output_subdir" to "null" (#324)hydra.utils.call()
to call methods and functions as well as instantiate objects. Search module paths more generically. (#498)__init__.py
at their top level (#536)entry()
function on the stack (#92)Published by omry about 4 years ago