goodboy
dfdad4d1fa
Merge pull request #336 from goodboy/callable_key_maybe_open_context
...
Callable key input to maybe open context
2022-10-10 00:32:27 -04:00
Tyler Goodlet
b892bc74f6
Add trivial news snippet
2022-10-09 21:27:23 -04:00
Tyler Goodlet
44b59f3338
Go back to a `global` single-ton nursery per actor
...
Turns out the lifetime mgmt of separate nurseries per delegate manager
is tricky; a new nursery can't be naively allocated on cache-misses since
it may get closed by some early terminating task instead of by the "last
using" consumer task. In theory if we allocate using the same logic as
that used for the last-task-triggers-exit then this should work?
For now just go back to a single global nursery per `_Cache` which still
avoids use of the internal actor service nursery.
2022-10-09 21:27:23 -04:00
Tyler Goodlet
7a719ac2a7
Use one nursery per unique manager (signature)
...
Instead of sticking all `trionics.maybe_open_context()` tasks inside the
actor's (root) service nursery, open a unique one per manager function
instance (id).
Further, accept a callable for the `key` such that a user can have
more flexible control on the caching logic and move the
`maybe_open_nursery()` helper out of the portal mod and into this
trionics "managers" module.
2022-10-09 21:27:23 -04:00
goodboy
9e6266dda3
Merge pull request #335 from goodboy/spawn_backend_table
...
Spawn backend table
2022-10-09 21:26:28 -04:00
Tyler Goodlet
b1abec543f
Add trivial news snippet
2022-10-09 18:51:31 -04:00
Tyler Goodlet
93b9d2dc2d
Drop dynamic backend-spawn-method test generation
2022-10-09 18:29:50 -04:00
Tyler Goodlet
4d808757a6
Fix start method name in logging propagation test
2022-10-09 18:22:55 -04:00
Tyler Goodlet
7e5bb0437e
Go to latest `mypy` version in CI
2022-10-09 18:13:45 -04:00
Tyler Goodlet
b19f08d9f0
Fill out new backend names in ci script
2022-10-09 18:08:07 -04:00
Tyler Goodlet
2c20b2d64f
Fix import to load from `conftest.py`
2022-10-09 18:03:17 -04:00
Tyler Goodlet
023b6fc845
Drop `tractor.testing` sub-package
2022-10-09 17:57:02 -04:00
Tyler Goodlet
d24fae8381
'Rename mp spawn methods to have a `'mp_'` prefix'
2022-10-09 17:54:55 -04:00
Tyler Goodlet
5ab98513b7
Move `@tractor_test` into `conftest.py`
2022-10-09 17:14:20 -04:00
Tyler Goodlet
90f4912580
Organize process spawning into lookup table
...
Instead of the logic branching create a table `._spawn._methods`
which is used to lookup the desired backend framework (in this case
still only one of `multiprocessing` or `trio`) and make the top level
`.new_proc()` do the lookup and any common logic. Use a `typing.Literal`
to define the lookup table's key set.
Repair and ignore a bunch of type-annot related stuff todo with `mypy`
updates and backend-specific process typing.
2022-10-09 16:51:21 -04:00
goodboy
6e24e16068
Merge pull request #334 from goodboy/pin_pre_trio_0.22
...
Pin pre-0.22 bc exception groups break everything
2022-10-09 16:26:56 -04:00
Tyler Goodlet
15047341bd
Ignore forserver override attrs with `mypy`
2022-10-09 16:14:11 -04:00
Tyler Goodlet
dc295ab227
Pin pre-0.22 bc exception groups break everything
2022-10-09 16:11:06 -04:00
goodboy
6a0337b69d
Merge pull request #326 from goodboy/lifetime_stack_tests
...
Expose lifetime stack as class attr, add base test suite
2022-09-16 18:09:24 -04:00
Tyler Goodlet
e609183242
Expose lifetime stack as class attr, add base test suite
2022-09-15 23:50:15 -04:00
goodboy
368e9f3f7c
Merge pull request #322 from goodboy/we_bein_all_matchy
...
3.10 and friends
2022-09-15 23:49:34 -04:00
Tyler Goodlet
10eeda2d2b
Use built-ins for all data-structure-type annotations
2022-09-15 23:41:28 -04:00
Tyler Goodlet
a113e22bb9
Add trivial nooz snippet
2022-09-15 23:41:28 -04:00
Tyler Goodlet
ad19bf2cf1
Remove `tractor.run()` once and for all
...
It's been deprecated for a while now and all docs and tests have been
changed.
Closes #183
2022-09-15 23:41:28 -04:00
Tyler Goodlet
9aef03772a
Expose `Actor` at pkg level, adjust debug type annots
2022-09-15 23:41:28 -04:00
Tyler Goodlet
7548dba8f2
Change to new doc string style
2022-09-15 23:41:28 -04:00
Tyler Goodlet
ba4d4e9af3
Change test import
2022-09-15 23:41:28 -04:00
Tyler Goodlet
208d56af2c
Make `async_main()` a module func
2022-09-15 23:41:28 -04:00
Tyler Goodlet
a3a5bc267e
Make `process_messages()` a mod func
2022-09-15 23:41:28 -04:00
Tyler Goodlet
d4084b2032
Rename our core module to `_runtime`
2022-09-15 23:41:28 -04:00
Tyler Goodlet
1e6b4d5dd4
Drop `msgspec` min pin
2022-09-15 23:41:28 -04:00
Tyler Goodlet
c613acfe5c
Start alpha 6 dev, ensure py3.10+
2022-09-15 23:41:28 -04:00
goodboy
fea9dc7065
Merge pull request #324 from goodboy/debug_event_guard
...
Add debug complete event `None`-guard for when already reset
2022-09-15 23:20:38 -04:00
goodboy
e558c427de
Merge pull request #327 from goodboy/disable_win_ci
...
Disable win tests in CI
2022-09-15 23:20:26 -04:00
Tyler Goodlet
f07c3aa4a1
Add nooz
2022-09-15 19:39:34 -04:00
Tyler Goodlet
bafd10a260
Make `maybe_open_context()` re-entrant safe, use per factory locks
2022-09-15 19:02:02 -04:00
Tyler Goodlet
5ad540c417
Add debug complete event `None`-guard for when already reset
2022-09-15 19:02:02 -04:00
Tyler Goodlet
83b44cf469
Flip over PR number in readme
2022-09-15 18:54:51 -04:00
Tyler Goodlet
1f2001020e
Mention disabled windows CI in readme
2022-09-15 18:46:34 -04:00
Tyler Goodlet
71f9881a60
Drop windows from CI until we get a collab that actually uses it XD
2022-09-15 18:36:45 -04:00
Tyler Goodlet
e24645eec8
Drop `pytest` 3.10 issue comment, add todo for `pyreadline3`
2022-09-15 18:36:37 -04:00
Tyler Goodlet
c3cdeeb3ba
Drop `pytest` full trace flag, use `pip list`
2022-09-15 18:36:27 -04:00
Tyler Goodlet
9bd534df83
Drop 3.9 from CI jobs
2022-09-15 18:36:15 -04:00
goodboy
c1d700f257
Merge pull request #321 from goodboy/alpha5
...
`alpha5` release!
2022-08-03 14:36:52 -04:00
Tyler Goodlet
14c6e34658
Add summary section
2022-08-03 11:42:53 -04:00
Tyler Goodlet
3393bc23e4
Generate release news
2022-08-03 11:41:23 -04:00
Tyler Goodlet
171f1bc243
Move to using `pyproject.toml` for `towncrier`
...
Add explicit fragment types based on `pytest`'s config
and don't manually spec the version.
2022-08-03 11:36:23 -04:00
Tyler Goodlet
ee02cd2496
Move misplaced fragment for #305
2022-08-03 10:54:22 -04:00
Tyler Goodlet
4c5d435aac
Fix towncrier bug entry suffix
2022-08-03 10:21:37 -04:00
Tyler Goodlet
a9b4a61620
Flip to non-dev version tag
2022-08-03 10:21:07 -04:00