Skip to content

Releases

integrations 0.14.1

Choose a tag to compare

@sustenaut-release sustenaut-release released this 06 Nov 10:20
4d5b98d

0.14.1 - 2026-11-06

Commit 548e61b426ad; release record pub:sha2-256:pakyty7qef4wu33wogajn5mkaxgdkdenar3yhjj4zifvl25wrxfa.

Added

  • The service and the ingest pod answer /livez while the process is up; /healthz is integrations.calls.health over their checks: the ingest pod is unready, with 503, once its scanner goes three intervals without finishing a pass, and the service lists a storage buffer it can't reach as an alert only, since a call needs nothing it holds
  • The ingest pod loads observability's signals, when INGEST_SIGNALS names their tenant and dataset, from that tenant's inbox/signals/ into the dataset's signals table
  • The cloudflare.workers plugin, for Workers deploys
  • workers/call-log, a Durable Object per Cloudflare sender that keeps its call records durably and writes its file every two minutes, even an idle one, with caller.js's CallLogSink to send it records

Install:

pip install https://github.com/Sustenaut/integrations/releases/download/v0.14.1/integrations-0.14.1-py3-none-any.whl

integrations 0.14.0

Choose a tag to compare

@sustenaut-release sustenaut-release released this 06 Nov 05:42
ec5666c

0.14.0 - 2026-11-06

Commit 7e3a4604deaf; release record pub:sha2-256:pecxorr363weqbmckyftckktf5milea3536l5nlurhc44vyf37ta.

Changed

  • StorageSink sends its files through the storage client, as storage.api's sink operation: tried once, for up to a minute, and not recorded, as before
  • A sink's timer sends its first file a random part of a cycle in, so pods started together don't send at once

Added

  • A registry operation may name its own timeout and tries, in place of its class's
  • Storage clients, clients/js/storage.js and integrations.clients.storage, generated from Sustenaut/storage's openapi.json as vendored and pinned in openapi/storage.json, as plugin storage.api
  • Unavailable carries the last response, and a Replay answer may give its ETag
  • A retry waits a random time up to 2**n s (full jitter) or what a 429's or 503's Retry-After says, up to the class's timeout, and a call never runs past its timeout times its tries, in calls.py and caller.js

Install:

pip install https://github.com/Sustenaut/integrations/releases/download/v0.14.0/integrations-0.14.0-py3-none-any.whl

integrations 0.13.0

Choose a tag to compare

@sustenaut-release sustenaut-release released this 06 Nov 04:55
7e68400

0.13.0 - 2026-11-06

Commit c82c526d2a3c; release record pub:sha2-256:ejbazrgwudetlgfua4srhr6vnnccoru2pcpar5hgkvcvczoz4euq.

Changed

  • Each class's timeout and tries are in classes.json, which calls.py and caller.js both read

Added

  • clients/js/caller.js: the Caller, its sinks and a StorageSink for Node and Cloudflare Workers, generated from the same class table as calls.py, and a root package.json to depend on it by release tag
  • github.repo-ops check-push: a human-driven check that a token may push to a repository

Install:

pip install https://github.com/Sustenaut/integrations/releases/download/v0.13.0/integrations-0.13.0-py3-none-any.whl

integrations 0.12.4

Choose a tag to compare

@sustenaut-release sustenaut-release released this 05 Nov 13:17
a60a391

0.12.4 - 2026-11-05

Commit 5ffeaa386615; release record pub:sha2-256:6q7pldvmxydc7eaq4qcqjikmxnsbgd552mk2a7abnlz7ext3u3za.

Added

  • A sink's report can carry its app's page times for the window, low, median and high, and whether the process started in it

Install:

pip install https://github.com/Sustenaut/integrations/releases/download/v0.12.4/integrations-0.12.4-py3-none-any.whl

integrations 0.12.3

Choose a tag to compare

@sustenaut-release sustenaut-release released this 05 Nov 13:08
12ddd74

0.12.3 - 2026-11-05

Commit fb5c75f39c8c; release record pub:sha2-256:nujmis3wdimlghoomj753vos5shl37vzatxoy2jgigkf5lor3ama.

Fixed

  • A sink's refused write now says storage's reason, and why it had no token, in the process's log

Internal

  • Releases are cut with pubrel: release.json, the corpus and its release key, and pubrel's release workflow, in place of wheel.yml tagging pyproject.toml's version

Install:

pip install https://github.com/Sustenaut/integrations/releases/download/v0.12.3/integrations-0.12.3-py3-none-any.whl

integrations 0.12.2

Choose a tag to compare

@github-actions github-actions released this 05 Nov 09:35
16f2603

What's Changed

  • Remove the old call log path: /records, the spool and overflow by @schryer in #26
  • Let a sink write from the request that finds its file overdue by @schryer in #27

Full Changelog: v0.12.1...v0.12.2

integrations 0.12.1

Choose a tag to compare

@github-actions github-actions released this 03 Nov 07:25
df1f51b

What's Changed

  • Take the call log's page back out of integrations by @schryer in #25
  • Give timings their own rate limit by @schryer in #22

Full Changelog: v0.12.0...v0.12.1

integrations 0.12.0

Choose a tag to compare

@github-actions github-actions released this 02 Nov 20:06
a05d3c9

What's Changed

  • Scan each project's storage buffer and load what is waiting by @schryer in #23
  • Send call records to storage, with a report every cycle by @schryer in #24
  • Serve the call log's page at /logging, behind the team sign-in by @schryer in #21

Full Changelog: v0.11.0...v0.12.0

integrations 0.11.0

Choose a tag to compare

@github-actions github-actions released this 02 Nov 14:37
2ea5194

What's Changed

  • Tie a request's calls together, and time it at the service and the app by @schryer in #20

Full Changelog: v0.10.1...v0.11.0

integrations 0.10.1

Choose a tag to compare

@github-actions github-actions released this 02 Nov 07:55
38de3ad

What's Changed

  • Name ourselves to the network, as Cloudflare refuses urllib's name by @schryer in #19

Full Changelog: v0.10.0...v0.10.1