All Versions
14
Latest Version
Avg Release Cycle
30 days
Latest Release
1226 days ago

Changelog History
Page 1

  • v1.0.4 Changes

    November 18, 2020

    1.0.4 (2020-11-17)

    ๐Ÿ› Bug Fixes

    • โœ… Hydra no longer errorenously changes the USER environment variable in pytest unit tests once installed (#1059)
    • ๐Ÿ‘ Allow @ symbol in unquoted values in overrides (#1074)
    • ๐Ÿ›  Fix a bug where Structured Config has a field like 'list : Optional[List[int]] = None` (#1117)

    ๐Ÿ”Œ Plugins

    • ๐Ÿ”Œ Switch Ax Sweeper plugin to use new Hydra command line syntax
    • ๐Ÿ”Œ Switch Nevergrad Sweeper plugin to use new Hydra command line syntax
    • โช Revert the use of "_" to separate the path element in keys for the Ax sweeper plugin.
  • v1.0.3 Changes

    September 23, 2020

    1.0.3 (2020-09-22)

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixed interaction between interpolation and instantiate (#1001)
    • ๐Ÿ›  Fix float parsing for values where the exponent starts with 0 (e.g 1e-05) (#999)
  • v1.0.2 Changes

    September 20, 2020

    1.0.2 (2020-09-20)

    โšก๏ธ This is a small update improving support for config dataclasses generated by configen.

    ๐Ÿ”‹ Features

    • Overridden parameters annotated as Any in the config are not type checked by instantiate() (#982)
  • v1.0.1 Changes

    September 15, 2020

    1.0.1 (2020-09-15)

    ๐Ÿ”‹ Features

    • โž• Add ability to escape special characters in unquoted command line values (#954)

    ๐Ÿ› Bug Fixes

    • โž• Add support for merging dicts and lists specified in the commend line (#939)
    • ๐Ÿ›  Fix appending dict values with new fields to config with + (#946)
    • ๐Ÿ›  Fix for Override Grammar integer parsing: Integers are now compatible with Python integers ('+' prefix, correct handling of '_') (#954)

    ๐Ÿšง Maintenance Changes

    • โฌ†๏ธ Upgrade to OmegaConf 2.0.2 (#755)
  • v1.0.0 Changes

    September 03, 2020

    1.0.0 (2020-09-03)

    Hydra 1.0 is out!
    ๐Ÿ‘€ See blog post for high level details.

    Major new features in Hydra 1.0

    • Config type safety via Structured Configs
    • ๐Ÿ’ป More powerful command line
    • ๐Ÿ†• New plugins enabling remote launching and hyper parameter optimization
    • ๐Ÿ‘Œ Improved error reporting
    • โฌ‡๏ธ Reduce nesting levels with config packages

    ๐Ÿš€ 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:

    ๐Ÿ”‹ Features

    • โž• Add support for casting interval to ints and floats (#915)

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fix to flush logging instead of shutting it down at job end (#833)
    • ๐ŸŒฒ compose() no longer initialized logging subsystem (#833)
    • ๐Ÿ›  Fix overriding of hydra.job.env_set from the command line (#854)
    • ๐Ÿ›  Fix tab completion to not output errors in some cases when using --multirun (#856)
    • ๐Ÿ›  Fix OmegaConf custom resolvers not being propagated to Sweepers properly (#861)
    • Interpolation accepts any char between ${ and } (#891)
    • โšก๏ธ Update the signature of hydra.utils.instantiate() allow input configs of Any type (#896)
    • ๐Ÿ›  Fix instantiate to work correctly when parameters are interpolations into a parent node (#904)
    • Apps will now raise underlying exception if env HYDRA_FULL_ERROR=1 (#926)

    ๐Ÿ”Œ Plugins

    • ๐Ÿ›  Fix integer/float choice from spec in the Nevergrad plugin

    ๐Ÿ‘Œ Improved Documentation

    • ๐Ÿ†• New page in Structured Configs tutorial: Static schema with many configs (#918)
    • ๐Ÿ†• New page in Structured Configs tutorial: Dynamic schema with many configs (#918)
  • v1.0.0.rc4 Changes

    August 18, 2020

    1.0.0rc4 (2020-08-18)

    ๐Ÿ”‹ Features

    • โฌ†๏ธ Upgrade to OmegaConf 2.0.1rc12 (#889)

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fix bug with bash autocompletion for the users who has . in their PATH environment variable (#868)
    • ๐Ÿ›  Fix instantiate to return None when None config is passed (#887)
  • v1.0.0.rc3 Changes

    August 17, 2020

    1.0.0rc3 (2020-08-17)

    ๐Ÿ”‹ Features

    • ๐Ÿ‘ Extended Override grammar supports range(),glob(),type casts,shuffle, sort and more. (#752)
    • โž• Add support for specifying an additional config dir in the command line (#874)
    • ๐Ÿ‘ Allow overriding of the defaults and hydra nodes in primary Structured Configs that does not mentioned defaults and hydra. (#877)

    ๐Ÿ—„ API Change (Renames, deprecations and removals)

    • ObjectConf is deprecated for TargetConf. See upgrade page. (#882)
    • โšก๏ธ All plugins updated to use TargetConf. Be sure to update all your Hydra plugins (#882)
    • โšก๏ธ Instantiated objects no longer have a params node in the conf. keys like hydra.launcher.params.foo are changed to hydra.launcher.foo. Update your configs and overrides if you were overriding such parameters. (#882)

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fixed parsing of two nested lists with whitespace between them: [[a], [b]] (#836)

    ๐Ÿ‘Œ Improved Documentation

    • ๐Ÿ†• New Extended command line syntax page (#752)
  • v1.0.0.rc2 Changes

    July 18, 2020

    1.0.0rc2 (2020-07-18)

    ๐Ÿ”‹ Features

    • ๐Ÿ’ป Introducing a DSL for the command line override syntax (#797)
    • 0๏ธโƒฃ Sanitize exception messages by default, showing only interesting stack frames (#646)
    • โž• Add a new --info flag to show Hydra debug information without running the user function. (#662)
    • โž• Add --package flag, can be used with --cfg to print a specific config package (#674)
    • ๐Ÿ‘Œ Improve the Compose API initialization methods (#702)
    • Switch internal package resource loader from pkg_resources to importlb_resources (#719)
    • ๐Ÿ‘ Allow interpolation in the Hydra config node to access the application config (#771)
    • Hydra provides pytest fixtures (hydra_sweep_runner, hydra_task_runner, hydra_restore_singletons) (#687)
    • โž• Added contexts to help initialize Hydra in a localized context (Mostly for Unit Tests and Jupyter Notebooks) (#687)
    • ๐Ÿ–จ Prints error when command line override looks like a sweep but --multirun is not specified (#712)
    • ๐Ÿ’ป Frozen Structured Configs are respected during composition command line overrides (#724)

    ๐Ÿ—„ API Change (Renames, deprecations and removals)

    • ๐Ÿ’… Hydra argparse flags are now consistently using dash-style. (#661)
    • ๐Ÿ”ง Restructure the configuration of the Submitit launcher (#682)
    • ๐Ÿ—„ Deprecated cls in favor of target in hydra.utils.{instantiate()/call{}} (#721)

    ๐Ÿ› Bug Fixes

    • โž• Add hydra/py.typed to pip package to enable type checking in downstream projects (#657)
    • ๐Ÿ›  Fix initilzation of Hydra in a module imported from a Jupyter Notebook (#695)
    • Fix handling of main module override via HYDRA_MAIN_MODULE (#717)
    • ๐Ÿ›  Fix interpoaltions in overrides to evaluate lazily (#725)
    • ๐Ÿ›  Fixed handling of multirun when target config node is introduced by composition (#726)
    • Sweepers are now validating config composition before launching (#775)
    • ๐Ÿ’พ Save .hydra/*.yaml before task execution (#678)

    ๐Ÿ”Œ Plugins

    • โž• Add Redis Queue Launcher plugin (Jan-Matthis)
    • โฌ†๏ธ Upgrade ax-platform used by Ax sweeper plugin to 0.1.13 or newer

    ๐Ÿ‘Œ Improved Documentation

    ๐Ÿšง Maintenance Changes

    • โ†” Integrate yamllint (#693)
    • โฌ†๏ธ Upgrade to OmegaConf 2.0.1rc11 which solves multiple bugs (#755)
  • v1.0.0.rc1 Changes

    May 31, 2020

    1.0.0-rc1 (2020-05-31)

    ๐Ÿš€ Hydra 1.0 is a major release introducing many new features and breaking some compatibility.

    ๐Ÿ”‹ Features

    • ๐Ÿš€ Upgrade to OmegaConf 2.0 (Release notes) (#630)
    • Optional config type safety via Structured Configs (#629)
    • ๐Ÿ‘Œ Improve command line and config composition error reporting (#349)
    • ๐Ÿ‘ท Hydra config can now be accessed through interpolation using ${hydra:key}, for example ${hydra:job.name} (#325)
    • ๐Ÿ‘Œ Support for setting environment variable of running job (#7)
    • ๐Ÿ”„ Changes command line processing (requiring + and ~ prefixes for appending and removing items) (#598)
    • ๐Ÿ“ฆ Introducing @package header for config files (#586)
    • Add command line override flags for config_path and config_name (#386)
    • hydra.main() now take an optional cfg object to passthrough to the function (#575)
    • Add hydra.experimental.{initialize_with_file, initialize_with_module} (#574)
    • ๐Ÿ‘Œ Support for disabling the creation of the .hydra subdirectory by overriding "hydra.output_subdir" to "null" (#324)
    • โž• Add hydra.utils.call() to call methods and functions as well as instantiate objects. Search module paths more generically. (#498)
    • โž• Add support for overriding package from command line and defaults list (#235)
    • Config source is now abstracted, allowing additional config sources to be used (#257)
    • ๐Ÿ†• New ConfigSource plugin API allowing configs to be provided by external plugins (#367)
    • โž• Add isort to ensure imports are always sorted (#340)
    • Codebase is now passing mypy --strict type checking (#342)
    • ๐Ÿ‘Œ Improve performance of plugin discovery and instantiation (#489)
    • ๐Ÿ”Œ Modules whose name starts with "_" are skipped during plugin discovery (#494)

    ๐Ÿ”Œ Plugins

    ๐Ÿ—„ API Change (Renames, deprecations and removals)

    • โฌ‡๏ธ Drop support Python 2.7 and 3.5 (#313)
    • ๐Ÿ’… hydra.main() now takes an additional optional config_name and composite-style config_path is deprecated (#395)
    • ๐Ÿ‘ท Launcher API launch method now takes an additional initial_job_idx indicating the id of the first job in the batch (#284)
    • Singleton metaclass is now exposed at hydra.core.Singleton (#371)
    • ๐Ÿšš Moved HydraConfig from hydra.plugins.common.utils to hydra.core (#371)
    • ๐Ÿšš Move several formerly internal APIs to hydra/core to ensure plugins does not need to use internal APIs (#371)
    • ๐Ÿ”Œ Plugin import now requires explicit name (from hydra.plugins.launcher import Launcher) (#371)
    • ๐Ÿšš Object Config "class" field is deprecated in favor of "cls" and will be removed in a future version. (#389)
    • Experimental compose API config_file changed to config_name (#395)
    • ๐Ÿ‘€ User plugins should be modified to not import twice during plugin discovery. see issue for details. (#482)
    • ๐Ÿ”„ Change hydra.core.plugins.Plugins class to a Singleton. access should be changed to the pattern Plugins.instance().foo() (#489)
    • โš™ Plugins should now include test fixtures (sweep_runner, task_runner) via a standardized conftest.py (#521)
    • ๐Ÿ‘€ Switch Python 3 native namespace packages for plugins (See task for details) (#534)
    • Packaged configuration directories now requires an __init__.py at their top level (#536)
    • 0๏ธโƒฃ Appending config groups to the defaults list via the command line now requires a + prefix (#598)
    • ๐Ÿ—„ Removing an item from the defaults list by assigning null (db=null) is deprecated, use ~db instead (#598)
    • Installed Hydra applications no longer need have an additional entry() function on the stack (#92)

    ๐Ÿ› Bug Fixes

    • ๐Ÿ›  Fix a bug causing sys.exit() error code to not be propagated (#351)
    • ๐Ÿ‘ท Shutdown logging subsystem aftter job finishes to ensure log files are flushed and closed (#378)
    • ๐Ÿ›  Fix a bug with utils.instantiate() failing if params contains interpolated values. (#388)
    • ๐Ÿ‘ Allow hydra.utils.instantiate() to accept non primitive objects for passthrough by name (#400)
    • ๐Ÿ›  Fix to work when an Hydra app is executed in Jupyter notebook using the %run command (#481)
    • ๐Ÿ”Œ Plugins are no longer imported twice during plugin discovery (#482)
    • to_absolute_dir(path) now converts relative path to be relative to os.cwd() when used outside of Hydra (#496)

    ๐Ÿ‘Œ Improved Documentation

    • ๐Ÿ”Œ Working examples are provided for all Hydra plugins in plugins/examples (#253)
    • The basic tutorial was rewritten to reflect many changes (#602)
    • โž• Add a new tutorial covering Structured Configs (#628)
  • v0.11.3 Changes

    December 29, 2019

    0.11.3 (2019-12-29)

    ๐Ÿ› Bug Fixes

    • ๐Ÿš€ Pin Hydra 0.11 to OmegaConf 1.4 to avoid breaking compatibility when OmegaConf 2.0 is released (#334)

    ๐Ÿ‘Œ Improved Documentation

    • Document a simple Ray example (#317)