Skip to content

v0.30.dev14

Choose a tag to compare

@MOZGIII MOZGIII released this 07 Oct 18:41
· 364 commits to main since this release

What's Changed

  • Switch to a more robust CaptureRuntimeView design by @MOZGIII in #535
  • Bump rustls and some of its deps by @MOZGIII in #702
  • Macro-powered interpreter composition by @MOZGIII in #536
  • Apply useful changes from the cancelled operations refactor by @MOZGIII in #539
  • Generalize VM values over flavors and make a python flavor by @MOZGIII in #544
  • Make workflow arguments opaque bytes at the protocol level by @MOZGIII in #559
  • Improve the RoundTripMetrics composition by @MOZGIII in #560
  • Simplify the worker-core and related API surface by @MOZGIII in #561
  • Rework worker protocol by @MOZGIII in #562
  • Eliminate JSON intermediary conversions for values by @MOZGIII in #563
  • Rename the WorkflowArgumentValue to just Value (and the rest accordigly) by @MOZGIII in #564
  • Cleaned up the value-related conversion machinery by @MOZGIII in #565
  • Rename vm-value-convert-proto to vm-value-python-convert-proto by @MOZGIII in #566
  • Split and rework the worker-core APIs at the rust side by @MOZGIII in #567
  • Make the action execution loss explicit at the worker API by @MOZGIII in #568
  • Distinct error states at the worker-message-protocol by @MOZGIII in #701
  • Avoid re-exports of the PendingPromiseError by @MOZGIII in #569
  • Adjust and cleanup the conversion API surface by @MOZGIII in #570
  • Fix tonic build composition by @MOZGIII in #553
  • Explicitly propagate action loss though the action completions reconciler by @MOZGIII in #571
  • Make WorkflowOutcome shape explicit at the proto level by @MOZGIII in #572
  • Define proper protocol-level boundaries for value trees by @MOZGIII in #573
  • Generalize the action-runtime-convert around the actual value type by @MOZGIII in #574
  • Remove the webapp for the rework by @MOZGIII in #621
  • Metrics to track the workers by @MOZGIII in #622
  • Core HTTP API machinery by @MOZGIII in #624
  • Add lossy-batcher by @MOZGIII in #625
  • Add retention-sweeper by @MOZGIII in #626
  • Add sqlx-postgres-schema-pool by @MOZGIII in #627
  • Proper node id type by @MOZGIII in #628
  • Essential metrics subsystem core parts by @MOZGIII in #629
  • Add observability-store-postgres (and -migrations) by @MOZGIII in #630
  • Allow configuration of max connections for the main db pool by @MOZGIII in #631
  • Observability core and essential-metrics config by @MOZGIII in #632
  • Wire the observability core and essential-metrics pipeline through vertically by @MOZGIII in #633
  • Add counter-rate by @MOZGIII in #634
  • Port the soak harness to essential metrics by @MOZGIII in #635
  • Remove the worker-status pipeline in favor of essential metrics by @MOZGIII in #636
  • Add http-api-types by @MOZGIII in #659
  • Add api-essential-metrics-http by @MOZGIII in #637
  • Serve the observability API from start-workers by @MOZGIII in #638
  • Serve the HTTP interface from soak runs by @MOZGIII in #639
  • Serve the HTTP interface from the example app by @MOZGIII in #640
  • Serve Swagger UI from the API by @MOZGIII in #641
  • Extend the prometheus seconds buckets down to microseconds by @MOZGIII in #642
  • Add node-sequence by @MOZGIII in #643
  • Add the observability-events core and payload by @MOZGIII in #644
  • Add cursor-core by @MOZGIII in #645
  • Add query-limit by @MOZGIII in #656
  • Add the observability-events backend traits by @MOZGIII in #646
  • Add observability-events-emitter and -compat by @MOZGIII in #647
  • Implement observability events backends at observability-store-postgres by @MOZGIII in #648
  • Add the page, the cursor and the limit to http-api-types by @MOZGIII in #660
  • Add api-observability-events-http-types by @MOZGIII in #661
  • Add timestamp crate by @MOZGIII in #703
  • Add api-observability-events-http by @MOZGIII in #649
  • Wire the observability-events pipeline through vertically by @MOZGIII in #650
  • VM driver hooks machinery by @MOZGIII in #651
  • Feed the observability events from the VM driver hooks by @MOZGIII in #652
  • Route the VM driver run logging through the hooks by @MOZGIII in #653
  • Trace every transient VM driver run via the hooks by @MOZGIII in #723
  • Per-VM timeline of the observability events by @MOZGIII in #654
  • Observability state API and the instance view by @MOZGIII in #655
  • Reword the scheduler-core crate doc by @MOZGIII in #657
  • Separate read pool for observability database by @MOZGIII in #662
  • Set a statement timeout on the observability pools by @MOZGIII in #663
  • Sweep the observability retention in chunks by @MOZGIII in #664
  • Record the snapshot_persisted events only when asked by @MOZGIII in #665
  • Carry the observability events' drops in the essential metrics by @MOZGIII in #724
  • Bring the observability subsystem up under the benchmark on request by @MOZGIII in #666
  • Take the essential-metrics series range as the timestamp proxy by @MOZGIII in #721
  • Take the essential-metrics series range as the timestamp proxy by @MOZGIII in #752
  • List the observability knobs in the start-workers configuration doc by @MOZGIII in #731
  • Better clarify the WAYMARK_OBSERVABILITY_READ_DATABASE_URL purpose in the docs by @MOZGIII in #753
  • Add os-shutdown-requests crate by @MOZGIII in #668
  • Fix soak harness Ctrl+C handling by @MOZGIII in #667
  • Port start-workers shutdown signals to os-shutdown-requests by @MOZGIII in #671
  • Add task-supervisor crate by @MOZGIII in #672
  • Supervise every start-workers task from main by @MOZGIII in #673
  • Rework the worker pool initialization and error surface by @MOZGIII in #674
  • Drop the transient worker pool bringup's caller reminder by @MOZGIII in #728
  • Act once per worker generation on recycle reports by @MOZGIII in #720
  • Add the managed-spawner crates by @MOZGIII in #675
  • Switch the secondary binaries to task-supervisor by @MOZGIII in #676
  • Keep the execution driver loop alive while the VM drivers execute by @MOZGIII in #677
  • Run the inline worker pool's actions from a pool loop that waits for them by @MOZGIII in #678
  • Rework the managed-process API around observing the child's exit by @MOZGIII in #679
  • Stop the soak worker gracefully through managed-process by @MOZGIII in #680
  • Fix the worker bridge bringup's returned-address doc by @MOZGIII in #681
  • Drain secondary binaries' supervisors on every exit by @MOZGIII in #682
  • Make workload-pinning-manager's outcome an error by @MOZGIII in #683
  • Add an error converter to fn-main-common by @MOZGIII in #684
  • Route the binaries' supervisors through managed-spawner-supervised by @MOZGIII in #685
  • Make the state sweeper a future at execution-bringup by @MOZGIII in #686
  • Bring everything up through the managed spawner by @MOZGIII in #687
  • Correct execution-bringup cancellation token application by @MOZGIII in #688
  • Bring the Prometheus exporter up through the managed spawner by @MOZGIII in #689
  • Bring the tokio metrics reporters up through the managed spawner by @MOZGIII in #690
  • Make the transient execution's response stream own its per-request tasks by @MOZGIII in #691
  • Document what lossy means for the lossy batcher by @MOZGIII in #692
  • Route the batchers' shutdown through the force shutdown token by @MOZGIII in #693
  • Make the lossy batchers end on their last handle by @MOZGIII in #694
  • Stop the state-manager sweeper loop only when its state is gone by @MOZGIII in #695
  • Stop the demand registry bookkeeping and the ackers when their registrars and handles are gone by @MOZGIII in #696
  • Report the worker pool shutdown from poll_complete as None instead of an error by @MOZGIII in #697
  • Split the worker pool handle into requests and completions sides by @MOZGIII in #698
  • Stop the lock renewal loop as soon as its channel is closed and nothing is tracked by @MOZGIII in #699
  • End the lock renewal with the worker pool by @MOZGIII in #700
  • Add schedules to the example app's dev reset by @MOZGIII in #705
  • Declare the typing-extensions dependency by @MOZGIII in #706
  • Declare exactly the tonic and tokio features the bridge crates use by @MOZGIII in #707
  • Gate rustdoc warnings in the extended Rust lint by @MOZGIII in #708
  • Document the server bringups' spawned tasks by @MOZGIII in #709
  • Replace RoundTripMetrics with ActionRoundTrip in the worker message protocol by @MOZGIII in #710
  • Drop the worker's inert cleanup timeout by @MOZGIII in #711
  • Bring the docs in line with the current knobs and helpers by @MOZGIII in #712
  • Raise a typed error when a workflow fails by @MOZGIII in #713
  • Mark the exception class hierarchy as input to the planned base-class matching by @MOZGIII in #765
  • Run the binaries' supervisors on the report's Error form by @MOZGIII in #714
  • Add fn-main-lifecycle crate by @MOZGIII in #715
  • Run the start-workers lifecycle through fn-main-lifecycle by @MOZGIII in #716
  • Take a shutdown future in the worker pool loop by @MOZGIII in #717
  • Relax the pinning error bounds at the execution bringup by @MOZGIII in #718
  • Run the Rust tests with all features by @MOZGIII in #722
  • Bring the AGENTS.md trait-method and metrics rules up to date by @MOZGIII in #729
  • Log level tweaks by @MOZGIII in #730
  • Mark the soak harness's observability connect for the database setup rework by @MOZGIII in #732
  • Add error-fmt crate by @MOZGIII in #754
  • Inline the sources in the library error messages by @MOZGIII in #733
  • Make out-of-range worker indices a panic in the process pool by @MOZGIII in #735
  • Drop the unused default features of metrics-exporter-prometheus by @MOZGIII in #736
  • VM driver hooks: a unifying trait, exposed at the transient bringups by @MOZGIII in #737
  • Take the task monitor as an input of the tokio metrics bringup by @MOZGIII in #738
  • Drop the unused googleapis-common-protos dependency by @MOZGIII in #739
  • Run the coverage suite once for both reports by @MOZGIII in #740
  • Document the observability store as one schema by @MOZGIII in #741
  • Run the lossy batcher's flushers as tasks by @MOZGIII in #742
  • Derive the action runtime metadata decode errors with thiserror by @MOZGIII in #743
  • Log each shutdown request as one line in start-workers by @MOZGIII in #744
  • Stop the durable integration run at the first early task end by @MOZGIII in #745
  • Declare exactly the tokio features the remote worker pool uses by @MOZGIII in #746
  • Align the transient stream missing-result status with the sibling messages by @MOZGIII in #747
  • Reflow two ragged doc comments by @MOZGIII in #748
  • Correct the lossy batcher's sharing doc and swapchain closers list by @MOZGIII in #749
  • Take the README wording for the max concurrent instances knob by @MOZGIII in #750
  • Document the worker remote bringup crates and their start error by @MOZGIII in #751
  • Render the soak harness's database wait error with its optional source by @MOZGIII in #755
  • Skip the lock renewal heartbeats a slow renewal held up by @MOZGIII in #756
  • Declare exactly the tokio features the worker process uses by @MOZGIII in #757
  • Sweep the runloop term out of the guides, scope the instances cap per process and name the HTTP variables by @MOZGIII in #758
  • Truncate a timedelta timeout once, after adding up its keywords by @MOZGIII in #762
  • Document the retry policy as the runtime enforces it by @MOZGIII in #761
  • Delete the example app's orphan uv.lock by @MOZGIII in #759
  • Derive IdDecodeError with thiserror by @MOZGIII in #760
  • Log per-workflow, per-schedule and per-worker events at debug level by @MOZGIII in #763
  • Update sqlx to 0.9 and switch to a git rev by @MOZGIII in #767
  • Build and embed a hello-world SPA in the HTTP server by @piercefreeman in #670
  • Redesign the observability webapp and wire it to the API by @piercefreeman in #704
  • Read the PyPI readme from the shared README at build time by @MOZGIII in #777

Full Changelog: v0.30.dev8...v0.30.dev14