**Full Changelog**: https://github.com/python-trio/trio/compare/v0.24.0...v0.25.0
Breaking changes
---
- The `strict_exception_groups` parameter now defaults to `True` in `trio.run` and `trio.lowlevel.start_guest_run`. `trio.open_nursery` still defaults to the same value as was specified in `trio.run`/`trio.lowlevel.start_guest_run`, but if you didn't specify it there then all subsequent calls to `trio.open_nursery` will change.
This is unfortunately very tricky to change with a deprecation period, as raising a `DeprecationWarning` whenever `strict_exception_groups` is not specified would raise a lot of unnecessary warnings.
Notable side effects of changing code to run with ``strict_exception_groups==True``
* If an iterator raises `StopAsyncIteration` or `StopIteration` inside a nursery, then python will not recognize wrapped instances of those for stopping iteration.
* `trio.run_process` is now documented that it can raise an `ExceptionGroup`. It previously could do this in very rare circumstances, but with `strict_exception_groups` set to `True` it will now do so whenever exceptions occur in ``deliver_cancel`` or with problems communicating with the subprocess.
* Errors in opening the process is now done outside the internal nursery, so if code previously ran with ``strict_exception_groups=True`` there are cases now where an `ExceptionGroup` is *no longer* added.
* `trio.TrioInternalError` ``.__cause__`` might be wrapped in one or more `ExceptionGroups <ExceptionGroup>` (https://github.com/python-trio/trio/issues/2786)
Features
---
- Add `trio.testing.wait_all_threads_completed`, which blocks until no threads are running tasks. This is intended to be used in the same way as `trio.testing.wait_all_tasks_blocked`. (https://github.com/python-trio/trio/issues/2937)
- `Path` is now a subclass of `pathlib.PurePath`, allowing it to interoperate with other standard
`pathlib` types.
Instantiating `Path` now returns a concrete platform-specific subclass, one of `PosixPath` or
`WindowsPath`, matching the behavior of `pathlib.Path`. (https://github.com/python-trio/trio/issues/2959)
Bugfixes
---
- The pthread functions are now correctly found on systems using vanilla versions of musl libc. (https://github.com/python-trio/trio/issues/2939)
Miscellaneous internal changes
---
- use the regular readme for the PyPI long_description (https://github.com/python-trio/trio/issues/2866)