Skip to content

Make async interfaces consistent #557

Description

@dan-f

@RubenVerborgh pointed out in #555 that one roadblock to simply "promisifying" our callback-based async interfaces is that our callback interfaces don't all follow the same conventions.

I thought I'd open the discussion here as to how to deal with this. While I'm not the most familiar with node-solid-server I'll open up with some more general thoughts.

  • Promises introduced an async primitive to JS. Constructs like async/await and async iterators build on top of Promises, so our async APIs will have to be passing around Promises no matter what.
  • async/await is handy for dealing with promises in a more imperative style. Similar to do notation. I think it's pretty nifty, but I won't push it...
  • Are "modern" ES6/7/staging features important enough to folks that they'd want to use babel, or shall we stick to whatever's supported by the required node version?

Metadata

Metadata

Assignees

No one assigned

    Labels

    revisitNot a current priority, reconsider later

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions