* re-add new testing harness
* add healthcheck port and pick random grpc port to listen on
* feat: parallel load tests and faster tests
* make parallelism = 5
* fix: lint
* add linter to pre
* fix: add back rampup fixes
* reduce matrix on PR, add matrix to pre-release step
* make load tests less likely to block
* make limit strategy group round robin
* uncomment lines
* test: improves testing harness for engine
* update CI test
* fix: race condition in test
* make tests more stable
* cleanup pub and sub buffers
* fix: goleak on rampup test
* feat: matrix tests for engine
* feat: initial work wiring up priorities
* fix: add default to default prio in the db
* feat: wire priority through api on wf creation
* feat: extend python test
* feat: priority for scheduled workflows
* feat: wire priority through python api
* feat: more wiring priority through the api
* feat: I think it works?
* feat: e2e test for priority
* it works!
* feat: expand tests for default priorities
* feat: e2e scheduling test
* fix: skip broken test for now
* fix: lint
* feat: add priority columns to cron and schedule ref tables
* feat: update inserts to include prio
* feat: wire up more apis
* feat: more wiring
* feat: wire up more rest api fields
* chore: cruft
* fix: more wiring
* fix: lint
* chore: gen + wire up priorities
* fix: retries
* fix: try changing fixture scope
* chore: bump version again
* feat: send priority with action payload
* fix: generate script
* Feat priority ts (#1518)
* feat: initial work wiring up priorities
* fix: add default to default prio in the db
* feat: wire priority through api on wf creation
* feat: extend python test
* feat: priority for scheduled workflows
* feat: wire priority through python api
* feat: more wiring priority through the api
* feat: I think it works?
* feat: e2e test for priority
* it works!
* feat: expand tests for default priorities
* feat: e2e scheduling test
* chore: minor version for priority
* fix: skip broken test for now
* fix: lint
* feat: add priority columns to cron and schedule ref tables
* feat: update inserts to include prio
* feat: wire up more apis
* feat: more wiring
* feat: wire up more rest api fields
* chore: cruft
* fix: more wiring
* fix: lint
* chore: gen + wire up priorities
* fix: increase timeout
* fix: retries
* fix: try changing fixture scope
* chore: generate
* fix: set schedule priority
* feat: priority
* fix: move priority to wf
* release: 1.2.0
* rm log
* fix: import
* fix: add priority to step
---------
Co-authored-by: mrkaye97 <mrkaye97@gmail.com>
* fix: add dummy runs to priority test to prevent race conditions
* fix: non-breaking field
* fix: gen
* feat: initial pass at docs
* feat: priority in go sdk
* feat: initial work on go example
* fix: doc examples
* fix: proofread
* chore: version
* feat: go sdk
* fix: lint
* fix: declarations and add back RunAsChild
* fix: child workflows
* fix: namespace
* fix: faster child workflows
* fix: sticky
* add back run as child
---------
Co-authored-by: Gabe Ruttner <gabriel.ruttner@gmail.com>
Co-authored-by: Alexander Belanger <alexander@hatchet.run>
* docs: update self-hosted defaults to use v1
* docs: durable execution
* rm dep
* lint: run black
* redundant readme
* more wording
* other small things
* isort
* clean up rabbit mq session stuff, add a quick ack and error processing for AddMessage
* bit more paranoid about getting stuck in chans
* first pass at locking the message to deal with the failed states better
* clean up the access to ready for the mq
* make sure we don't block sending this ack
* feat: add query to fetch upstream errors from db
* fix: return many
* feat: propagate errors through `input`
* fix: implement the method to get the errors out
* fix: query cleanup
* feat: rename errors
* fix: col names
* fix: key name in the json
* feat: add method to context to get failed step errors
* fix: add 👀
Co-authored-by: abelanger5 <belanger@sas.upenn.edu>
* feat: add error log if not errors
* fix: logger
* fix: simplify query
---------
Co-authored-by: abelanger5 <belanger@sas.upenn.edu>
* allow us to configure different repos
* make the struct contents public
* pass in config values to new log repo
* rename functions - possibly breaking changes so lets discuss
* make the logging backend configurable
* fix tests
* don't allow calls to WithAdditionalConfig
* cleanup
* replace sc with server
Co-authored-by: abelanger5 <belanger@sas.upenn.edu>
* rename sc to server
* add a LRU cache for the step run lookup
* lets not use an expirable cache and just use the regular one - we cannot close the go func in exirable
---------
Co-authored-by: abelanger5 <belanger@sas.upenn.edu>
* fix: make sure we never have more than maxRuns of a workflowRun even with other unfull groups, fix bug where inconsitent ordering of workflow runs allowed extra runs than maxRuns
* compile the comment
* lets error our in the test when we fail
* feat(go-sdk): cron and schedules API, minor fixes
* try to improve code block and docs
* revert pre-commit
* fix: generate
* fix: put overflow in right place
* remove branch specs
* make it so the bulk example succeeds
* make the bulk workflows work a little harder
* add some ordering to mitigate deadlocks
* fix: link step run parents bad query, improvements to locking
* add timed mutex and telemetry
* remove for update on cancel
---------
Co-authored-by: Sean Reilly <sean@hatchet.run>
Co-authored-by: Alexander Belanger <alexander@hatchet.run>
* feat(throughput): single process per queue
* fix data race
* fix: golint and data race on load test
* wrap up initial v2 scheduler
* fix: more debug logs and tighten channel logic/blocking sends
* improved casing on dispatcher and lease manager
* fix: data race on min id
* increase wait on load test, fix data race
* fix: trylock -> lock
* clean up queue when no longer in set
* fix: clean up cache on exit
* ensure cleanup is only called once
* address review comments
* progress commit of bulk inserts
* in_flight: Add changes to metering finish the bulk insert
* remove an attempt to overide enforce limits
* merge in PR fixes
* update docs to add in an additional section in the User guide to describe pushing single events and pushing multiple events
* run lint fix
---------
Co-authored-by: Sean Reilly <sean@hatchet.run>