Skip to content

Releases: hotdata-dev/sdk-python

hotdata 0.4.0

Choose a tag to compare

@github-actions github-actions released this 16 Jun 15:35
27133b5

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

Choose a tag to compare

@github-actions github-actions released this 06 Jun 14:28
34e04c4

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

Choose a tag to compare

@github-actions github-actions released this 05 Jun 21:17
1cb6338

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

Choose a tag to compare

@github-actions github-actions released this 29 May 21:20
09d662e

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

Choose a tag to compare

@github-actions github-actions released this 27 May 22:30
402efbc

Changed

  • Release 0.2.5

hotdata 0.2.4

Choose a tag to compare

@github-actions github-actions released this 27 May 22:04
be6fa87

Changed

  • Release 0.2.4

hotdata 0.2.3

Choose a tag to compare

@github-actions github-actions released this 23 May 04:40
d534189

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

Choose a tag to compare

@eddietejeda eddietejeda released this 20 May 16:46
ff0b140

Fixed

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

hotdata 0.2.1

Choose a tag to compare

@eddietejeda eddietejeda released this 20 May 03:49
fd6c8a7

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

hotdata 0.2.0

Choose a tag to compare

@eddietejeda eddietejeda released this 20 May 03:49
981fbc8

What's Changed

  • test(integration): add scenario-driven integration tests by @zfarrell in #51
  • chore: regenerate client from updated OpenAPI spec by @hotdata-automation[bot] in #53
  • chore: regenerate client from updated OpenAPI spec by @hotdata-automation[bot] in #57
  • chore: regenerate client from updated OpenAPI spec by @hotdata-automation[bot] in #55
  • chore: regenerate client from updated OpenAPI spec by @hotdata-automation[bot] in #59
  • feat(arrow): add hotdata.arrow ResultsApi for Arrow IPC results by @zfarrell in #60
  • ci: use bump-my-version in regenerate workflow by @eddietejeda in #62
  • chore: regenerate client from updated OpenAPI spec by @hotdata-automation[bot] in #61
  • ci: harden regenerate version bump in CI by @eddietejeda in #63
  • chore: regenerate client from updated OpenAPI spec by @hotdata-automation[bot] in #64
  • Delete .gitlab-ci.yml by @eddietejeda in #65
  • Publish to PyPI on version tag push by @eddietejeda in #66

Full Changelog: v0.1.0...v0.2.0