Skip to content

Commit

Permalink
Client Release v2.1.0 (#12185)
Browse files Browse the repository at this point in the history
GitOrigin-RevId: c1f3e372ae4a46cf21bb115c6f9f7bcb930e4c9a
  • Loading branch information
stephencpope authored and Descartes Labs Build committed Sep 20, 2023
1 parent aee33e2 commit 255fef3
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 8 deletions.
54 changes: 47 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,21 +18,61 @@ The documentation for the latest release can be found at [https://docs.descartes
Changelog
=========

## [Unreleased]
## [2.1.0] - 2023-09-21

## General

- Following our lifecycle policy, client versions v1.11.0 and earlier are no longer supported. They may
cease to work with the Platform at any time.

## Catalog

- The Catalog `Blob` class now has a `get_data()` method which can be used to retrieve the blob
data directly given the id, without having to first retrieve the `Blob` metadata.

## Compute

- *Breaking Change* The base images for compute have been put on a diet. They are now themselves built
from "slim" Python images, and they no longer include the wide variety of extra packages that were
- *Breaking Change* The base images for Compute have been put on a diet. They are now themselves built
from "slim" Python images, and they no longer include the wide variety of extra Python packages that were
formerly included (e.g. TensorFlow, SciKit Learn, PyTorch). This has reduced the base image size by
an order of magnitude, making job startup overhead commensurately faster. Any functions which
require such additional packages can add them in as needed via the `requirements=` parameter. While
this will increase image size, it will generally still be much better than the prior "Everything and the kitchen sink" approach.

an order of magnitude, making function build times and job startup overhead commensurately faster.
Any functions which require such additional packages can add them in as needed via the `requirements=`
parameter. While doing so will increase image size, it will generally still be much better than the prior
"Everything and the kitchen sink" approach. Existing Functions with older images will continue
to work as always, but any newly minted `Function`` using the new client will be using one of the new
slim images.

- Base images are now available for Python3.10 and Python3.11, in addition to Python3.8 and Python3.9.

- Job results and logs are now integrated with Catalog Storage, so that results and logs can be
searched and retrieved directly using the Catalog client as well as using the methods in the Compute
client.

- The new `ComputeResult` class can be used to wrap results from a `Function`, allowing the user to
specify additional attributes for the result which will be stored in the Catalog `Blob` metadata for
the result. This allows the function to specify properties such as `geometry`, `description`,
`expires` and `extra_attributes` for the result `Blob`. The use of `ComputeResult` is not required.

- A `Job` can now be assigned arbitrary tags (strings), and searched based on them.

- A `Job` can now be retried on errors, and jobs track error reasons, exit codes, and execution counts.

- `Function` and `Job` objects can now be filtered by class attributes (ex. `Job.search().filter(Job.status == JobStatus.PENDING).collect()`).

- The `requirements=` parameter to `Function` objects now supports more `pip` magic, allowing the use
of special `pip` controls such as `-f`. Also parsing of package versions has been loosened to allow
some more unusual version designators.

- Changes to the `Function.map()` method, with the parameter name change of `iterargs` changed to `kwargs`
(the old name is still honored but deprecated), corrected documentation, and enhancements to support more
general iterators and mappings, allowing for a more functional programming style.

- The compute package was restructured to make all the useful and relevant classes available at the top level.

## Utils

- Property filters can now be deserialized as well as serialized.

## [2.0.3] - 2023-07-13

### Compute
Expand Down
2 changes: 1 addition & 1 deletion descarteslabs/core/client/version.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "2.0.3"
__version__ = "2.1.0"

0 comments on commit 255fef3

Please sign in to comment.