Skip to content

Releases: fgcz/bfabricPy

1.13.6

29 Aug 06:20
Compare
Choose a tag to compare

Added

  • Entity.find_by has new parameter max_results.

Changed

  • bfabric_read.py prints non-output information exclusively through logger and does not restrict entity types anymore.
  • bfabric_delete.py accepts multiple ids at once and does not restrict entity types anymore.
  • Both engines raise a BfabricRequestError if the endpoint was not found.

Removed

  • bfabric.endpoints list is deleted, since it was out of date and generally not so useful.

1.13.5

13 Aug 15:26
Compare
Choose a tag to compare

Added

  • The Bfabric instance is now pickleable.
  • Entities mapping:
    • Add Entity.id and Entity.web_url properties.
    • Add Entity.__getitem__ and Entity.get to access fields from the data dictionary directly.
    • Add Entity.find_by to find entities by a query.
    • More types and relationships
    • Relationships defer imports to descriptor call, i.e. circular relationships are possible now.
    • HasOne and HasMany allow defining optional=True to indicate fields which can be missing under some circumstances.
  • Add nodelist column and application name to bfabric_list_not_available_proteomics_workunits.py output.

Changed

  • Entity.find_all supports more than 100 IDs now by using the experimental MultiQuery API.

1.13.4

05 Aug 14:01
Compare
Choose a tag to compare

Added

  • Add Workunit, Parameter, and Resource entities.
  • Add concept of has_many and has_one relationships to entities.
  • bfabric_slurm_queue_status.py to quickly check slurm queue status.
  • Bfabric.save provides method which can be set to checkandinsert for specific use cases.

Changed

  • Most messages are now logged to debug level.
  • The old verbose version information is now always logged, to INFO level, since it could entail useful information for error reporting.

1.13.3

18 Jul 07:23
Compare
Choose a tag to compare

Added

  • Flask
    • New endpoint GET /config/remote_base_url for testing

Changed

  • Flask
    • Simplify logging by using loguru only.
    • Simplified setup logic since the production use case should use a WSGI server.

Fixed

  • bfabric_save_csv2dataset.py had an undeclared dependency on numpy and a few bugs which was improved.

1.13.2

11 Jul 09:28
Compare
Choose a tag to compare

Added

  • Add bfabric.entities.Dataset to easily read datasets.
  • Pydantic-based configuration parsing
    • The config format did not change.
    • The code is easier to maintain now.
    • Additionally, there is a lot more validation of the configuration file now, that should catch errors early.
  • Make host and port configurable in bfabric_flask.py (currently only dev mode).

1.13.1

02 Jul 15:08
Compare
Choose a tag to compare

Changed

  • bfabric_save_csv2dataset will raise an error if problematic characters are found in any of the cells
  • Correctly define bfabric_setWorkunitStatus_available.py, and processing and failed variants.

Added

  • Add loguru for future logging refactoring.
  • Easily runnable tests with nox and standardized formatting using pre-commit.

Removed

  • Pandas is no longer a dependency, and has been replaced by polars.

1.13.0

24 May 06:39
d0cfbdf
Compare
Choose a tag to compare

This is a major release refactoring bfabricPy's API.

Changed

  • The Bfabric class operations now return ResultContainer objects.
    • These provide a list-like interface to access individual items or iterate over them.
    • Individual items are a dictionary, potentially nested, and not specific to suds/zeep anymore.
    • Convenience conversions, e.g. to a polars DataFrame, can be provided there.
  • Configuration is now defined in ~/.bfabricpy.yml and supports multiple configurations, which can be selected by the BFABRICPY_CONFIG_ENV environment variable. Please consult the README for an example configuration.
  • Use pyproject.toml for package configuration.
  • Scripts have been refactored on a case-by-case basis.

Added

  • Zeep can be used instead of suds for SOAP communication.
  • Bfabric can be instantiated without authentication, that can be provided later. This is useful in a server setup.
  • Pagination support in Bfabric, specify the number of max_results and a potential offset. Pages handling is abstracted away.
  • Detect errors in responses, e.g. invalid login.

Removed

  • Several old scripts have been moved into a deprecated_scripts folder.
  • Wrapper creator related code is currently not updated but has been extracted into a dedicated folder wrapper_creator as well.

bfabricPy 0.13.8

09 Apr 10:38
Compare
Choose a tag to compare
Set version 0.13.8

bfabricPy 0.13.3

30 Aug 13:58
7c17150
Compare
Choose a tag to compare

dataset

06 Jan 08:40
Compare
Choose a tag to compare
dataset Pre-release
Pre-release

bfabric-0.11.7.tar.gz

enables fetching and saving datasets to and from csv files using the following command line scripts:

  • bfabric_save_csv2dataset.py
  • bfabric_save_dataset2csv.py