Release Notes


  • Support Google Cloud Registry authentication
  • Handle conflicting filenames with automatic index
  • Bug fixes: - Preserve order of steps in a run to match the template - Fix run, template, and data object delete functions - Add docker-py dependency needed for local deployment - Fix file_relative_path error related to run import - Quote env values to support ansible>=2.8.0


  • Bug fixes: - The force_rerun setting was being ignored - Duplicate task attempts were being created on failure - Fixed import of nested templates with preexisting children - Python package conflicts resolved, migrated Docker image to ubuntu - Fixes to the Jenkins pipeline
  • Added “size” and “index” special functions to workflow language
  • Refactored views in portal for better performance


  • Bug fixes: - critical bug affecting all runs with multiple outputs - bug that prevented setting disk size for server or workers in Google Cloud - bug that prevented old logs from being automatically deleted


  • Import/export runs and templates with dependencies
  • Re-use existing results if an identical Task has already been run


  • Installable from PyPi with “pip install loomengine”
  • User authentication and authorization


  • Retry tasks on failure or lost heartbeat
  • Paginated index views in browser
  • Chunked index view queries by commandline client
  • Migrated kibana logs to same port as Loom under /logs
  • Critical bugfix for corrupted data trees
  • Simplified output filenames and directory structure
  • Periodic check for tasks that failed to clean up
  • Client warns, not errors, for duplicate file or template imports


  • “loom server start” now starts a local server using default settings
  • Required settings to launch on gcloud were reduced to a minimal set
  • Server settings validation
  • Removed deprecated commands “loom show”, “loom import”, and “loom export”
  • Removed deprecated fixed_inputs in templates
  • Deprecation warning for “loom server start –admin-files-dir”, renamed flag as “–resource-dir”
  • Server settings can be changed without destroying server, using “loom server start/stop”
  • Docker image versions for Loom server components can be upgraded without destroying server, using “loom server start/stop”


  • Enhanced validation of templates and data objects


  • Tags and labels for files, templates, and runs
  • Changed client commands to follow ‘loom {noun} {verb}’ pattern


  • Notification for completed runs by email or posting JSON to URL
  • Documentation for Loom templates
  • Templates can be referenced by hash
  • Added retries to file import/export, docker pull, other external services
  • Added --original-copy option to “loom file import”


  • Parallel workflows
  • Deprecated fixed inputs, replaced with optional and overridable “data” field on standard inputs
  • User-defined run names, using the optional --name flag with “loom run”
  • Updated examples, including two parallel examples “word_scoring” and “word_combinations”
  • Saving of templates is no longer asynchronous, so any errors are raised immediately with “loom import template”
  • Outputs can now use “glob” source in addition to “filename” and “stream”


  • Run overview shows nested runs, tasks, and task-attempts


  • Retries for upload/download from Google Storage


  • Runs have “waiting” status until they start
  • Runs are no longer changed to “killed” if they already completed
  • Input/output detail routes on runs


  • Critical bugfix for 0.3.4


  • Pre-configure Kibana
  • Disable X-Pack features in Kibana and Elasticsearch
  • Handle several sporadic failures from gcloud services
  • Handle gcloud gucket to bucket file copies longer than 30s
  • Prune docker data volumes


  • Critical bugfix for 0.3.2 that prevented use on Google Cloud


  • Fluentd for logging, with kibana+elasticsearch for log viewing
  • Nested templates by reference
  • API documentation with swagger
  • Reduced lag time in running tasks


  • Allow substitution in template output filenames
  • Added LOOM_PRESERVE_ON_FAILURE and LOOM_PRESERVE_ALL flags for debugging
  • Several bugfixes


  • User-configurable playbooks
  • Non-reverse-compatible simplifications to API
  • Reduced server response times
  • Dockerized deployment on local and google cloud
  • Optional dockerized MySQL server
  • Retry tasks if process stops responding


  • Use release-specific DOCKER_TAG in default settings


  • Loom can create a server locally or on Google Cloud Platform
  • Accepts workflow templates in JSON or YAML format
  • Web portal provides a brower interface for viewing templates, files, and runs
  • Loom client for managing runs from the terminal