From 7599d2ebff8ef24a49485bb47acf6222cdb2e9d3 Mon Sep 17 00:00:00 2001 From: Alex Barcelo Date: Thu, 21 Nov 2024 11:01:09 +0100 Subject: [PATCH 1/2] preparing documentation for 4.1 --- docs/reference/dataclay.exceptions.rst | 16 ++++++++++++++++ docs/reference/index.rst | 1 + docs/releasenotes/4-x.rst | 20 ++++++++++++++++++++ src/dataclay/__init__.py | 2 +- src/dataclay/exceptions.py | 8 +------- src/dataclay/proxy/exceptions.py | 3 +++ 6 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 docs/reference/dataclay.exceptions.rst diff --git a/docs/reference/dataclay.exceptions.rst b/docs/reference/dataclay.exceptions.rst new file mode 100644 index 0000000..057a661 --- /dev/null +++ b/docs/reference/dataclay.exceptions.rst @@ -0,0 +1,16 @@ +Exceptions +========== + +General dataClay exceptions +--------------------------- + +.. automodule:: dataclay.exceptions + :members: + :show-inheritance: + +Proxy exceptions +---------------- + +.. automodule:: dataclay.proxy.exceptions + :members: + :show-inheritance: diff --git a/docs/reference/index.rst b/docs/reference/index.rst index 3bd5e51..eb018fa 100644 --- a/docs/reference/index.rst +++ b/docs/reference/index.rst @@ -7,5 +7,6 @@ API Reference dataclay.client dataclay.backend dataclay.metadata + dataclay.exceptions aliendco annotations \ No newline at end of file diff --git a/docs/releasenotes/4-x.rst b/docs/releasenotes/4-x.rst index 8dad2a1..2362c81 100644 --- a/docs/releasenotes/4-x.rst +++ b/docs/releasenotes/4-x.rst @@ -36,3 +36,23 @@ Other changes - Offering a new :doc:`Zenoh bridging mechanism ` (similar to the :doc:`MQTT ` one). - Removed the session and password authentication. This feature will be handled by the proxy going forward. - Added healthcheck mechanisms (at the gRPC level) to monitor the status of the dataClay services. + +4.1 (November 2024) +------------------- + +This minor release brings some bug fixes to the features introduced in 4.0, and also some new features. + +Highlights +~~~~~~~~~~ + +- Official support for Python 3.13. +- Improved granularity and semantic of raised exceptions. The list and description of all the current + exceptions can be found in the :doc:`/reference/dataclay.exceptions` reference page. +- Fixed behavior of the proxy. Now the code works properly in an async configuration. +- More detailed examples and utility functions to support JWT tokens in the proxy side. +- Better defaults for the logging system. +- Improved and expanded documentation for Telemetry. +- Build system is now using `nox `_. +- Support for PyCOMPSs + `constraints `_. + Should work out of the box with dataClay 4.1 and the upcoming COMPSs version. \ No newline at end of file diff --git a/src/dataclay/__init__.py b/src/dataclay/__init__.py index 062dfef..6d11182 100644 --- a/src/dataclay/__init__.py +++ b/src/dataclay/__init__.py @@ -9,5 +9,5 @@ StorageObject = DataClayObject -__version__ = "4.0.1.dev" +__version__ = "4.1.0.dev" __all__ = ["Client", "DataClayObject", "AlienDataClayObject", "activemethod", "StorageObject"] diff --git a/src/dataclay/exceptions.py b/src/dataclay/exceptions.py index 7f13664..a60a5bc 100644 --- a/src/dataclay/exceptions.py +++ b/src/dataclay/exceptions.py @@ -1,17 +1,11 @@ -""" All dataClay exceptions are colected in this file. """ +"""In general, dataClay will prefer to raise the exceptions defined below.""" class DataClayException(Exception): """Base class for exceptions in this module.""" - pass -################## -# NEW EXCEPTIONS # -################## - - ############## # KV Generic # ############## diff --git a/src/dataclay/proxy/exceptions.py b/src/dataclay/proxy/exceptions.py index e5e1361..9c621e6 100644 --- a/src/dataclay/proxy/exceptions.py +++ b/src/dataclay/proxy/exceptions.py @@ -1,2 +1,5 @@ +"""The middleware can throw the exceptions defined below.""" + class MiddlewareException(Exception): + """Exception raised for errors in the middleware.""" status_code = None From 0da2f0fd25e7cb8c1056c4a60a638abddff58b0d Mon Sep 17 00:00:00 2001 From: Canicula98 Date: Thu, 21 Nov 2024 11:50:33 +0100 Subject: [PATCH 2/2] release version 4.1.0 --- CHANGES.rst | 14 -------------- PUBLISH.md | 3 +-- src/dataclay/__init__.py | 2 +- 3 files changed, 2 insertions(+), 17 deletions(-) delete mode 100644 CHANGES.rst diff --git a/CHANGES.rst b/CHANGES.rst deleted file mode 100644 index c3b96f0..0000000 --- a/CHANGES.rst +++ /dev/null @@ -1,14 +0,0 @@ -Version 4.0.0 -------------- - -Released 2024-06-21 - -Version 3.1.0 -------------- - -Released 2023-06-11 - -Version 3.0.1 -------------- - -Released 2023-05-03 \ No newline at end of file diff --git a/PUBLISH.md b/PUBLISH.md index 721de53..75c0270 100644 --- a/PUBLISH.md +++ b/PUBLISH.md @@ -4,10 +4,9 @@ **Prerequisite**: Have a dataClay's pypi and testpypi account with owner access. -1. Run `tox` to format and check tests. +1. Run `nox` to format and check tests. 2. Push a new commit `release version ` where you: - Update `dataclay.__version__` from `dataclay.__init__` to `` - - Add `Released YYYY-MM-DD` to `CHANGES.rst` 3. Create and push a new tag: diff --git a/src/dataclay/__init__.py b/src/dataclay/__init__.py index 6d11182..76f0147 100644 --- a/src/dataclay/__init__.py +++ b/src/dataclay/__init__.py @@ -9,5 +9,5 @@ StorageObject = DataClayObject -__version__ = "4.1.0.dev" +__version__ = "4.1.0" __all__ = ["Client", "DataClayObject", "AlienDataClayObject", "activemethod", "StorageObject"]