Commit Graph

2448 Commits

Author SHA1 Message Date
dependabot[bot]
5ab4273cb2 chore(deps): bump k8s.io/client-go from 0.35.1 to 0.35.2 (#3130)
Bumps [k8s.io/client-go](https://github.com/kubernetes/client-go) from 0.35.1 to 0.35.2.
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/kubernetes/client-go/compare/v0.35.1...v0.35.2)

---
updated-dependencies:
- dependency-name: k8s.io/client-go
  dependency-version: 0.35.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-02 04:29:06 +00:00
Gabe Ruttner
5a79618824 chore: deprecate ts v0 (#2960)
* rip ts v0: keep only TypeScript SDK changes

Cherry-pick TypeScript changes from rip--ts-v0 onto main,
discarding all non-TS changes (Go, Python, proto, SQL, etc.)

Made-with: Cursor

* merge: main into branch

* chore: rm redundant examples

* fix: tests

* fix: tests

* tests: speed em up

* tests: unskip

* tests: add missing p1s

* version: bump to 1.14.0

* chore: generate

* fix: release version

* chore: generate

* chore: rm legacy examples

* tests: timeouts...

* chore: remove unused config

* refactor: minimize dependency on legacy client

* refactor: rename V1Worker to InternalWorker and update references

* chore: lint

* tests: one big worker

* chore: lint

* chore: generate and test fixture tweaks

* tests: debug logs

* tests: stable order

* fix: abortable sleep

* tests: log artifacts on CI failure

* tmp: tmate

* chore: lint

* test: remove tmate

* chore: generate

* tmate

* tmate alwasy

* fix: log level

* fix: casing

* chore: remove tmate

* chore: consistent naming

* fix: test

* test: skip flaky test

* fix: casing

* chore: gen

* chore: lint

* revert: dependency version changes
2026-03-01 16:06:56 -08:00
Erol
8d035d72ff fix: readme typo (#3126) 2026-02-28 22:01:58 -05:00
matt
ef67169388 [Python] Fix: Serialization error handling, add worker id to context (#3125)
* fix: raise on failing to serialize

* chore: version

* feat: add worker id to ctx

* chore: changelog
2026-02-28 10:29:17 -05:00
matt
9d42c08f0e Hotfix: More small tenant switching + z index issues (#3124)
* fix: make tenant switch button into a picker

* fix: improve ui, group by org

* fix: more problematic z indexes

* fix: more z index issues, remove standalone tenants
v0.79.12
2026-02-28 09:57:50 -05:00
Gabe Ruttner
8796d0ab7d chore: update dependencies for dependabot alerts (#3119)
* chore: update dependencies for dependabot alerts

* chore: bump main deps instead

* release: bump versions

* chore: bump gem

* chore: update hatchet-sdk to version 0.1.1 in Gemfile.lock
2026-02-28 06:48:15 -08:00
matt
5f9351ff06 fix: rm z index for action dialog (#3120) 2026-02-27 17:36:26 -05:00
Josh Duff
78e866c78f Feat: New "create organization" and "create tenant" interfaces (#3068)
* Tell eslint to ignore the generated code so that the npm run commands are usable

* Cleaning something I noticed while reading around

* An editorconfig so my editor knows when to use tabs and when to use spaces

* make it so you don't have to pass in unnecessary empty objects

* Two "new organization" pages – one for onboarding, one for after, both displaying the same form

* Fix a bug with asChild in the button component + make the "Create Organization" button a proper link

* the same form + save logic used in a "new organization" onboarding screen and a regular "new organization" screen

* not tested, but this tenant saver form looks like a reasonable starting place

* a "new tenant" modal that seems to work

* move minimumReleaseAge to a pnpm-specific config so npm doesn't complain at me when I reflexively type `npm run`

* automated unit tests for the frontend

* Rework the tenant+organization onboarding redirects, and use union types to try to make working with the organization in the app context more painless

* When onboarding, default the organization to the user's name

* isSaving doesn't need to be optional

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835696077

* wrap callback in useCallback

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835697163

* empty string is not the correct default

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835702156

* only set up the event listener once!

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835712324

* use tiny-invariant for assertions

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835707451

* [jedi hand move]

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2835700130

* try a mutation

* I thiiiiink this is about what I want

* Finish getting the user-universe provider up to snuff, implement it in a few places.

Also fix a bug caused by the fact that some pages that assumed you were authenticated were not underneath the authenticated route

* change appContext to pull from user universe rather than querying tenants + organizations itself

also, rename the organization/tenant hooks isLoading->isUserUniverseLoaded

* We want resetQueries, not invalidateQueries

invalidate sets the query to stale, but leaves the data around and leaves isSuccess = true

* Make the user universe query dependent on isCloudEnabled + get the query client from context

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854606886
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854611980
https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854614616

* get rid of an unpleasant `as`

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854620958

* fix a name that was too generic for what it was being used for

* Make the NewOrganizationSaverForm assertion message more useful

https://github.com/hatchet-dev/hatchet/pull/3068#discussion_r2854629289

* some embarrassing errors in the non-cloud flow

* fix: unwind pnpm changes

* Revert "fix: unwind pnpm changes"

This reverts commit 5df6a4b5d3.

* fix: add `packages` hack to pnpm-workspace files

* fix: shrink spacing

* fix: start improving styling of orgs page with tabs

* fix: start cleaning up UI

* fix: remove mobile views, nobody uses them

* fix: spacing, border

* fix: org edit button

* fix: remove invites tab

* fix: factor out columns

* login screen needs to clear any current user query errors before redirecting

otherwise it keeps trying to redirect you back to the login screen until the latest metadata request succeeds

* Fix some issues during login when switching between users

- we need to invalidate all the previous user's information when they log out so that it's not floating around in memory
- we need to validate the tenant id stored in localstorage before passing it along to the rest of the world
- to be safe, invalidate the user universe and start refetching it as soon as they log in, before we redirect to the authenticated route

* One more bit of explicit fetching that needs to happen

* After accepting a tenant invite, need to invalidate the user universe and re-fetch

Also, kill the listTenantMemberships query to force people to use the query that's wrapped up by the user universe

* Change the tenant-create e2e testto account for the UI changes

* It seems like Cypress was trying to navigate to the onboarding page too quickly for the test to pass on my machine

* Slightly better copy for the tenant label

* fix lint issues

* quote the glob paths?

* Disable running the tests in CI for now

* use the width settings that are most common across dialogs right now

* node 20 -> 24

* Need to manually specify node version apparently?

---------

Co-authored-by: mrkaye97 <mrkaye97@gmail.com>
v0.79.11
2026-02-27 13:14:00 -05:00
matt
4aa55df9dc [Python] Feat: Improved Serialization Performance, Context Getter (#3095)
* fix: typeadapter for serializing outputs

* fix: serialization factoring

* feat: wire up context

* feat: add current context getter

* fix: wire up ctxvar copy

* fix: circular import, part i

* fix: circular import, part ii

* chore: changelog

* fix: revert changes to example

* fix: explicit args

* fix: instrumentor

* fix: mode

* fix: sig for 3.14
2026-02-27 13:12:25 -05:00
dependabot[bot]
13503f3dae chore(deps): bump hatchet-sdk in /examples/python/quickstart (#3118)
Bumps hatchet-sdk from 1.26.0 to 1.26.2.

---
updated-dependencies:
- dependency-name: hatchet-sdk
  dependency-version: 1.26.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 04:24:41 +00:00
dependabot[bot]
8b0febaa86 chore(deps): bump github.com/oapi-codegen/runtime from 1.1.2 to 1.2.0 (#3117)
Bumps [github.com/oapi-codegen/runtime](https://github.com/oapi-codegen/runtime) from 1.1.2 to 1.2.0.
- [Release notes](https://github.com/oapi-codegen/runtime/releases)
- [Commits](https://github.com/oapi-codegen/runtime/compare/v1.1.2...v1.2.0)

---
updated-dependencies:
- dependency-name: github.com/oapi-codegen/runtime
  dependency-version: 1.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-27 04:23:52 +00:00
Josh Duff
68d33fee65 Fix: Modals should appear above the mobile sidebar (#3114) 2026-02-26 17:35:18 -05:00
Trevor Wilson
0a9e0dab40 feat(sdk): tenacity rest transport retry config (#3003)
* feat(python-sdk): add opt-in retries for REST transport errors (GET/DELETE)

* feat(python-sdk): make REST transport retries configurable via TenacityConfig

* docs(python-sdk): clarify transport retry methods exclude mutating verbs by default

* refactor(sdk): avoid parsing HTTP method from REST transport error message

- add http_method field to RestTransportError
- populate http_method when translating urllib3 transport exceptions
- use http_method for transport retry gating in tenacity utils
- update unit tests to cover the new structured method propagation

* fix(sdk): move REST transport http_method changes into apply_patches

* chore(python-sdk): bump version to 1.26.2 and update changelog

* refactor(python-sdk): type retry_transport_methods as HTTPMethod enum

* refactor(python-sdk): type retry_transport_methods as HTTPMethod enum

* fix(sdk): type rest transport http_method as HTTPMethod

- Update apply_patches to emit HTTPMethod typed http_method in generated REST transport exceptions
- Normalize method values via method.upper() when constructing HTTPMethod
- Simplify tenacity transport retry check to compare enums directly
- Update transport retry tests to use HTTPMethod enums
2026-02-26 16:18:45 -05:00
matt
deee6e213c fix: external ids (#3111) v0.79.10 2026-02-26 12:57:33 -05:00
Mohammed Nafees
ef2c01a499 Add ctx.WasSkipped helper to the Go SDK (#3094)
* introduce ctx.WasSkipped just like Py SDK

* fix lint and example
v0.79.9
2026-02-26 17:56:45 +01:00
matt
acc199a65c chore: skip flaky tests (#3110) 2026-02-26 11:29:15 -05:00
Trevor Wilson
b27d8f3488 feat(sdk): add REST 429 retry support (#3091)
* feat(python-sdk): add opt-in retry for HTTP 429 responses

- Introduce TooManyRequestsException and map HTTP 429 in ApiException.from_response()
- Add retry_429 flag to TenacityConfig (default: false)
- Update tenacity retry predicate to accept config and retry 429 only when enabled
- Add unit tests covering 429 mapping + retry behavior and keep existing retry semantics intact

Refs: #2872

* feat(python-sdk): add opt-in retry support for REST 429 responses

Adds TooManyRequestsException (HTTP 429) mapping for the REST client and
enables 429 to be retried when configured via TenacityConfig.

This aligns REST retry semantics more closely with gRPC, where
RESOURCE_EXHAUSTED is retried.

Refs discussion in #2872.

* feat(sdk): add opt-in retry for REST HTTP 429

* chore(sdk): patch bump to 1.26.1 and update changelog entry
2026-02-26 11:00:18 -05:00
dependabot[bot]
204cc36103 chore(deps): bump hatchet-sdk in /examples/python/quickstart (#3109)
Bumps hatchet-sdk from 1.25.2 to 1.26.0.

---
updated-dependencies:
- dependency-name: hatchet-sdk
  dependency-version: 1.26.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
v0.79.8
2026-02-26 04:24:16 +00:00
dependabot[bot]
9b66c34eac chore(deps): bump actions/setup-go from 6.2.0 to 6.3.0 (#3108)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6.2.0 to 6.3.0.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](7a3fe6cf4c...4b73464bb3)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 04:24:00 +00:00
Gabe Ruttner
faa3fb8504 feat: add credit balance query and display in subscription component (#3107)
* feat: add credit balance query and display in subscription component

* fix: only show if > 0

* chore: gen

* chore: review
2026-02-25 15:02:51 -08:00
Mohammed Nafees
fa695fc8ca non blocking ctx.Log with meaningful retries (#3106) v0.79.7 2026-02-25 18:55:17 +01:00
matt
5e672d0514 [Go] Feat: Details Getter (#3105)
* feat: add details getter

* fix: naming

* fix: structs
v0.79.6
2026-02-25 12:11:19 -05:00
github-actions[bot]
4499e9418c chore: regenerate examples (#3104)
Co-authored-by: GitHub Action <action@github.com>
2026-02-25 09:00:23 -05:00
github-actions[bot]
c5afa138c1 chore: regenerate examples (#3098)
Co-authored-by: GitHub Action <action@github.com>
2026-02-25 08:55:23 -05:00
Stefan
51c79ee45a Fix type syntax for dependencies (and tests on main) (#3102)
* fix: type syntax for dependencies for python version 3.13 and 3.12

* chore: changelog
2026-02-25 08:55:04 -05:00
dependabot[bot]
f74266c2b1 chore(deps): bump github.com/getsentry/sentry-go from 0.42.0 to 0.43.0 (#3100)
Bumps [github.com/getsentry/sentry-go](https://github.com/getsentry/sentry-go) from 0.42.0 to 0.43.0.
- [Release notes](https://github.com/getsentry/sentry-go/releases)
- [Changelog](https://github.com/getsentry/sentry-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-go/compare/v0.42.0...v0.43.0)

---
updated-dependencies:
- dependency-name: github.com/getsentry/sentry-go
  dependency-version: 0.43.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-25 04:24:30 +00:00
dependabot[bot]
c64d9b5795 chore(deps): bump google.golang.org/api from 0.268.0 to 0.269.0 (#3099)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.268.0 to 0.269.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.268.0...v0.269.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.269.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-25 04:24:28 +00:00
Stefan
1f15da6d43 Fix: make python 3.12 type X = ... syntax work with dependency injection (#2951)
* fix: work with type syntax

* fix: one more instance of asyncio.iscoroutinefunction

* test: add tests for type alias with type syntax

* chore: remove type ignores

* chore: changelog + bump
2026-02-24 14:28:15 -08:00
Mohammed Nafees
f3ec9597a6 Add env vars for max conn lifetime and idle time for pgx (#3096)
* add env vars for max conn lifetime and idele time for pgx

* add doc
v0.79.5
2026-02-24 21:54:09 +01:00
Mohammed Nafees
444a335c18 Fix cross-strategy slot contamination in chained concurrency gates (#3089)
* filter properly based on strategy ids

* remove remnants

* add concurency integration test

* more tests
v0.79.4
2026-02-24 12:54:04 +01:00
dependabot[bot]
fa89f0fade chore(deps): bump google.golang.org/api from 0.267.0 to 0.268.0 (#3093)
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client) from 0.267.0 to 0.268.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.267.0...v0.268.0)

---
updated-dependencies:
- dependency-name: google.golang.org/api
  dependency-version: 0.268.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-24 04:23:56 +00:00
Mohammed Nafees
9a063f198d Add missing primary key to "WorkflowTriggerCronRef" (#3086)
* add constraint and migration

* comment
2026-02-23 21:05:28 +01:00
Mohammed Nafees
44069cef89 make sure to use 60 seconds timeout for PutWorkflowVersion (#3085) v0.79.3 2026-02-23 16:20:31 +01:00
github-actions[bot]
47f34f2587 chore: regenerate examples (#3084)
Co-authored-by: GitHub Action <action@github.com>
2026-02-23 14:48:09 +01:00
Greg Furman
700bbcd485 chore(ci): Replace GH action tag with commit SHA (#3060) 2026-02-23 14:37:54 +01:00
Gabe Ruttner
a4d02e3924 docs: experimental flag (#3082) 2026-02-23 04:29:05 -08:00
Gabe Ruttner
de68e1375a Feat: typescript middleware (#3066)
* feat: typed middleware

* feat: chaining

* feat: typed global input

* feat: typed global output

* feat: inferred types from middleware

* feat: with chaining

* docs: initial pass

* feat: implicit chaining

* fix: implicit spread

* docs: separate examples

* refactor: rename middleware hooks from `pre`/`post` to `before`/`after` for consistency

* fix: search

* chore: lint

* fix: tests

* Update frontend/docs/pages/home/middleware.mdx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* release: 1.13.0

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-23 04:16:00 -08:00
dependabot[bot]
c97b967e2b chore(deps): bump github.com/slack-go/slack from 0.17.3 to 0.18.0 (#3079)
Bumps [github.com/slack-go/slack](https://github.com/slack-go/slack) from 0.17.3 to 0.18.0.
- [Release notes](https://github.com/slack-go/slack/releases)
- [Changelog](https://github.com/slack-go/slack/blob/master/CHANGELOG.md)
- [Commits](https://github.com/slack-go/slack/compare/v0.17.3...v0.18.0)

---
updated-dependencies:
- dependency-name: github.com/slack-go/slack
  dependency-version: 0.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-23 04:35:34 +00:00
dependabot[bot]
c76fa792de chore(deps): bump github.com/pressly/goose/v3 from 3.26.0 to 3.27.0 (#3077)
Bumps [github.com/pressly/goose/v3](https://github.com/pressly/goose) from 3.26.0 to 3.27.0.
- [Release notes](https://github.com/pressly/goose/releases)
- [Changelog](https://github.com/pressly/goose/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pressly/goose/compare/v3.26.0...v3.27.0)

---
updated-dependencies:
- dependency-name: github.com/pressly/goose/v3
  dependency-version: 3.27.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-23 04:35:20 +00:00
dependabot[bot]
d6f53a35b0 chore(deps): bump github.com/labstack/echo/v4 from 4.15.0 to 4.15.1 (#3076)
Bumps [github.com/labstack/echo/v4](https://github.com/labstack/echo) from 4.15.0 to 4.15.1.
- [Release notes](https://github.com/labstack/echo/releases)
- [Changelog](https://github.com/labstack/echo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/labstack/echo/compare/v4.15.0...v4.15.1)

---
updated-dependencies:
- dependency-name: github.com/labstack/echo/v4
  dependency-version: 4.15.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-23 04:34:48 +00:00
matt
df9e86081a Fix: Move event log to a tab on the task run detail (#3067)
* fix: separate tab for activity on run detail

* fix: output payload bug

* fix: couple more uuid bugs

* fix: set var

* fix: add event type check
v0.79.2
2026-02-22 19:02:22 -08:00
Gabe Ruttner
dd48ee136a feat(agents): add new agent instruction tools (#3059) v0.79.1 2026-02-21 08:49:28 -08:00
matt
30c6209fbc Fix: Expand long logs on click instead of on hover (#3069)
* fix: log expand on click

* fix: only show pointer on lines that will be truncated
2026-02-20 23:08:22 -05:00
matt
12c5f4cef9 fix: input in transformer (#3070) 2026-02-20 23:07:43 -05:00
abelanger5
899448d043 feat(cli): runs commands (#3058)
New subcommands for the Hatchet CLI, including `hatchet runs|webhooks|rate-limits|workflows|workers|crons|scheduled`
v0.79.0
2026-02-19 21:33:54 -08:00
dependabot[bot]
9c13ce9e36 chore(deps): bump hatchet-sdk in /examples/python/quickstart (#3063)
Bumps hatchet-sdk from 1.25.0 to 1.25.2.

---
updated-dependencies:
- dependency-name: hatchet-sdk
  dependency-version: 1.25.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-20 04:24:35 +00:00
Gabe Ruttner
8c9fa7fd82 feat: add migration for worker slot config index (#3062) v0.78.30 2026-02-19 12:25:36 -08:00
matt
0cce1cfc04 Revert: Cancellation token Python changes (#3061)
* revert: cancellation token changes

* fix: changelog

* fix: add note on yank
2026-02-19 12:41:43 -05:00
Mohammed Nafees
1361047d11 Add upgrading and downgrading guide to self-hosting docs (#3044)
* new instance upgrade downgrade doc

* fix vercel build

* PR comments

* fix services

* no best practices section
2026-02-19 15:41:56 +01:00
Gabe Ruttner
981c004f58 fix: restore ctx.taskRunId (#3056) v0.78.29 2026-02-18 14:54:23 -08:00