Skip to content

[RFC]: Refactor mapFunAsync to Include Status Tracking #5800

Open
@Bhumika-00

Description

@Bhumika-00

Description

This RFC proposes refactoring the mapFunAsync function in @stdlib/utils-async-map-function to return an object that allows querying the status of in-flight asynchronous operations. This aligns with the goal of achieving feature parity with async.js while improving observability of async execution states.

Related Issues

Related issues #9 which states that we need to achive parity with async.js.
Changes:

Modified mapFunAsync to return an object containing:

status: Tracks the state (pending, completed, or error).

getStatus(): Method to retrieve the current state.

cancel(): Method to cancel execution (if applicable in the future).

Updated tests to validate the new behavior.

Updated documentation to reflect the API changes.

Motivation:
This refactor improves the usability of mapFunAsync by enabling users to track ongoing async operations, which is particularly useful in long-running tasks or when debugging async workflows.
@kgryte @Planeshifter @steff456

Questions

No.

Other

No.

Checklist

  • I have read and understood the Code of Conduct.
  • Searched for existing issues and pull requests.
  • The issue name begins with RFC:.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions