Skip to content

Releases: IDSIA/sacred

Release v0.8.6

26 Aug 09:22
0e28284
Compare
Choose a tag to compare

Minor release for compatibility with Numpy>=2.0

  • Add support for Numpy>=2.0 (#928)
  • Switch from docopt (unmaintained) to docopt-ng (maintained fork) (#927, thanks @n-gao)

Release v0.8.5

13 Nov 07:23
cd90ee1
Compare
Choose a tag to compare

Minor release with a few small fixes.

  • Feature: Add setting for the default heartbeat interval
  • Bugfix: Don't ignore non-loadable classes in config files (#902, thanks @ernestum)
  • Bugfix: Fix an import error that made conda-forge build fail (#921, thanks @n-gao)
  • Doc: Update CDE tool that doesn't exist anymore and fix starter example (#905, #906, thanks @zhimin-z)

Release v0.8.4

25 Jan 17:03
Compare
Choose a tag to compare

Minor release with a few small fixes.

  • Update tests and supported python versions: sacred now officially supports Python 3.8-3.11 (#872, #892, thanks @jnphilipp)
  • Feature: Allow type annotations in config scopes and future-proofing config scopes by using ast instead of a complex regex (thanks @vnmabus)
  • Feature: Expose MongoClient in the MongoObserver (thanks @Gracecr)
  • Bugfix: Support new numpy versions by removing using Python builtin types instead of the np.* aliases (#870, thanks @Kaushalya)
  • Bugfix: Allow *.ipynb files as source files when run via ipython in non-interactive mode
  • Internal: Add error causes for many errors in the codebase (#894, #898, thanks @cool-RR)
  • Internal: Use GitHub Actions for tests instead of azure pipelines to gain more control (#896)
  • Internal: Use GitHub Actions to automate releases on PyPI

Release 0.8.3

28 Mar 13:51
98a2d08
Compare
Choose a tag to compare

A minor release with many small improvements and support for Python 3.10.

Release 0.8.2

26 Nov 21:37
04f2dcc
Compare
Choose a tag to compare

Minor bugfix release that resolves some bugs for Python 3.8+ and issues with the read-only container types.

  • Feature: Added support for pickling and YAML serialization to the read-only containers (#775, #737)
  • Feature: Added git integration to SqlObserver (#741)
  • Feature: Added support for a collection prefix in MongoObserver (#704)
  • Bugfix: Fix print_config command for Python 3.8 (#719)
  • Bugfix: Fix save_config command (#765)
  • Bugfix: Named config updates are now distributed correctly during the configuration creation process (#769, #777)
  • Bugfix: Parsing of the nvidia_smi output now also works with non-Unicode (e.g., Chinese) characters in process names (#776)
  • Bugfix: Fix type annotations of MongoObserver (#762)
  • Bugfix: Terminate tee on timeout. This is a workaround that prevents program crashes caused by output capturing (#740)
  • Bugfix: Improve parsing of config scopes (#699, #764)
  • Bugfix: Fix error tracking of ConfigErrors when raised in a config scope (#733)
  • Bugfix: Made git import optional (#724)

Release 0.8

14 Oct 14:59
47ed504
Compare
Choose a tag to compare

Major release with several breaking changes.

  • API change: Dropped support for Python 2
  • API change: Gathering of git information gathering is now enabled by default #595
  • API change: Switched constructor from Observer.create(...) to Observer(...) for all observers.
  • API change: Changed the interface for collecting custom host-information #569
  • API change: Changed interface for defining CLI options. #572
  • Feature: Added new S3 file observer #542
  • Feature: added started_text option to TelegramObserver #494
  • Feature: added copy/deepcopy support to read-only containers #500
  • Bugfix: FileStorage Observer is more reliable under parallel execution #503
  • Bugfix: FileStorageObserver now raises an error when an artifact would overwrite an important file #647
  • Bugfix: fixed inconsistent config nesting behavior #409 #505
  • Bugfix: Several fixes for tensorflow integration
  • Bugfix: Fixed crash due to missing brand-key on some machines # 512
  • Internal: Migrated CI server to Azure
  • Internal: Added pre-commit hooks for pep 8 checks and python black for automated code formatting
  • Internal: Started using pathlib.Path instead of os.path in many places

Release 0.7.5

20 Jun 14:11
Compare
Choose a tag to compare

The last release to support Python 2.7.

  • Feature: major improvements to error reporting (thanks @thequilo)
  • Feature: added print_named_configs command
  • Feature: added option to add metadata to artifacts (thanks @JarnoRFB)
  • Feature: content type detection for artifacts (thanks @JarnoRFB)
  • Feature: automatic seeding for pytorch (thanks @srossi93)
  • Feature: add proxy support to telegram observer (thanks @brickerino)
  • Feature: made MongoObserver fail dump dir configurable (thanks @JarnoRFB)
  • Feature: added queue-based observer that better handles unreliable connections (thanks @JarnoRFB)
  • Bugfix: some fixes to stdout capturing
  • Bugfix: FileStorageObserver now creates directories only when starting a run (#329; thanks @thomasjpfan)
  • Bugfix: Fixed config_hooks (#326; thanks @thomasjpfan)
  • Bugfix: Fixed a crash when overwriting non-dict config entries with dicts (#325; thanks @thomasjpfan)
  • Bugfix: fixed problem with running in conda environment (#341)
  • Bugfix: numpy aware config change detection (#344)
  • Bugfix: allow dependencies to be compiled libraries (thanks @jnphilipp)
  • Bugfix: output colorization now works on 256 and 16 color terminals (thanks @bosr)
  • Bugfix: fixed problem with tinydb observer logging (#327; thanks @michalgregor)
  • Bugfix: ignore folders that have the same name as a named_config (thanks @boeddeker)
  • Bugfix: setup no longer overwrites pre-configured root logger (thanks @thequilo)
  • Bugfix: compatibility with tensorflow 2.0 (thanks @tarik, @gabrieldemarmiesse)
  • Bugfix: fixed exception when no tee is available for stdout capturing (thanks @Greg-Farquhar)
  • Bugfix: fixed concurrency issue with FileStorageObserver (thanks @dekuenstle)

Bugfix Release 0.7.4

12 Jun 06:04
Compare
Choose a tag to compare

Minor bugfix release that solves some issues with the interaction of ingredients and named configs.

  • Bugfix: fixed problem with postgres backend of SQLObserver (thanks @bensternlieb)
  • Bugfix: fixed a problem with the interaction of ingredients and named configs
  • Feature: added metrics logging to the FileStorageObserver (thanks @ummavi)

Bugfix Release 0.7.3

06 May 20:44
Compare
Choose a tag to compare

Major bugfix release that fixes several critical issues including: experiments that sometimes didn't exit, racing conditions in the FileStorage and MongoObservers and several stdout-capturing problems.

  • Feature: support custom experiment base directory (thanks @anibali)
  • Feature: added option to pass existing MongoClient to MongoObserver (thanks @rueberger)
  • Feature: allow setting the config docstring from named configs
  • Feature: added py-cpuinfo as fallback for gathering CPU information (thanks @serv-inc)
  • Feature: added support for _log argument in config function
  • Bugfix: stacktrace filtering now correctly handles chained exceptions (thanks @kamo-naoyuki)
  • Bugfix: resolved issue with stdout capturing sometimes loosing the last few lines
  • Bugfix: fixed the overwrite option of MongoObserver
  • Bugfix: fixed a problem with the heartbeat sometimes not ending
  • Bugfix: fixed an error with running in interactive mode
  • Bugfix: added a check for non-unique ingredient paths (thanks @boeddeker)
  • Bugfix: fixed several problems with UTF-8 decoding (thanks @LukasDrude, @wjp)
  • Bugfix: fixed nesting structure of _config (thanks @boeddeker)
  • Bugfix: fixed crash when using git integration with empty repository (thanks @ramon-oliveira)
  • Bugfix: fixed a crash with first run using sqlite backend
  • Bugfix: fixed several problem with the tests (thanks @thomasjpfan)
  • Bugfix: fixed racing condition in FileStorageObserver (thanks @boeddeker)
  • Bugfix: fixed problem with overwriting named configs of ingredients (thanks @pimdh)
  • Bugfix: removed deprecated call to inspect.getargspec()
  • Bugfix: fixed problem with empty dictionaries disappearing from config updates and named configs (thanks @TomVeniat)
  • Bugfix: fixed problem with commandline parsing when program name contained spaces
  • Bugfix: loglevel option is now taken into account for config related warnings
  • Bugfix: properly handle numpy types in metrics logging

Release 0.7.2

06 May 13:24
Compare
Choose a tag to compare

Minor features release:

  • API Change: added host_info to queued_event
  • Feature: improved and configurable dependency discovery system
  • Feature: improved and configurable source-file discovery system
  • Feature: better error messages for missing or misspelled commands
  • Feature: -m flag now supports passing an id for a run to overwrite
  • Feature: allow captured functions to be called outside of a run (thanks @berleon)
  • Bugfix: fixed issue with telegram imports (thanks @millawell)