later

A framework for python asyncio with batteries included for people writing services in python asyncio

https://github.com/facebookincubator/later

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

autograd tensor interpretability transformer feature-attribution interpretable-ai interpretable-ml feature-importance audio speech
Last synced: 10 months ago · JSON representation

Repository

A framework for python asyncio with batteries included for people writing services in python asyncio

Basic Info
  • Host: GitHub
  • Owner: facebookincubator
  • License: apache-2.0
  • Language: Python
  • Default Branch: main
  • Size: 239 KB
Statistics
  • Stars: 52
  • Watchers: 13
  • Forks: 10
  • Open Issues: 1
  • Releases: 8
Created about 8 years ago · Last pushed 10 months ago
Metadata Files
Readme Contributing License Code of conduct

README.rst

=====
later
=====
.. image:: https://github.com/facebookincubator/later/actions/workflows/ci.yml/badge.svg?branch=main
    :target: https://github.com/facebookincubator/later/actions


.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
    :target: https://github.com/psf/black


**What is** ``later``?

later is a play on Async not happening now but at some point in the future.
It was also an awesome name for a toolkit for writing AsyncIO applications. The
*batteries* if you will for AsyncIO.

later is a collection of asyncio *batteries* created at Meta for supporting asyncio
services. 

later offers the following:
    - **Unittesting** 
        - `later.unittest.TestCase` - An `IsolatedAsyncioTestCase` that insures tasks are not left orphaned and asyncio never calls its error handler. 
        - `later.unittest.mock.AsyncContextManager` - A factory for easy mocking out `AsyncContextManager` 
    - **Tasks***
        - `later.cancel` - The *correct* way to cancel a Task/Future and insure it is awaited
        - `later.as_task` - Decorator to turn coroutines into Tasks. 
        - `later.Watcher` - Watch tasks and ensure they don't die - take action when they do. This is kinda like a `asyncio.TaskGroup`
        - `later.herd` - A Decorator that provides coroutines with basic thundering herd protection. 
        - `later.task.TaskSentinel` - A Completed Future, a default value for a `asyncio.Task` argument so you don't also have to accept None. 
    - **Synchronization**
        - `later.event.BiDirectionalEvent` - two way `asyncio.Event` for Handshake style synchronization. 

License
==========
`later` is Apache licensed, as found in the LICENSE `file `_

Owner

  • Name: Meta Incubator
  • Login: facebookincubator
  • Kind: organization
  • Location: Menlo Park, California

We work hard to contribute our work back to the web, mobile, big data, & infrastructure communities. NB: members must have two-factor auth.

GitHub Events

Total
  • Watch event: 10
  • Delete event: 26
  • Issue comment event: 63
  • Push event: 41
  • Pull request event: 49
  • Fork event: 3
  • Create event: 25
Last Year
  • Watch event: 10
  • Delete event: 26
  • Issue comment event: 63
  • Push event: 41
  • Pull request event: 49
  • Fork event: 3
  • Create event: 25

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 38
  • Total Committers: 16
  • Avg Commits per committer: 2.375
  • Development Distribution Score (DDS): 0.816
Past Year
  • Commits: 14
  • Committers: 7
  • Avg Commits per committer: 2.0
  • Development Distribution Score (DDS): 0.571
Top Committers
Name Email Commits
Jason Fried f****d@f****m 7
Jason Fried f****d@m****m 6
John Reese j****e@f****m 4
generatedunixname89002005307016 g****6@f****m 4
dependabot[bot] 4****] 2
Stanislau Hlebik s****h@f****m 2
Tim Hatch t****h@f****m 2
Cooper Lees c****r@f****m 2
Dark Knight 2
Jason Fried me@j****o 1
Cooper Ry Lees me@c****m 1
Morton Jonuschat m****t@f****m 1
Richard Barnes r****s@m****m 1
Benton Guess b****s@m****m 1
facebook-github-bot f****t 1
Shannon Zhu s****u@f****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 2
  • Total pull requests: 95
  • Average time to close issues: 7 days
  • Average time to close pull requests: 10 days
  • Total issue authors: 2
  • Total pull request authors: 6
  • Average comments per issue: 2.0
  • Average comments per pull request: 1.65
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 84
Past Year
  • Issues: 0
  • Pull requests: 54
  • Average time to close issues: N/A
  • Average time to close pull requests: 3 days
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 1.46
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 54
Top Authors
Issue Authors
  • cooperlees (1)
  • skewty (1)
Pull Request Authors
  • dependabot[bot] (84)
  • fried (3)
  • thatch (2)
  • cooperlees (2)
  • facebook-github-bot (2)
  • amyreese (2)
Top Labels
Issue Labels
good first issue (1)
Pull Request Labels
CLA Signed (87) dependencies (84) python (78) Merged (35) github_actions (3) enhancement (1) help wanted (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 167,440 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 10
  • Total versions: 8
  • Total maintainers: 4
pypi.org: later

A toolbox for asyncio services

  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 10
  • Downloads: 167,440 Last month
Rankings
Dependent repos count: 4.6%
Downloads: 5.0%
Average: 6.6%
Dependent packages count: 10.1%
Maintainers (4)
Last synced: 10 months ago

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
.github/workflows/pypi_upload.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
pyproject.toml pypi
  • async-timeout >= 2.0.0, < 5.0.0