Skip to content

TODO: Keeping track of todo items for extra-function #6

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wolfram77 opened this issue Apr 26, 2025 · 0 comments
Open

TODO: Keeping track of todo items for extra-function #6

wolfram77 opened this issue Apr 26, 2025 · 0 comments
Assignees

Comments

@wolfram77
Copy link
Member

SEE NOTES

Package Name Type Description
mtarh-cbind function Extra lightweight callbacks memorization
argumentsof function Npm module which parses arguments of any callables.

DEPRECATE, LOG

OVERLOAD

ASYNC_FROM

EXTRA-JS

ASYNC ARRAY

Not accepting additions, but happy to take requests.

Name Description
pify Promisify a callback-style function
delay Delay a promise a specified amount of time
p-map Map over promises concurrently
p-all Run promise-returning & async functions concurrently with optional limited concurrency
p-queue Promise queue with concurrency control
p-catch-if Conditional promise catch handler
p-if Conditional promise chains
p-tap Tap into a promise chain without affecting its value or state
p-log Log the value/error of a promise
p-event Promisify an event by waiting for it to be emitted
p-debounce Debounce promise-returning & async functions
p-throttle Throttle promise-returning & async functions
p-timeout Timeout a promise after a specified amount of time
p-finally Promise#finally() ponyfill - Invoked when the promise is settled regardless of outcome
p-retry Retry a promise-returning or async function
p-any Wait for any promise to be fulfilled
p-some Wait for a specified number of promises to be fulfilled
p-locate Get the first fulfilled promise that satisfies the provided testing function
p-limit Run multiple promise-returning & async functions with limited concurrency
p-series Run promise-returning & async functions in series
p-memoize Memoize promise-returning & async functions
p-pipe Compose promise-returning & async functions into a reusable pipeline
p-props Like Promise.all() but for Map and Object
p-waterfall Run promise-returning & async functions in series, each passing its result to the next
p-cancelable Create a promise that can be canceled
p-progress Create a promise that reports progress
p-reflect Make a promise always fulfill with its actual fulfillment value or rejection reason
p-filter Filter promises concurrently
p-reduce Reduce a list of values using promises into a promise for a value
p-settle Settle promises concurrently and get their fulfillment value or rejection reason
p-every Test whether all promises passes a testing function
p-one Test whether some promise passes a testing function
p-map-series Map over promises serially
p-each-series Iterate over promises serially
p-times Run promise-returning & async functions a specific number of times concurrently
p-lazy Create a lazy promise that defers execution until .then() or .catch() is called
p-whilst While a condition returns true, calls a function repeatedly, and then resolves the promise
p-do-whilst Calls a function repeatedly while a condition returns true and then resolves the promise
p-forever Run promise-returning & async functions repeatedly until you end it
p-wait-for Wait for a condition to be true
p-min-delay Delay a promise a minimum amount of time
p-try Promise.try() ponyfill - Starts a promise chain
p-race A better Promise.race()
p-immediate Returns a promise resolved in the next event loop - think setImmediate()
p-time Measure the time a promise takes to resolve
p-defer Create a deferred promise
p-break Break out of a promise chain
p-is-promise Check if something is a promise
loud-rejection Make unhandled promise rejections fail loudly instead of the default silent fail
hard-rejection Make unhandled promise rejections fail hard right away instead of the default silent fail
@wolfram77 wolfram77 self-assigned this Apr 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant