forked from goodboy/tractor
Compare commits
merge into: jc211:master
jc211:runtime_to_msgspec
jc211:multihost_exs
jc211:aio_abandons
jc211:msg_codecs
jc211:old_msg_types
jc211:asyncio_debug_mode
jc211:pause_from_sync_w_greenback
jc211:mv_to_new_trio_py3.11
jc211:modden_spawn_from_client_req
jc211:multihomed
jc211:dereg_on_oserror
jc211:asyncio_debugger_support
jc211:shm_apis
jc211:ctx_cancel_semantics_and_overruns
jc211:oco_supervisor_prototype
jc211:msgtypes
jc211:master
jc211:switch_to_pdbp
jc211:proper_breakpoint_hooking
jc211:drop_proc_actxmngr
jc211:ctx_result_consumption
jc211:readme_touchups
jc211:ipython_integration
jc211:breceiver_internals
jc211:piker_pin
jc211:ipc_failure_while_streaming
jc211:deprecate_arbiter_addr
jc211:prompt_on_ctrlc
jc211:dun_unset_current_actor
jc211:ipc_failwhilestream_backup
jc211:macos_in_ci
jc211:harden_cluster_tests
jc211:eg_backup
jc211:exceptiongroups
jc211:egs_with_ctx_res_consumption
jc211:debug_lock_blocking
jc211:callable_key_maybe_open_context
jc211:spawn_backend_table
jc211:pin_pre_trio_0.22
jc211:pytest_report_workaround
jc211:lifetime_stack_tests
jc211:we_bein_all_matchy
jc211:debug_event_guard
jc211:disable_win_ci
jc211:alpha5
jc211:signint_saviour
jc211:sigintsaviour_citesthackin
jc211:sigintsaviour_ci_worked
jc211:aio_error_propagation
jc211:drop_msgpack
jc211:310_windows
jc211:ci_sdist_install
jc211:include_readme
jc211:310_plus
jc211:name_query
jc211:sort_subs_results_infected_aio
jc211:aio_explicit_task_cancels
jc211:fence_mp
jc211:sigint_ignore_in_pdb_repl
jc211:sigint2
jc211:msgpack_lists_by_default
jc211:nspaths
jc211:experimental_subpkg
jc211:maybe_cancel_the_cancel_
jc211:moar_timeoutz
jc211:drop_old_nooz_files
jc211:raise_runinactor_error
jc211:win_ci_timeout
jc211:alpha4
jc211:infect_asyncio
jc211:expected_ctx_cancelled
jc211:new_mypy
jc211:context_caching
jc211:end_of_channel_fixes
jc211:agpl_commit_msg_fix
jc211:agpl
jc211:stricter_context_starting
jc211:acked_backup
jc211:faster_daemon_cancels
jc211:early_deth_fixes
jc211:clusters_and_hot_tips
jc211:alpha3
jc211:pubsub_startup_response_msg
jc211:iaio_backup
jc211:trionics
jc211:graceful_gather
jc211:246_facepalm_backup
jc211:patch-async-enter-all
jc211:immediate_remote_cancels
jc211:less_logging
jc211:zombie_lord_infinite
jc211:optional_msgspec_support
jc211:fix_kbi_in_ctx_block
jc211:logo_tweaks
jc211:use_trio_on_win
jc211:alpha2
jc211:msgspec_infect_asyncio
jc211:live_on_air_from_tokio
jc211:tokio_backup
jc211:debugger_test_tweaks
jc211:fix_news_links
jc211:wats_da_nooz
jc211:ctx_debugger
jc211:bi_streaming_no_debugger_stuff
jc211:round_2_ci_windows
jc211:CI_increment_for_windows_bidirstreaming
jc211:ctx_debugger_from_hardening
jc211:infect_asyncio_backup
jc211:debugger_hardening
jc211:bi_streaming
jc211:transport_cleaning
jc211:context_finesse
jc211:cf_backup
jc211:db_backup
jc211:pre_bad_close
jc211:stdstream_clobber_fix
jc211:bistream_backup
jc211:transport_hardening
jc211:msgspec_not_fucked
jc211:try_msgspec
jc211:prehardkill
jc211:windows_bi_streaming
jc211:docs_revamp
jc211:new_docs_polish
jc211:wip_fix_asyncio_gen_streaming
jc211:drop_run
jc211:mp_teardown_hardening
jc211:stream_contexts
jc211:drop_sync_funcs
jc211:pub_connect_msg
jc211:sync_cancel
jc211:stream_clones
jc211:first_pypi_release
jc211:single_func_example
jc211:readme_pump
jc211:kinda_drop_run
jc211:mp_hang_search
jc211:eg_worker_poolz
jc211:sync_breakpoint
jc211:actor_state_via_messages
jc211:we_aint_got_zombie_shields
jc211:deprecate_rpcmodpaths
jc211:implicit_runtime
jc211:drop_tractor_run
jc211:py3.9
jc211:denoise_logging
jc211:func_refs_always
jc211:fix_debug_tests_in_ci_again
jc211:stream_channel_shield
jc211:pdb_madness
jc211:advanced_debugger_testing
jc211:clean_log_header
jc211:debug_refine
jc211:debug_refinements
jc211:drop_warn
jc211:multiproc_debug
jc211:debugger_on_windows
jc211:bug_in_debug
jc211:debug_tests
jc211:native_debugging
jc211:matrix
jc211:dereg_on_channel_aclose
jc211:ensure_deregister
jc211:start_up_sequence_trickery
jc211:fix_win_ci_again
jc211:stin_char_relay
jc211:flaky_tests
jc211:drop_cloudpickle
jc211:reorg_entry_points
jc211:drop-trip-update-trio
jc211:init_sphinx_docs
jc211:example_tests
jc211:implicit_rpc
jc211:fix_examples_in_docs
jc211:try_trip
jc211:log_task_context
jc211:drop_event_clear
jc211:more_thorough_super_tests
jc211:pip_ci_fix
jc211:windows_support
jc211:rename_forkserver_mod
jc211:user_update
jc211:win_ci
jc211:stream_functions
jc211:propagate_loglevel
jc211:ipc_iternals_renaming
jc211:close_mem_chans
jc211:docs_example_fixes
jc211:spawn_method_support
jc211:trio_memchans
jc211:contexts
jc211:remote_module_errors
jc211:remote_task_cancelling
jc211:fix_46
jc211:loglevel_to_tractor_tests
jc211:expose_tractor_test
jc211:improved_errors
jc211:self_register
jc211:multi_program_tests
jc211:tests_reorg
jc211:type_annotations
jc211:py3.7_tweaks
jc211:reliable_cancel_tests
jc211:attrs_it_up
jc211:wait_for_actor
jc211:draft_readme
jc211:init_docs
jc211:reg_with_uid
jc211:forkserver_singleton
jc211:drop_main_kwarg
jc211:asyncgen_closing_fix
goodboy:hilevel_serman
goodboy:aio_abandons
goodboy:multihost_exs
goodboy:runtime_to_msgspec
goodboy:msg_codecs
goodboy:old_msg_types
goodboy:asyncio_debug_mode
goodboy:pause_from_sync_w_greenback
goodboy:mv_to_new_trio_py3.11
goodboy:modden_spawn_from_client_req
goodboy:multihomed
goodboy:dereg_on_oserror
goodboy:asyncio_debugger_support
goodboy:shm_apis
goodboy:ctx_cancel_semantics_and_overruns
goodboy:oco_supervisor_prototype
goodboy:msgtypes
goodboy:master
goodboy:switch_to_pdbp
goodboy:proper_breakpoint_hooking
goodboy:drop_proc_actxmngr
goodboy:ctx_result_consumption
goodboy:readme_touchups
goodboy:ipython_integration
goodboy:breceiver_internals
goodboy:piker_pin
goodboy:ipc_failure_while_streaming
goodboy:deprecate_arbiter_addr
goodboy:prompt_on_ctrlc
goodboy:dun_unset_current_actor
goodboy:ipc_failwhilestream_backup
goodboy:macos_in_ci
goodboy:harden_cluster_tests
goodboy:eg_backup
goodboy:exceptiongroups
goodboy:egs_with_ctx_res_consumption
goodboy:debug_lock_blocking
goodboy:callable_key_maybe_open_context
goodboy:spawn_backend_table
goodboy:pin_pre_trio_0.22
goodboy:pytest_report_workaround
goodboy:lifetime_stack_tests
goodboy:we_bein_all_matchy
goodboy:debug_event_guard
goodboy:disable_win_ci
goodboy:alpha5
goodboy:signint_saviour
goodboy:sigintsaviour_citesthackin
goodboy:sigintsaviour_ci_worked
goodboy:aio_error_propagation
goodboy:drop_msgpack
goodboy:310_windows
goodboy:ci_sdist_install
goodboy:include_readme
goodboy:310_plus
goodboy:name_query
goodboy:sort_subs_results_infected_aio
goodboy:aio_explicit_task_cancels
goodboy:fence_mp
goodboy:sigint_ignore_in_pdb_repl
goodboy:sigint2
goodboy:msgpack_lists_by_default
goodboy:nspaths
goodboy:experimental_subpkg
goodboy:maybe_cancel_the_cancel_
goodboy:moar_timeoutz
goodboy:drop_old_nooz_files
goodboy:raise_runinactor_error
goodboy:win_ci_timeout
goodboy:alpha4
goodboy:infect_asyncio
goodboy:expected_ctx_cancelled
goodboy:new_mypy
goodboy:context_caching
goodboy:end_of_channel_fixes
goodboy:agpl_commit_msg_fix
goodboy:agpl
goodboy:stricter_context_starting
goodboy:acked_backup
goodboy:faster_daemon_cancels
goodboy:early_deth_fixes
goodboy:clusters_and_hot_tips
goodboy:alpha3
goodboy:pubsub_startup_response_msg
goodboy:iaio_backup
goodboy:trionics
goodboy:graceful_gather
goodboy:246_facepalm_backup
goodboy:patch-async-enter-all
goodboy:immediate_remote_cancels
goodboy:less_logging
goodboy:zombie_lord_infinite
goodboy:optional_msgspec_support
goodboy:fix_kbi_in_ctx_block
goodboy:logo_tweaks
goodboy:use_trio_on_win
goodboy:alpha2
goodboy:msgspec_infect_asyncio
goodboy:live_on_air_from_tokio
goodboy:tokio_backup
goodboy:debugger_test_tweaks
goodboy:fix_news_links
goodboy:wats_da_nooz
goodboy:ctx_debugger
goodboy:bi_streaming_no_debugger_stuff
goodboy:round_2_ci_windows
goodboy:CI_increment_for_windows_bidirstreaming
goodboy:ctx_debugger_from_hardening
goodboy:infect_asyncio_backup
goodboy:debugger_hardening
goodboy:bi_streaming
goodboy:transport_cleaning
goodboy:context_finesse
goodboy:cf_backup
goodboy:db_backup
goodboy:pre_bad_close
goodboy:stdstream_clobber_fix
goodboy:bistream_backup
goodboy:transport_hardening
goodboy:msgspec_not_fucked
goodboy:try_msgspec
goodboy:prehardkill
goodboy:windows_bi_streaming
goodboy:docs_revamp
goodboy:new_docs_polish
goodboy:wip_fix_asyncio_gen_streaming
goodboy:drop_run
goodboy:mp_teardown_hardening
goodboy:stream_contexts
goodboy:drop_sync_funcs
goodboy:pub_connect_msg
goodboy:sync_cancel
goodboy:stream_clones
goodboy:first_pypi_release
goodboy:single_func_example
goodboy:readme_pump
goodboy:kinda_drop_run
goodboy:mp_hang_search
goodboy:eg_worker_poolz
goodboy:sync_breakpoint
goodboy:actor_state_via_messages
goodboy:we_aint_got_zombie_shields
goodboy:deprecate_rpcmodpaths
goodboy:implicit_runtime
goodboy:drop_tractor_run
goodboy:py3.9
goodboy:denoise_logging
goodboy:func_refs_always
goodboy:fix_debug_tests_in_ci_again
goodboy:stream_channel_shield
goodboy:pdb_madness
goodboy:advanced_debugger_testing
goodboy:clean_log_header
goodboy:debug_refine
goodboy:debug_refinements
goodboy:drop_warn
goodboy:multiproc_debug
goodboy:debugger_on_windows
goodboy:bug_in_debug
goodboy:debug_tests
goodboy:native_debugging
goodboy:matrix
goodboy:dereg_on_channel_aclose
goodboy:ensure_deregister
goodboy:start_up_sequence_trickery
goodboy:fix_win_ci_again
goodboy:stin_char_relay
goodboy:flaky_tests
goodboy:drop_cloudpickle
goodboy:reorg_entry_points
goodboy:drop-trip-update-trio
goodboy:init_sphinx_docs
goodboy:example_tests
goodboy:implicit_rpc
goodboy:fix_examples_in_docs
goodboy:try_trip
goodboy:log_task_context
goodboy:drop_event_clear
goodboy:more_thorough_super_tests
goodboy:pip_ci_fix
goodboy:windows_support
goodboy:rename_forkserver_mod
goodboy:user_update
goodboy:win_ci
goodboy:stream_functions
goodboy:propagate_loglevel
goodboy:ipc_iternals_renaming
goodboy:close_mem_chans
goodboy:docs_example_fixes
goodboy:spawn_method_support
goodboy:trio_memchans
goodboy:contexts
goodboy:remote_module_errors
goodboy:remote_task_cancelling
goodboy:fix_46
goodboy:loglevel_to_tractor_tests
goodboy:expose_tractor_test
goodboy:improved_errors
goodboy:self_register
goodboy:multi_program_tests
goodboy:tests_reorg
goodboy:type_annotations
goodboy:py3.7_tweaks
goodboy:reliable_cancel_tests
goodboy:attrs_it_up
goodboy:wait_for_actor
goodboy:draft_readme
goodboy:init_docs
goodboy:reg_with_uid
goodboy:forkserver_singleton
goodboy:drop_main_kwarg
goodboy:asyncgen_closing_fix
pull from: jc211:pubsub_startup_response_msg
jc211:runtime_to_msgspec
jc211:multihost_exs
jc211:aio_abandons
jc211:msg_codecs
jc211:old_msg_types
jc211:asyncio_debug_mode
jc211:pause_from_sync_w_greenback
jc211:mv_to_new_trio_py3.11
jc211:modden_spawn_from_client_req
jc211:multihomed
jc211:dereg_on_oserror
jc211:asyncio_debugger_support
jc211:shm_apis
jc211:ctx_cancel_semantics_and_overruns
jc211:oco_supervisor_prototype
jc211:msgtypes
jc211:master
jc211:switch_to_pdbp
jc211:proper_breakpoint_hooking
jc211:drop_proc_actxmngr
jc211:ctx_result_consumption
jc211:readme_touchups
jc211:ipython_integration
jc211:breceiver_internals
jc211:piker_pin
jc211:ipc_failure_while_streaming
jc211:deprecate_arbiter_addr
jc211:prompt_on_ctrlc
jc211:dun_unset_current_actor
jc211:ipc_failwhilestream_backup
jc211:macos_in_ci
jc211:harden_cluster_tests
jc211:eg_backup
jc211:exceptiongroups
jc211:egs_with_ctx_res_consumption
jc211:debug_lock_blocking
jc211:callable_key_maybe_open_context
jc211:spawn_backend_table
jc211:pin_pre_trio_0.22
jc211:pytest_report_workaround
jc211:lifetime_stack_tests
jc211:we_bein_all_matchy
jc211:debug_event_guard
jc211:disable_win_ci
jc211:alpha5
jc211:signint_saviour
jc211:sigintsaviour_citesthackin
jc211:sigintsaviour_ci_worked
jc211:aio_error_propagation
jc211:drop_msgpack
jc211:310_windows
jc211:ci_sdist_install
jc211:include_readme
jc211:310_plus
jc211:name_query
jc211:sort_subs_results_infected_aio
jc211:aio_explicit_task_cancels
jc211:fence_mp
jc211:sigint_ignore_in_pdb_repl
jc211:sigint2
jc211:msgpack_lists_by_default
jc211:nspaths
jc211:experimental_subpkg
jc211:maybe_cancel_the_cancel_
jc211:moar_timeoutz
jc211:drop_old_nooz_files
jc211:raise_runinactor_error
jc211:win_ci_timeout
jc211:alpha4
jc211:infect_asyncio
jc211:expected_ctx_cancelled
jc211:new_mypy
jc211:context_caching
jc211:end_of_channel_fixes
jc211:agpl_commit_msg_fix
jc211:agpl
jc211:stricter_context_starting
jc211:acked_backup
jc211:faster_daemon_cancels
jc211:early_deth_fixes
jc211:clusters_and_hot_tips
jc211:alpha3
jc211:pubsub_startup_response_msg
jc211:iaio_backup
jc211:trionics
jc211:graceful_gather
jc211:246_facepalm_backup
jc211:patch-async-enter-all
jc211:immediate_remote_cancels
jc211:less_logging
jc211:zombie_lord_infinite
jc211:optional_msgspec_support
jc211:fix_kbi_in_ctx_block
jc211:logo_tweaks
jc211:use_trio_on_win
jc211:alpha2
jc211:msgspec_infect_asyncio
jc211:live_on_air_from_tokio
jc211:tokio_backup
jc211:debugger_test_tweaks
jc211:fix_news_links
jc211:wats_da_nooz
jc211:ctx_debugger
jc211:bi_streaming_no_debugger_stuff
jc211:round_2_ci_windows
jc211:CI_increment_for_windows_bidirstreaming
jc211:ctx_debugger_from_hardening
jc211:infect_asyncio_backup
jc211:debugger_hardening
jc211:bi_streaming
jc211:transport_cleaning
jc211:context_finesse
jc211:cf_backup
jc211:db_backup
jc211:pre_bad_close
jc211:stdstream_clobber_fix
jc211:bistream_backup
jc211:transport_hardening
jc211:msgspec_not_fucked
jc211:try_msgspec
jc211:prehardkill
jc211:windows_bi_streaming
jc211:docs_revamp
jc211:new_docs_polish
jc211:wip_fix_asyncio_gen_streaming
jc211:drop_run
jc211:mp_teardown_hardening
jc211:stream_contexts
jc211:drop_sync_funcs
jc211:pub_connect_msg
jc211:sync_cancel
jc211:stream_clones
jc211:first_pypi_release
jc211:single_func_example
jc211:readme_pump
jc211:kinda_drop_run
jc211:mp_hang_search
jc211:eg_worker_poolz
jc211:sync_breakpoint
jc211:actor_state_via_messages
jc211:we_aint_got_zombie_shields
jc211:deprecate_rpcmodpaths
jc211:implicit_runtime
jc211:drop_tractor_run
jc211:py3.9
jc211:denoise_logging
jc211:func_refs_always
jc211:fix_debug_tests_in_ci_again
jc211:stream_channel_shield
jc211:pdb_madness
jc211:advanced_debugger_testing
jc211:clean_log_header
jc211:debug_refine
jc211:debug_refinements
jc211:drop_warn
jc211:multiproc_debug
jc211:debugger_on_windows
jc211:bug_in_debug
jc211:debug_tests
jc211:native_debugging
jc211:matrix
jc211:dereg_on_channel_aclose
jc211:ensure_deregister
jc211:start_up_sequence_trickery
jc211:fix_win_ci_again
jc211:stin_char_relay
jc211:flaky_tests
jc211:drop_cloudpickle
jc211:reorg_entry_points
jc211:drop-trip-update-trio
jc211:init_sphinx_docs
jc211:example_tests
jc211:implicit_rpc
jc211:fix_examples_in_docs
jc211:try_trip
jc211:log_task_context
jc211:drop_event_clear
jc211:more_thorough_super_tests
jc211:pip_ci_fix
jc211:windows_support
jc211:rename_forkserver_mod
jc211:user_update
jc211:win_ci
jc211:stream_functions
jc211:propagate_loglevel
jc211:ipc_iternals_renaming
jc211:close_mem_chans
jc211:docs_example_fixes
jc211:spawn_method_support
jc211:trio_memchans
jc211:contexts
jc211:remote_module_errors
jc211:remote_task_cancelling
jc211:fix_46
jc211:loglevel_to_tractor_tests
jc211:expose_tractor_test
jc211:improved_errors
jc211:self_register
jc211:multi_program_tests
jc211:tests_reorg
jc211:type_annotations
jc211:py3.7_tweaks
jc211:reliable_cancel_tests
jc211:attrs_it_up
jc211:wait_for_actor
jc211:draft_readme
jc211:init_docs
jc211:reg_with_uid
jc211:forkserver_singleton
jc211:drop_main_kwarg
jc211:asyncgen_closing_fix
goodboy:hilevel_serman
goodboy:aio_abandons
goodboy:multihost_exs
goodboy:runtime_to_msgspec
goodboy:msg_codecs
goodboy:old_msg_types
goodboy:asyncio_debug_mode
goodboy:pause_from_sync_w_greenback
goodboy:mv_to_new_trio_py3.11
goodboy:modden_spawn_from_client_req
goodboy:multihomed
goodboy:dereg_on_oserror
goodboy:asyncio_debugger_support
goodboy:shm_apis
goodboy:ctx_cancel_semantics_and_overruns
goodboy:oco_supervisor_prototype
goodboy:msgtypes
goodboy:master
goodboy:switch_to_pdbp
goodboy:proper_breakpoint_hooking
goodboy:drop_proc_actxmngr
goodboy:ctx_result_consumption
goodboy:readme_touchups
goodboy:ipython_integration
goodboy:breceiver_internals
goodboy:piker_pin
goodboy:ipc_failure_while_streaming
goodboy:deprecate_arbiter_addr
goodboy:prompt_on_ctrlc
goodboy:dun_unset_current_actor
goodboy:ipc_failwhilestream_backup
goodboy:macos_in_ci
goodboy:harden_cluster_tests
goodboy:eg_backup
goodboy:exceptiongroups
goodboy:egs_with_ctx_res_consumption
goodboy:debug_lock_blocking
goodboy:callable_key_maybe_open_context
goodboy:spawn_backend_table
goodboy:pin_pre_trio_0.22
goodboy:pytest_report_workaround
goodboy:lifetime_stack_tests
goodboy:we_bein_all_matchy
goodboy:debug_event_guard
goodboy:disable_win_ci
goodboy:alpha5
goodboy:signint_saviour
goodboy:sigintsaviour_citesthackin
goodboy:sigintsaviour_ci_worked
goodboy:aio_error_propagation
goodboy:drop_msgpack
goodboy:310_windows
goodboy:ci_sdist_install
goodboy:include_readme
goodboy:310_plus
goodboy:name_query
goodboy:sort_subs_results_infected_aio
goodboy:aio_explicit_task_cancels
goodboy:fence_mp
goodboy:sigint_ignore_in_pdb_repl
goodboy:sigint2
goodboy:msgpack_lists_by_default
goodboy:nspaths
goodboy:experimental_subpkg
goodboy:maybe_cancel_the_cancel_
goodboy:moar_timeoutz
goodboy:drop_old_nooz_files
goodboy:raise_runinactor_error
goodboy:win_ci_timeout
goodboy:alpha4
goodboy:infect_asyncio
goodboy:expected_ctx_cancelled
goodboy:new_mypy
goodboy:context_caching
goodboy:end_of_channel_fixes
goodboy:agpl_commit_msg_fix
goodboy:agpl
goodboy:stricter_context_starting
goodboy:acked_backup
goodboy:faster_daemon_cancels
goodboy:early_deth_fixes
goodboy:clusters_and_hot_tips
goodboy:alpha3
goodboy:pubsub_startup_response_msg
goodboy:iaio_backup
goodboy:trionics
goodboy:graceful_gather
goodboy:246_facepalm_backup
goodboy:patch-async-enter-all
goodboy:immediate_remote_cancels
goodboy:less_logging
goodboy:zombie_lord_infinite
goodboy:optional_msgspec_support
goodboy:fix_kbi_in_ctx_block
goodboy:logo_tweaks
goodboy:use_trio_on_win
goodboy:alpha2
goodboy:msgspec_infect_asyncio
goodboy:live_on_air_from_tokio
goodboy:tokio_backup
goodboy:debugger_test_tweaks
goodboy:fix_news_links
goodboy:wats_da_nooz
goodboy:ctx_debugger
goodboy:bi_streaming_no_debugger_stuff
goodboy:round_2_ci_windows
goodboy:CI_increment_for_windows_bidirstreaming
goodboy:ctx_debugger_from_hardening
goodboy:infect_asyncio_backup
goodboy:debugger_hardening
goodboy:bi_streaming
goodboy:transport_cleaning
goodboy:context_finesse
goodboy:cf_backup
goodboy:db_backup
goodboy:pre_bad_close
goodboy:stdstream_clobber_fix
goodboy:bistream_backup
goodboy:transport_hardening
goodboy:msgspec_not_fucked
goodboy:try_msgspec
goodboy:prehardkill
goodboy:windows_bi_streaming
goodboy:docs_revamp
goodboy:new_docs_polish
goodboy:wip_fix_asyncio_gen_streaming
goodboy:drop_run
goodboy:mp_teardown_hardening
goodboy:stream_contexts
goodboy:drop_sync_funcs
goodboy:pub_connect_msg
goodboy:sync_cancel
goodboy:stream_clones
goodboy:first_pypi_release
goodboy:single_func_example
goodboy:readme_pump
goodboy:kinda_drop_run
goodboy:mp_hang_search
goodboy:eg_worker_poolz
goodboy:sync_breakpoint
goodboy:actor_state_via_messages
goodboy:we_aint_got_zombie_shields
goodboy:deprecate_rpcmodpaths
goodboy:implicit_runtime
goodboy:drop_tractor_run
goodboy:py3.9
goodboy:denoise_logging
goodboy:func_refs_always
goodboy:fix_debug_tests_in_ci_again
goodboy:stream_channel_shield
goodboy:pdb_madness
goodboy:advanced_debugger_testing
goodboy:clean_log_header
goodboy:debug_refine
goodboy:debug_refinements
goodboy:drop_warn
goodboy:multiproc_debug
goodboy:debugger_on_windows
goodboy:bug_in_debug
goodboy:debug_tests
goodboy:native_debugging
goodboy:matrix
goodboy:dereg_on_channel_aclose
goodboy:ensure_deregister
goodboy:start_up_sequence_trickery
goodboy:fix_win_ci_again
goodboy:stin_char_relay
goodboy:flaky_tests
goodboy:drop_cloudpickle
goodboy:reorg_entry_points
goodboy:drop-trip-update-trio
goodboy:init_sphinx_docs
goodboy:example_tests
goodboy:implicit_rpc
goodboy:fix_examples_in_docs
goodboy:try_trip
goodboy:log_task_context
goodboy:drop_event_clear
goodboy:more_thorough_super_tests
goodboy:pip_ci_fix
goodboy:windows_support
goodboy:rename_forkserver_mod
goodboy:user_update
goodboy:win_ci
goodboy:stream_functions
goodboy:propagate_loglevel
goodboy:ipc_iternals_renaming
goodboy:close_mem_chans
goodboy:docs_example_fixes
goodboy:spawn_method_support
goodboy:trio_memchans
goodboy:contexts
goodboy:remote_module_errors
goodboy:remote_task_cancelling
goodboy:fix_46
goodboy:loglevel_to_tractor_tests
goodboy:expose_tractor_test
goodboy:improved_errors
goodboy:self_register
goodboy:multi_program_tests
goodboy:tests_reorg
goodboy:type_annotations
goodboy:py3.7_tweaks
goodboy:reliable_cancel_tests
goodboy:attrs_it_up
goodboy:wait_for_actor
goodboy:draft_readme
goodboy:init_docs
goodboy:reg_with_uid
goodboy:forkserver_singleton
goodboy:drop_main_kwarg
goodboy:asyncgen_closing_fix
1 Commits
master
...
pubsub_sta
Author | SHA1 | Message | Date |
---|---|---|---|
Tyler Goodlet | 9a5dcbbd31 | Add a @pub kwarg to allow specifying a "startup response message" |
1 changed files with 7 additions and 1 deletions
|
@ -121,6 +121,7 @@ def pub(
|
|||
wrapped: typing.Callable = None,
|
||||
*,
|
||||
tasks: Set[str] = set(),
|
||||
send_on_connect: Any = None,
|
||||
):
|
||||
"""Publisher async generator decorator.
|
||||
|
||||
|
@ -206,7 +207,7 @@ def pub(
|
|||
|
||||
# handle the decorator not called with () case
|
||||
if wrapped is None:
|
||||
return partial(pub, tasks=tasks)
|
||||
return partial(pub, tasks=tasks, send_on_connect=send_on_connect)
|
||||
|
||||
task2lock: Dict[str, trio.StrictFIFOLock] = {}
|
||||
|
||||
|
@ -249,6 +250,11 @@ def pub(
|
|||
|
||||
try:
|
||||
modify_subs(topics2ctxs, topics, ctx)
|
||||
|
||||
# if specified send the startup message back to consumer
|
||||
if send_on_connect is not None:
|
||||
await ctx.send_yield(send_on_connect)
|
||||
|
||||
# block and let existing feed task deliver
|
||||
# stream data until it is cancelled in which case
|
||||
# the next waiting task will take over and spawn it again
|
||||
|
|
Write
Preview
Loading…
Reference in New Issue