Skip to content

Releases: hotdata-dev/sdk-python

hotdata 0.4.1

19 Jun 15:12
8d67148

Choose a tag to compare

Changed

  • Configuration now defaults to a retry policy that transparently retries
    pre-response connection resets (stale pooled keep-alive connections, e.g.
    ProtocolError('Connection aborted.', ConnectionResetError)) on every
    method, including POST. Such a reset happens before the request reaches the
    server, so retrying on a fresh connection cannot double-execute. Read timeouts
    and status retries stay idempotent-only. Pass an explicit retries to
    override (#118).
  • chore: make api doc language end-user focused

hotdata 0.4.0

16 Jun 15:35
27133b5

Choose a tag to compare

Added

  • hotdata.query.QueryApi: enhanced query client that transparently retries
    HTTP 429 (OVERLOADED) admission shedding honoring Retry-After, and
    auto-follows truncated results to materialize the full row set, guarded by
    configurable max_auto_rows (default 1M) and max_auto_bytes (default
    64 MiB) ceilings (#688).
  • ResultError base class for the result-lifecycle exceptions
    (ResultFailedError, ResultTimeoutError, ResultTooLargeError,
    ResultIncompleteError, ResultUnavailableError) so callers can catch them
    with a single except.

Changed

  • from hotdata import QueryApi / ResultsApi now resolve to the enhanced
    clients (429 retry + truncation auto-follow; Arrow IPC fetch) instead of the
    bare generated classes, so the default happy path gets the safe behavior the
    query contract needs. The raw generated classes remain importable from
    hotdata.api.query_api / hotdata.api.results_api.

hotdata 0.3.1

06 Jun 14:28
34e04c4

Choose a tag to compare

Security

  • Raised dependency floors to patched releases: pyarrow >= 14.0.1 (CVE-2023-47248, RCE via unsafe deserialization) and pydantic >= 2.4.0 (CVE-2024-3772, regex denial of service).

hotdata 0.3.0

05 Jun 21:17
1cb6338

Choose a tag to compare

Added

  • Transparent API-token → JWT exchange: the client now exchanges an opaque API token for a short-lived JWT on first use and keeps it refreshed, so the wire always carries a current token. Credentials already shaped like a JWT pass through unchanged. Set HOTDATA_DISABLE_JWT_EXCHANGE to an affirmative value (1, true, yes, on) as a hard escape hatch.
  • Managed-catalog editing endpoints: add_managed_schema and add_managed_table on ConnectionsApi and DatabasesApi, with new models AddManagedSchemaRequest, AddManagedTableDecl, AddManagedTableRequest, ManagedSchemaResponse, and ManagedTableResponse.
  • Typed x_database_id parameter on SavedQueriesApi.execute_saved_query (required) and DatasetsApi.create_dataset, scoping execution to a database the same way QueryApi.query does — no more _headers override.
  • database_id field on QueryRequest as a body-level alternative to the X-Database-Id header.
  • storage_backend field on CreateDatabaseRequest to select the default catalog's physical backend (parquet or ducklake).
  • default_catalog field on CreateDatabaseRequest to name the database's auto-created default catalog within its query scope, surfaced on CreateDatabaseResponse, DatabaseDetailResponse, and DatabaseSummary.

hotdata 0.2.6

29 May 21:20
09d662e

Choose a tag to compare

Added

  • default_catalog and default_schema fields on QueryRequest to control how unqualified table references resolve within an X-Database-Id scope.

hotdata 0.2.5

27 May 22:30
402efbc

Choose a tag to compare

Changed

  • Release 0.2.5

hotdata 0.2.4

27 May 22:04
be6fa87

Choose a tag to compare

Changed

  • Release 0.2.4

hotdata 0.2.3

23 May 04:40
d534189

Choose a tag to compare

Added

  • Databases API client (DatabasesApi) — create, get, list, delete databases and manage catalog attachments.
  • New models: CreateDatabaseRequest, CreateDatabaseResponse, DatabaseDetailResponse, DatabaseSummary, DatabaseAttachmentInfo, DatabaseDefaultSchemaDecl, DatabaseDefaultTableDecl, ListDatabasesResponse, AttachDatabaseCatalogRequest.
  • expires_at field on CreateDatabaseRequest for setting database expiry.
  • connection_types field on ListConnectionTypesResponse; updated ConnectionTypeDetail and ConnectionTypeSummary models.

hotdata 0.2.2

20 May 16:46
ff0b140

Choose a tag to compare

Fixed

  • Add ApiClient.close() and RESTClientObject.close() so callers can release urllib3 connection pools and use context managers safely.

hotdata 0.2.1

20 May 03:49
fd6c8a7

Choose a tag to compare

What's Changed

  • chore: regenerate client from updated OpenAPI spec by @hotdata-automation[bot] in #67
  • chore: release hotdata 0.2.1 by @eddietejeda in #68

Full Changelog: v0.2.0...v0.2.1