All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Add
on_spot_discontinueparameter for instance OS volumes. Previously the policy was always'keep_detached', now it can be set to'move_to_trash'or'delete_permanently':instance = verda_client.instances.create( hostname='test-instance', location=Locations.FIN_03, instance_type='CPU.4V.16G', description='test cpu instance', image='ubuntu-22.04', is_spot=True, ssh_key_ids=[ssh_key.id], os_volume=OSVolume( name='test-os-volume-spot', size=56, on_spot_discontinue='delete_permanently', ), )
- Add
delete_permanentlyparameter for instance delete action. When set,volume_idswill be deleted in one go, skipping trash:verda.instances.action( instance.id, 'delete', volume_ids=[instance.os_volume_id], delete_permanently=True, )
- Add shared_volumes attribute to Cluster class
- Clusters support
- Add
datacrunch->verdamigration guide
datacrunch: fix imports fromdatacrunch.instances.instancesand other similar modules
verda: removed repeating submodules like.instances.instances.verda: renamed.InferenceClient.inference_clientmodule to.inference_client.
Was:
from datacrunch.instances.instances import InstancesService
from datacrunch.InferenceClient.inference_client import InferenceClientNow:
from verda.instances import InstancesService
from verda.inference_client import InferenceClient- Fix imports from
datacrunch.*modules
datacrunchpackage now importsverda, tracking its releases- Moved
DataCrunchClientand.datacrunchsub-module into compatibilitydatacrunchpackage
datacrunchpackage is nowverda, because DataCrunch company changed its name to Verda. Originaldatacrunchpackage is deprecated, but it would continue trackingverdareleases.
DataCrunchClientanddatacrunchare deprecated, please change your imports toVerdaClientandverda.
Was:
uv add datacrunch
pip install datacrunchfrom datacrunch import DataCrunchClient
datacrunch = DataCrunchClient(...)
datacrunch.instances.create(...)Now:
uv add verda
pip install verdafrom verda import VerdaClient
verda = VerdaClient(...)
verda.instances.create(...)- Added shared filesystem (SFS) type constant and example
- Refactor
instance_types.pyto use dataclass - Put back support for Python 3.10
- Default API base URL is now
https://api.verda.com/v1
- Changed default datacenter location to
FIN-03 - Migrated to
uv - Removed
datacrunch.__version__.VERSION. Use standard importlib.metadata.version() instead:from importlib.metadata import version print(version('datacrunch'))
- Migrated to Ruff for linting
- Upgraded pytest
If you are working on the library itself, do a fresh clone or upgrade your local development environment in-place:
# remove old environment
rm -rf datacrunch.egg-info/ .venv/ datacrunch_env/
# create new environment and install dependencies
uv sync
# run example
uv run python examples/simple_create_instance.py- Added constants for
FIN-02andFIN-03.
- Added
max_wait_time,initial_interval,max_interval,backoff_coefficientkeyword arguments toinstances.create()
- Cap
instances.create()retry interval to 5 seconds; add exponential backoff; increase defaultmax_wait_timefrom 60 to 180 seconds
- Added
SharedFileSystemMountclass for container sfs support - Added
SecretMountandGeneralStorageMountclasses that inherit from baseVolumeMount
- Removed support for python 3.9 as it doesn't support
kw_onlyand reaches EOS state in 2 months
- Add
SecretMountclass for container deployments
- Trigger publish package github action only when a released is published
- Async inference example: longer
sleep()duration when polling for inference status
- Removed a forgotten and redundant
print
- This file and CONTRIBUTING.rst to markdown
- Updated inference status enum from numerical to meaningful string values
- Github action publish package release trigger value
1.12.1 - 2025-05-13
- Inference examples docs generation
- Inference status enum from numerical to meaningful string values
1.12.0 - 2025-05-12
- Support for fileset secrets
1.11.0 - 2025-04-28
- Example for calling the inference endpoint with a minimal client
- Missing doc generation for inference examples
- Refactored instances.py to use dataclasses and google docstring style
1.10.0 - 2025-04-17
- Updated version for release
1.9.1 - 2025-04-17
- Inference client to run inference requests and get status and results
- Support for asynchronous inference
1.9.0 - 2025-04-04
- Environment variables to container deployment example
size_in_mbparameter toVolumeMountclass- Memory volume mount type
- Updated examples image from
fastaitoubuntu-24.04-cuda-12.8-open-docker - Consistent naming and load of credentials from env variables in examples
1.8.4 - 2025-03-25
- Readthedocs configuration file
1.8.3 - 2025-03-25
- Updated documentation
1.8.2 - 2025-03-25
- Missing packages to setup requirements
1.8.1 - 2025-03-24 [YANKED]
- Container name from deployment creation
1.8.0 - 2025-03-24 [YANKED]
- Support for containers
1.7.3 - 2025-03-07
- Type for contract and pricing parameters
1.7.1 - 2025-03-06
- Contract and pricing parameters in
datacrunch.instances.create()
1.7.0 - 2024-11-21
- Methods
volumes.increase_size()andvolumes.get()
1.6.1 - 2023-10-02
- Spot price to instance types
1.6.0 - 2023-09-15
- Locations endpoint and location code parameter to the availability endpoints
1.5.0 - 2023-06-28
- Location constants
- Refactored the code to send
location_codeinstead oflocationwhen creating an instance or a volume
1.4.1 - 2023-06-20
- Bug where token refresh failed
1.4.0 - 2023-06-14
- Support for permanent deletion of volumes
- Volume class method that inits a new Volume instance from a dict
- Integration tests for permanent deletion of volumes
1.3.0 - 2023-05-25
- Support for volume cloning
1.2.0 - 2023-04-24
- Support for deploying a new instance with existing volumes
1.1.2 - 2023-03-02
- Bug where the wrong property name was used
1.1.1 - 2023-02-23
- Bug where the authentication refresh token flow did not update the token values
1.1.0 - 2023-01-20
- Support for checking availability for a spot instance
- Updated two github actions to run on fixed version of ubuntu because the latest one is missing python 3.6
- Added more versions of python to be used on two github actions
1.0.10 - 2022-10-18
- Support for adding a coupon code when deploying a new instance
1.0.9 - 2022-09-16
is_spotproperty to theInstanceclass, now possible to deploy a spot instance- Implemented
__str__method forInstance,VolumeandImageClasses, now possible to print instances
1.0.8 - 2021-12-20
ssh_key_idsproperty for Volume entity- Test coverage for
ssh_key_ids
1.0.7 - 2021-10-13
- The previous bug in a different method
1.0.6 - 2021-10-12
- Bug where initializing an instance without ssh keys raises an exception
1.0.5 - 2021-09-27
- Option to set OS volume size and name on instance creation
1.0.4 - 2021-07-01
- Constants documentation
1.0.3 - 2021-07-01
- Missing volumes documentation
1.0.2 - 2021-06-16
- Examples to documentation
1.0.1 - 2021-06-16
- Updated version
1.0.0 - 2021-06-16
- Support for storage volumes
- Breaking change: moved all constants under DataCrunchClient to DataCrunchClient.constants
0.1.0 - 2021-01-05
- First release, still in beta.