Skip to content

Make library fully async - #361

Merged
sdb9696 merged 4 commits into
python-ring-doorbell:masterfrom
sdb9696:make_lib_async
Aug 20, 2024
Merged

Make library fully async#361
sdb9696 merged 4 commits into
python-ring-doorbell:masterfrom
sdb9696:make_lib_async

Conversation

@sdb9696

@sdb9696 sdb9696 commented Mar 26, 2024

Copy link
Copy Markdown
Member

Migrate the library to support async api calls running in an asyncio event loop.

Deprecates the synchronous api calls with a warning and runs the async version on a new event loop.

@gitguardian

gitguardian Bot commented Mar 26, 2024

Copy link
Copy Markdown

⚠️ GitGuardian has uncovered 2 secrets following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

Since your pull request originates from a forked repository, GitGuardian is not able to associate the secrets uncovered with secret incidents on your GitGuardian dashboard.
Skipping this check run and merging your pull request will create secret incidents on your GitGuardian dashboard.

🔎 Detected hardcoded secrets in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
- - Generic High Entropy Secret 1fd72a9 tests/fixtures/ring_oauth.json View secret
- - Generic High Entropy Secret 1fd72a9 tests/fixtures/ring_oauth.json View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secrets safely. Learn here the best practices.
  3. Revoke and rotate these secrets.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

@coveralls

coveralls commented Mar 26, 2024

Copy link
Copy Markdown

Coverage Status

coverage: 79.015% (-0.8%) from 79.822%
when pulling 4796d3a on sdb9696:make_lib_async
into 8d4f555 on tchellomello:master.

@sdb9696
sdb9696 force-pushed the make_lib_async branch 2 times, most recently from c5c000c to 792a671 Compare March 26, 2024 14:51
@sdb9696
sdb9696 force-pushed the make_lib_async branch 5 times, most recently from 4796d3a to 847e434 Compare April 5, 2024 14:24
@github-actions

github-actions Bot commented Jul 4, 2024

Copy link
Copy Markdown

There hasn't been any activity on this pull request recently. This pull request has been automatically marked as stale because of that and will be closed if no further activity occurs within 7 days.
If you are the author of this PR, please leave a comment if you want to keep it open. Also, please rebase your PR onto the latest dev branch to ensure that it's up to date with the latest changes.
Thank you for your contribution!

@github-actions github-actions Bot added the stale Stale PRs and Issues label Jul 4, 2024
@sdb9696 sdb9696 added no-stale and removed stale Stale PRs and Issues labels Jul 4, 2024
@coveralls

coveralls commented Aug 8, 2024

Copy link
Copy Markdown

Coverage Status

coverage: 77.812% (-0.8%) from 78.571%
when pulling ba92749 on sdb9696:make_lib_async
into ab2a2aa on tchellomello:master.

@sdb9696
sdb9696 merged commit 2ec7f6e into python-ring-doorbell:master Aug 20, 2024
@sdb9696
sdb9696 deleted the make_lib_async branch August 20, 2024 16:08
@sdb9696 sdb9696 added this to the 0.9.0 milestone Aug 21, 2024
@sdb9696 sdb9696 mentioned this pull request Aug 21, 2024
sdb9696 added a commit that referenced this pull request Aug 21, 2024
## [0.9.0](https://github.com/tchellomello/python-ring-doorbell/tree/0.9.0) (2024-08-21)

[Full Changelog](0.8.12...0.9.0)

**Release highlights:**

- Async support for the library
- Removed python 3.8 support

**Breaking changes:**

- Synchronous api calls are now deprecated.  For example calling `Ring.update_data()` will emit a deprecation warning to use `await Ring.async_update_data()` which should be run within an event loop via `asyncio.run()`.  See `test.py` for an example.
- Calling the deprecated sync api methods from inside a running event loop is not supported.  This is unlikely to affect many consumers as the norm if running in an event loop is to make synchronous api calls from an executor thread.
- Python 3.8 is no longer officially supported and could break in future releases.

**Breaking change pull requests:**

- Drop python3.8 support and enable python3.13 in the CI [\#398](#398) (@sdb9696)

**Implemented enhancements:**

- Make library fully async [\#361](#361) (@sdb9696)

**Fixed bugs:**

- Small change to modify the timestamp [\#378](#378) (@AndrewMohawk)

**Project maintenance:**

- Update instructions for releasing and migrate changelog [\#407](#407) (@sdb9696)
- Add .vscode folder to gitignore [\#397](#397) (@sdb9696)
- Update dependencies [\#396](#396) (@sdb9696)
- Reduce lock and stale workflow frequency [\#388](#388) (@sdb9696)
@github-actions github-actions Bot locked and limited conversation to collaborators Aug 29, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants