Commit Graph

6 Commits

Author SHA1 Message Date
Matt Kaye
1eeb8e915d Fix: Queue blocking on many concurrency keys + failures (#1622)
* fix: move around case ordering

* feat: move worker fixture around

* fix: clean up fixtures

* feat: expand test, try to repro

* debug: more minimal repro

* fix: bug bashing

* fix: factor out concurrency queries into overwrite

* feat: improve test

* fix: improve test

* fix: lint

* feat: migration for trigger

* Fix: Retry + Cancel Bugs (#1620)

* fix: send original retry count to cancel

* fix: key threads, contexts, and tasks on retry count

* fix: store the key on the action and use it everywhere

* refactor: signature consistency

* fix: instrumentor types

* chore: version

* feat: comment

* fix: thank you mypy

* fix: simplify callback

* fix: ts implementation

* chore: lint

* fix: rework how retries are passed

* Fix: Add Retries to Log Pushes (#1594)

* fix: retry log pushes

* chore: version
2025-04-25 21:49:30 -04:00
Matt Kaye
993817b049 [Python] Single listener base class + bug fixes + refactors (#1470)
* fix: register durable steps and workflows separately

* chore: initial copy of pooled listener

* feat: initial generic impl

* feat: use pooled listener for wf run listener

* refactor: move listeners to subdir

* feat: refactor durable event listener

* fix: bug

* feat: share single pooled workflow listener and event listener everywhere

* cruft: rm hatchet fixture

* fix: rebase issue

* feat: remove asyncio api client in favor of sync one

* chore: minor version

* proposal: crazy hack idea to make the workflow run listener work

* fix: sleeps and error handling

* Revert "cruft: rm hatchet fixture"

This reverts commit b75f625e6ccec095e8c4e294d6727db166796411.

* fix: set timeout

* fix: rm pytest-timeout

* fix: rm retry

* fix: use v1 by default

* fix: try removing retry state

* fix: try using async client?

* fix: try running sequentially

* debug: loop

* debug: maybe it's this?

* fix: lint

* fix: re-remove unused fixtures

* fix: lazily create clients in admin client

* fix: default

* fix: lazily initialize dispatcher client

* fix: hint

* fix: no. way.

* feat: add back retries in ci

* fix: clients + imports

* fix: loop scope

* debug: try running skipped tests in ci again

* Revert "debug: try running skipped tests in ci again"

This reverts commit 8d9e18150e5207ee6051d8df8a6fe2a7504c722e.

* fix: rm duped code

* refactor: rename everything as `to_proto`

* refactor: removals of `namespace` being passed around

* fix: task output stupidity

* feat: add deprecation warning

* fix: remove more unused code

* feat: mix sync and async in dag example

* fix: autouse

* fix: more input types

* feat: remove ability to pass in loop

* fix: overload key gen
2025-04-10 08:18:17 -04:00
Matt Kaye
8172d59f84 [Python] Fix: Misc. Python Bugs (#1451)
* fix: stop trying to parse payloads back from json

* feat: streaming example

* feat: aio output

* fix: lint

* feat: sync and async examples

* fix: small issues

* fix: one more small thing

* chore: version

* fix: lint

* fix: add sleeps

* feat: factor out run_async_from_sync

* Revert "feat: factor out run_async_from_sync"

This reverts commit fb37395913.

* fix: schedule trigger namespace issue

* fix: log error if action payload fails to decode but don't raise out of listener
2025-03-31 13:47:34 -04:00
Matt Kaye
08f49031be [Python] Feat: Replace REST Client (#1413)
* fix: version

* feat: first pass at new base rest client

* fix: typing

* fix: base client cleanup

* feat: basic runs client

* fix: finally!!

* feat: helper functions for uuid and metadata conversion and api format fix

* fix: patches

* feat: run list apis

* feat: add bulk replay and cancel

* feat: replays and cancels

* feat: result getter

* feat: cron client

* feat: scheduled workflows

* feat: rate limit

* refactor: don't export admin client anymore

* feat: add a bunch more clients and remove the old `rest` thing

* fix: scheduled workflow trigger time

* fix: emptymodel default

* refactor: stop passing pooled workflow run listener around everywhere

* fix: more cleanup of context

* refactor: remove unused stuff from runner

* unwind: keep passing listeners around

* fix: rm some unused stuff

* fix: example

* feat: metrics api

* feat: a couple tests

* feat: more default emptymodels

* fix: tests

* [Docs]: Misc. Python Migration Guide Issues, Rate limits, V1 new features (#1417)

* fix: misc python migration guide

* feat: rate limits docs

* fix: lint

* fix: lint

* feat: skeleton

* feat: add a bunch of docs

* feat: bulk replay and cancel docs

* fix: add task output to example

* fix: otel docs + naming

* fix: lint

* fix: rm timeout

* feat: initial python sdk guide

* fix: raise on dupe on failure or on success

* fix: dags docs

* feat: 1.0.1
2025-03-27 16:32:54 -07:00
Matt Kaye
5062bf1e3e V1 SDKs and Docs (#1361)
New SDKs and docs for the v1 release.
2025-03-25 15:45:07 -07:00
abelanger5
1f2096313d feat: v1 engine (#1318) 2025-03-11 14:57:13 -04:00