Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.5%) to scientific vocabulary
Keywords from Contributors
Repository
Basic Info
- Host: GitHub
- Owner: google
- License: apache-2.0
- Language: Python
- Default Branch: main
- Size: 140 KB
Statistics
- Stars: 23
- Watchers: 3
- Forks: 16
- Open Issues: 6
- Releases: 0
Metadata Files
README.md
duet
A simple future-based async library for python
Duet takes inspiration from the amazing trio library and the structured concurrency approach to async programming that it uses. However, duet differs from trio in two major ways:
Instead of a full-blown implementation of asynchronous IO, duet relies on the
Futureinterface for parallelism, and provides a way to run async/await coroutines around thoseFutures. This is useful if you are using an API that returns futures, such as RPC libraries like gRPC. The standardFutureinterface does not implement__await__directly, soFutureinstances must be wrapped induet.AwaitableFuture.duet is re-entrant. At the top level, you run async code by calling
duet.run(foo). Insidefoosuppose you call a function that has not yet been fully refactored to be asynchronous, but itself callsduet.run(bar). Most async libraries, includingtrioandasyncio, will raise an exception if you try to "re-enter" the event loop in this way, but duet allows it. We have found that this can simplify the process of refactoring code to be asynchronous because you don't have to completely separate the sync and async parts of your codebase all at once.
Installation
Install from pypi:
pip install duet
Note
duet is not an official Google project.
Owner
- Name: Google
- Login: google
- Kind: organization
- Email: opensource@google.com
- Location: United States of America
- Website: https://opensource.google/
- Twitter: GoogleOSS
- Repositories: 2,773
- Profile: https://github.com/google
Google ❤️ Open Source
GitHub Events
Total
- Watch event: 1
- Delete event: 4
- Push event: 12
- Pull request event: 9
- Fork event: 1
- Create event: 5
Last Year
- Watch event: 1
- Delete event: 4
- Push event: 12
- Pull request event: 9
- Fork event: 1
- Create event: 5
Committers
Last synced: 10 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Matthew Neeley | m****o@g****m | 74 |
| Dmytro Fedoriaka | f****r | 2 |
| Cheng Xing | c****g@g****m | 2 |
| Ping Yeh | p****h | 1 |
| Mohammadreza Sarayloo | s****n@g****m | 1 |
| Kunal Arya | k****q | 1 |
| Bastian Zimmermann | 1****m | 1 |
| Andreas Bengtsson | a****n@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 11 months ago
All Time
- Total issues: 9
- Total pull requests: 82
- Average time to close issues: 19 days
- Average time to close pull requests: 1 day
- Total issue authors: 2
- Total pull request authors: 9
- Average comments per issue: 0.56
- Average comments per pull request: 0.21
- Merged pull requests: 79
- Bot issues: 0
- Bot pull requests: 1
Past Year
- Issues: 0
- Pull requests: 5
- Average time to close issues: N/A
- Average time to close pull requests: 2 days
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 4
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- maffoo (8)
- DanielSank (1)
Pull Request Authors
- maffoo (77)
- fedimser (3)
- verult (2)
- signorrayan (1)
- dependabot[bot] (1)
- BastianZim (1)
- andbe91 (1)
- kunalq (1)
- pingyeh (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 3
-
Total downloads:
- pypi 151,840 last-month
- Total docker downloads: 411
-
Total dependent packages: 4
(may contain duplicates) -
Total dependent repositories: 38
(may contain duplicates) - Total versions: 52
- Total maintainers: 1
pypi.org: duet
A simple future-based async library for python.
- Homepage: http://github.com/google/duet
- Documentation: https://duet.readthedocs.io/
- License: Apache 2
-
Latest release: 0.2.9
published almost 3 years ago
Rankings
Maintainers (1)
pypi.org: duet-async
A simple future-based async library for python.
- Homepage: http://github.com/google/duet
- Documentation: https://duet-async.readthedocs.io/
- License: Apache 2
-
Latest release: 0.1.3
published almost 5 years ago
Rankings
Maintainers (1)
conda-forge.org: duet-python
- Homepage: http://github.com/google/duet
- License: Apache-2.0
-
Latest release: 0.2.7
published about 4 years ago
Rankings
Dependencies
- black ==22.3.0
- isort ==5.7.
- mypy ==0.931.
- pylint ==2.10.
- pytest ==6.2.
- twine ==3.3.
- typing-extensions ==3.10.0
- actions/checkout v3 composite
- actions/setup-python v3 composite