goodrobots / maverick-api

API backend for maverick-web
MIT License
8 stars 5 forks source link

Bump zeroconf from 0.26.1 to 0.33.0 #318

Closed dependabot-preview[bot] closed 3 years ago

dependabot-preview[bot] commented 3 years ago

Bumps zeroconf from 0.26.1 to 0.33.0.

Release notes

Sourced from zeroconf's releases.

0.33.0

This release eliminates all threading locks as all non-threadsafe operations now happen in the event loop.

  • Let connection_lost close the underlying socket (#918) @​bdraco

    The socket was closed during shutdown before asyncio's connection_lost handler had a chance to close it which resulted in a traceback on windows.

    Fixed #917

Technically backwards incompatible:

  • Removed duplicate unregister_all_services code (#910) @​bdraco

    Calling Zeroconf.close from same asyncio event loop zeroconf is running in will now skip unregister_all_services and log a warning as this a blocking operation and is not async safe and never has been.

    Use AsyncZeroconf instead, or for legacy code call async_unregister_all_services before Zeroconf.close

0.32.1

  • Increased timeout in ServiceInfo.request to handle loaded systems (#895) @​bdraco

    It can take a few seconds for a loaded system to run the async_request coroutine when the event loop is busy, or the system is CPU bound (example being Home Assistant startup). We now add an additional _LOADED_SYSTEM_TIMEOUT (10s) to the run_coroutine_threadsafe calls to ensure the coroutine has the total amount of time to run up to its internal timeout (default of 3000ms).

    Ten seconds is a bit large of a timeout; however, it is only used in cases where we wrap other timeouts. We now expect the only instance the run_coroutine_threadsafe result timeout will happen in a production circumstance is when someone is running a ServiceInfo.request() in a thread and another thread calls Zeroconf.close() at just the right moment that the future is never completed unless the system is so loaded that it is nearly unresponsive.

    The timeout for run_coroutine_threadsafe is the maximum time a thread can cleanly shut down when zeroconf is closed out in another thread, which should always be longer than the underlying thread operation.

0.32.0

This release offers 100% line and branch coverage.

  • Made ServiceInfo first question QU (#852) @​bdraco

    We want an immediate response when requesting with ServiceInfo by asking a QU question; most responders will not delay the response and respond right away to our question. This also improves compatibility

... (truncated)

Commits
  • cfb28aa Bump version: 0.32.1 → 0.33.0
  • e4a9655 Update changelog for 0.33.0 release (#922)
  • b0b23f9 Fix examples/async_registration.py attaching to the correct loop (#921)
  • 2e00002 Add support for bump2version (#920)
  • 96be961 Update changelog for 0.33.0 release (#919)
  • 919b096 Let connection_lost close the underlying socket (#918)
  • b6eaf72 Reduce complexity of DNSRecord (#915)
  • aa71084 Remove Zeroconf.wait as its now unused in the codebase (#914)
  • 38eb271 Switch periodic cleanup task to call_later (#913)
  • b2a7a00 Update changelog for 0.33.0 (#912)
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)
dependabot-preview[bot] commented 3 years ago

Superseded by #320.