Aiuti

Personal collection of helpers and utilities for various projects

MIT License

Downloads
3.9K
Stars
1
Committers
2

Bot releases are visible (Hide)

Aiuti - Release v0.7.1 Latest Release

Published by github-actions[bot] about 1 year ago

Change Log:

  • Fixed potential for deadlocked threads when cancelling tasks using threadsafe_async_cache()
Aiuti - Release v0.7

Published by github-actions[bot] about 1 year ago

Change Log:

  • Added a cache parameter to threadsafe_async_cache to allow providing an alternative cache object
  • Added TypeAlias, ParamSpec, ParamSpecArgs, ParamSpecKwargs, and Concatenate to the typing module as poly-filled fallbacks
  • Added generic type var F for any callable function
  • Updated async code to use get_running_loop() instead of get_event_loop() internally
  • Fixed potential threadsafety issue in threadsafe_async_cache() by not relying on the GIL while making locks
Aiuti - Release v0.6

Published by github-actions[bot] almost 2 years ago

Change Log:

  • Added batch_timeout configuration for AsyncBackgroundBatcher
  • Added handling for event loop shutdown in AsyncBackgroundBatcher to avoid log spam
  • Improved thread-safety of ensure_aw() and loop_in_thread()
Aiuti - Release v0.5

Published by github-actions[bot] about 2 years ago

Change Log:

  • Added the AsyncBackgroundBatcher class and async_background_batcher() decorator
  • Dropped support for Python 3.6
Aiuti - Release v0.4.2.post0

Published by github-actions[bot] about 3 years ago

Change Log:

  • Fixed copyright notice in LICENSE
Aiuti - Release v0.4.2

Published by github-actions[bot] over 3 years ago

Change Log:

  • Fixed FileLock.acquire_ctx() only releasing on error
Aiuti - Release v0.4.1

Published by github-actions[bot] over 3 years ago

Change Log:

  • Updated all code to pass MyPy in strict mode
  • Implemented a workaround for BufferAsyncCalls.wait() hanging on 3.7
Aiuti - Release v0.4

Published by github-actions[bot] over 3 years ago

Change Log:

  • Added new asyncio functions: ensure_aw(), loop_in_thread(), and run_aw_threadsafe()
  • Added BufferAsyncCalls.wait_from_anywhere() to support waiting for the buffer from potentially another thread
  • Fixed potential deadlock in to_sync_iter() which could occur if the target event loop didn't continue to run
Aiuti - Release v0.3

Published by github-actions[bot] over 3 years ago

Change Log:

  • Added aiuti.itertools module with exhaust() and split()
  • Added additional queuing methods to BufferAsyncCalls:
    • .await_() for queuing an awaitable
    • .map() for queuing from an iterable
    • .amap() for queuing from an async iterable
Aiuti - Release v0.2

Published by github-actions[bot] over 3 years ago

Change Log:

  • Added a thread-safe filelock implementation
Aiuti - Release v0.1

Published by github-actions[bot] over 3 years ago

Initial Release