cefn / watchable

Repo for @watchable/store and supporting packages.
MIT License
5 stars 1 forks source link

Nevermore adopt unpromise #79

Closed cefn closed 2 months ago

cefn commented 3 months ago

Use unpromise implementation for Promise.race safety as well as for per-job cancelPromise cleanup.

This adopts the unpromise implementation to avoid memory leaks inherent to NodeJS Promise.race.

It also exploits the raceReferences static method to create readable race handling (retiring named race which created derived promises with string values to allow easy logical comparisons). Now it just returns the promise reference itself structured in a 1-tuple.

Fixes the bug in the readme where a function in a documentation example didn't have an async signature.

Removes the select signature from the default implementation of PartitionStore. This was not intended to be there, and must have been left over from when Store had a select signature. It was never in the declared return type so should be safe to remove (as no one could use it).

Adds back coverage support to the tests.