Recent Releases of jug

jug - Release 2.4.0

User-visible improvements

  • Adds support for lambda functions in Tasklets
  • Adds NoHash class to disable hashing for some arguments. This is in jug.unsafe as it can be used to fool Jug, but it can be useful when there are nuisance arguments that are not relevant for the task (e.g., number of threads)
  • jug.file_store: create files with better permissions

Internal improvements

  • Convert to pyproject.toml for building

Bugfixes

  • Better error detection for permission problems
  • Bugfix when using local imports and jug pack

This release drops support for versions of Python older than 3.7. Technically, it should still work, but they are too old to test in Github CI, so we will not support them.

- Python
Published by luispedro about 1 year ago

jug - Version 2.3.1

Update for Python 3.12

- Python
Published by luispedro over 2 years ago

jug - Version 2.3.0

Several minor improvements

  • jug shell: Add get_filtered_tasks()
  • jug: Fix jug --version (which had been broken in the refactoring to use subcommands)
  • jug shell: Fix message in jug shell when there are no dependencies (it would repeatedly print the message stating "this will only be run once")
  • jug pack: Make it much faster to invalidate elements
  • file_store: ensure that the temporary directory exists
  • Drops support for Python 3.4

- Python
Published by luispedro almost 3 years ago

jug - Version 2.2.3

Fix jug shell on newer versions of IPython

- Python
Published by luispedro about 3 years ago

jug - Version 2.2.2

Fix jug cleanup when packs are being used (after jug pack)

- Python
Published by luispedro almost 4 years ago

jug - Version 2.2.0

Major change is addition of jug pack subcommand.

Full Changelog: https://github.com/luispedro/jug/compare/v2.1.1...v2.2.0

- Python
Published by luispedro about 4 years ago

jug - Version 2.1.1

Important are the fixes for Python 3.8 and redis.

Compared to 2.1.0, this patch release includes some missing files in the package.

Full list of changes * Removed Python 2.7 support * Fix output encoding for Python 3.8 * Fix bug mixing mapreduce() & status --cache * Make block_access (used in mapreduce()) much faster (20x) * Fix important redis bug * More precise output in cleanup command

- Python
Published by luispedro about 5 years ago

jug - Version 2.0.1

This version is not recommended: use v2.0.2

- Python
Published by luispedro almost 6 years ago

jug - Version 2.0.0

The big changes are failed tasks (contributed by @unode).

Also, environmental variables are now always checked and creating a file called __jug_please_stop.txt will stop a jug execute run in a clean way.

Full ChangeLog - jug.backend.basestore has 1 new method listlocks - jug.backend.baselock has 2 new methods fail and is_failed - Add 'jug execute --keep-failed' to preserve locks on failing tasks. - Add 'jug cleanup --failed-only' to remove locks from failed tasks - 'jug status' and 'jug graph' now display failed tasks - Check environmental exit variables by default (suggested by Renato Alves, issue #66) - Fix 'jug sleep-until' in the presence of barrier() (issue #71)

- Python
Published by luispedro almost 6 years ago

jug - Version 2.0.2

Bugfix release.

Compared to 2.0.0:

  • Fix handling of JUG_EXIT_IF_FILE_EXISTS environmental variable
  • Fix passing an argument to jug.main() function
  • Extend --pdb to exceptions raised while importing the jugfile (issue #79)

- Python
Published by luispedro almost 6 years ago

jug - Version 2.0.0 (release candidate 0)

This is a major new release

The big changes are failed tasks (contributed by @unode).

- Python
Published by luispedro over 6 years ago

jug - Version 1.6.9

Include a compatibility fix for some versions of numpy

See https://github.com/numpy/numpy/pull/14063

- Python
Published by luispedro over 6 years ago

jug - 1.6.1

Fix bug with invalidate() inside jug shell

- Python
Published by luispedro over 8 years ago

jug - 1.6.2

Minor improvements.

Full ChangeLog:

  • Add returnvalue argument to `jugexecute`
  • Add exit_env_vars() function

- Python
Published by luispedro over 8 years ago

jug - 1.6.3

Add a polite request for citations to the Jug paper:

Coelho, L.P., (2017). Jug: Software for Parallel Reproducible Computation in
Python. Journal of Open Research Software. 5(1), p.30.

http://doi.org/10.5334/jors.161

- Python
Published by luispedro over 8 years ago

jug - Release 1.6.0

Release 1.6.0

Adds the jug graph subcommand to generate a little graph with tasks and their state.

  • Add jug graph subcommand
  • Generates a graph of tasks
  • jug execute --keep-going now ends with non-zero exit code in case of failures
  • Fix bug with cleanup in dict_store not providing the number of removed records
  • Add jug cleanup --keep-locks to remove obsolete results without affecting locks

Almost all of the credit for changes since 1.5.0 goes to Renato Alves (@unode on github).

- Python
Published by luispedro almost 9 years ago

jug - 1.5.0

Several new functions (isjugrunning, invalidate in shell, ...) and a new internal structure which allows for extensions (work by Renato Alves, aka @Unode).

Full ChangeLog: - Add demo subcommand - Add is_jug_running() function - Fix bug in finding config files - Improved --debug mode: check for unsupported recursive task creation - Add invalidate() to shell environment - Use ~/.config/jug/jugrc as configuration file - Add experimental support for extensible commands, use ~/.config/jug/jug_user_commands.py - jugrc: executewaitcycletimesecs is now executewaitcycletime - Expose `syncmoveinjug.utils`

- Python
Published by luispedro almost 9 years ago

jug - Release 1.3.0

Major improvements are IPython 5 compatibility, jug_execute, and timing.

Full ChangeLog: - Update shell subcommand to IPython 5 - Use ~/.config/jugrc as configuration file - Cleanup usage string - Use bottle instead of web.py for webstatus subcommand - Add jug_execute function - Add timing functionality

- Python
Published by luispedro over 9 years ago

jug - Release 1.2.0

Several optimizations in code and minor fixes made a new release worthwhile. Because the hashes have been changed, this needs to be a new (minor) version (see issue #25): upgrading will require you to rerun any tasks that use kwargs.

Full ChangeLog

  • Use HIGHEST_PROTOCOL when pickle()ing
  • Add compress_numpy option to file_store
  • Add register_hook_once function
  • Optimize case when most (or all) tasks are already run
  • Add --short option to jug status and jug execute
  • Fix bug with dictionary order in kwargs (fix by Andreas Sorge)
  • Fix ipython colors (fix by Andreas Sorge)
  • Sort tasks in jug status

- Python
Published by luispedro almost 10 years ago

jug - Release 1.2.1

A bugfix release, especially fixing jug on Windows (previously unusable as Windows does not support fsync on directories).

Full ChangeLog:

* Changed execution loop to ensure that all tasks are checked (issue #33 on github) * Fixed bug that made 'check' or 'sleep-until' slower than necessary * Fixed jug on Windows (which does not support fsync on directories) * Made Tasklets use slightly less memory

- Python
Published by luispedro almost 10 years ago