Skip to content

Releases: broadinstitute/fiss

v0.16.37

19 Mar 19:19
66e6b64
Compare
Choose a tag to compare

api.py

  • get_workflow_metadata updated to include the arguments include_key, exclude_key, and expand_sub_workflows.

v0.16.36

04 Nov 14:44
e973cbd
Compare
Choose a tag to compare

Hotfix: the old Terra billing API (profile/billing) is being removed, fiss.py and api.py updated to use the new one (billing/v2); Makefile updated to ensure image is built for linux/amd64; Dockerfile updated to use latest Python-3.10.

What's Changed

Full Changelog: v0.16.35...v0.16.36

v0.16.35

27 Sep 18:01
0cb8dbb
Compare
Choose a tag to compare

Hotfix

mop was failing for Python 2.7 installations when the user didn't set a default project, and the bucket listing error message was broken. To fix this, bucket listing was updated to use the workspace billing project, and the bucket listing exception catching code was corrected.

v0.16.34

24 Sep 02:23
95e03f1
Compare
Choose a tag to compare

api.py

  • check for presence of clock skew argument rather than check google.auth.__version__

fiss.py

  • meth_acl/config_acl
    • changed map(f(x),iterable) returns into list comprehensions to make py2/3 consistent
  • mop updated to account for change in Terra output directory structure

fccore.py

  • removed version string parser in favor of above check for the clock skew argument

v0.16.33

09 Sep 13:22
50a3e2a
Compare
Choose a tag to compare

fccore.py:

  • Added function to extract release tuple from a standard version string (based on PEP 440)

api.py:

  • parameter added to allow for clock skew in Oauth call
  • added version check of google.auth to determine availability of clock skew parameter

fiss.py:

  • added space_size()
  • added space_cost()
  • removed Python 3 syntax that broke Python 2 compatibility

setup.py:

  • blocked versions of google.auth with restrictive clock skew defaults and no way to modify them (2.1.0-2.3.1)

v0.16.32

26 Jul 18:50
3037656
Compare
Choose a tag to compare
  • Changed Dockerfile base image to python 3.10
  • Fixed Python 3.10 incompatibility issues (fixes #170)
  • pylint set to minimum version 1.9.5 (fixes #168)

api.py:

  • added __patch() helper to simplify adding wrappers for PATCH API calls
  • enhanced error checking to use the more robust json decoder in the requests module
  • upload_entities(): added delete_empty parameter
  • get_entities_query(): added filter_operator and fields parameters
  • create_submission(): added delete_intermediate_output_files, use_reference_disks, memory_retry_multiplier, workflow_failure_mode, and user_comment fields (fixes #165, fixes #169)
  • create_workspace(): added noWorkspaceOwner and bucketLocation fields and enabled use of multiple authorization domains (fixes #171)
  • new helper functions: _attr_vlcreate() and _attr_erlcreate() for creating list attribute via update_workspace_attributes() and update_entity() (resolves #99)
  • fixed bugs in existing helper functions _attr_ladd() and _attr_lrem()
  • new functions:
    • delete_entities_of_type()
    • rename_entity()
    • rename_entity_type()
    • rename_entity_type_attribute()
    • get_proxy_group()
    • get_storage_cost()
    • get_bucket_usage()
    • get_workflow_cost() (resolves #144)
  • updated and cleaned up documentation for multiple functions

fiss.py:

  • new functions:
    • entity_rename()
    • attr_rename()
  • function updates:
    • helper _entity_paginator() updated to take advantage of the fields parameter to speed up queries
    • config_start() updated to use new api.create_submission() fields
    • attr_get() now returns formatted arrays for list attributes in workspaces
    • attr_set() updated to enable creation of value and reference list attributes
    • attr_delete() updated to be completely type agnostic (previously only guaranteed to work on entity types in the firecloud model)
    • space_new() updated to allow multiple authorization domains and set the bucket region for the new workspace
    • mop():
      • Added submission ID filtering (resolves #158)
      • Now uses google-cloud-storage API for file listing rather than gsutil CLI
  • Cleaned up return of Terra errors to be more human-readable

highlevel_tests.py:

  • updated include new rename functions
  • fixed bugs that were due to inaccurate API docs

lowlevel_tests.py:

  • added test for get_entities_query().
  • added test for get_proxy_group()

v0.16.31

29 Jan 19:23
2cfce1f
Compare
Choose a tag to compare

fiss.py:

  • attr_delete now works on pairs
  • mop now recurses into arrays and complex data structures to discover files referenced by attributes
  • attr_get and attr_list are now reference data aware (matching Terra UI), and can return or elide them from results.

Dockerfile:

  • base image changed to Python 3

__init__.py:

  • Suppress Python 2 deprecation warning from cryptography module.

v0.16.30

17 Sep 13:50
a3a51b7
Compare
Choose a tag to compare

Hotfix - re-enabled making methods public.

v0.16.29

03 Sep 20:21
0440e48
Compare
Choose a tag to compare

api.py:

  • added fields parameter to get_workspace()

fiss.py:

  • space_exists(), attr_get(), attr_copy(), mop(), validate_file_attrs(), and config_validate() updated to use fields parameter in call to get_workspace()

py3 compatibility bugfixes:

  • setup.py:
    • easy_install removed to enable compatibility with latest setuptools
  • fccore.py:
    • tempfile generated in edit_text() now opens in mode 'w' instead of 'w+b' to work with both py2 and py3 str objects.

v0.16.28

17 Jul 21:14
2e7c05a
Compare
Choose a tag to compare

api.py:

  • added fields parameter to list_workspaces()

fiss.py:

  • space_list() and space_search() updated to use fields parameter in calls to list_workspaces()
  • Bugfix: proj_list() - fixed TypeError from appending map to list in py3