monio
proposal-error-cause
Our great sponsors
monio | proposal-error-cause | |
---|---|---|
19 | 6 | |
1,040 | 334 | |
- | - | |
6.7 | 5.7 | |
4 months ago | over 2 years ago | |
JavaScript | HTML | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
monio
- Monio: The most powerful IO monad implementation in JavaScript
-
GraphQL error handling to the max with Typescript, codegen and fp-ts
In order to make our throwing and unsafe APIs into safe data fetching functions, we'll use data types and techniques from the Functional Programming paradigm. In particular, we'll use the fp-ts library (but you can choose the FP library of your choice, e.g. purify, effect, monio, and others).
- monio: The most powerful IO monad implementation in JS
- Test github
- Functional Programming + Monads
proposal-error-cause
-
GraphQL error handling to the max with Typescript, codegen and fp-ts
:::note When using remote APIs, we often have the possibility to generate the types automatically from a JSON schema for REST APIs, from protobuf files for gRPC-based APIs, from a database schema, etc. You might even be using an external API through an SDK that already provides you with all types. In such cases, the creation of specialized Error classes is not mandatory. However, it might still be a good idea to do so to provide application-specific errors rather than bubbling up 3rd-party low-level errors. For such cases, the upcoming Ecma TC39 proposal for Error Cause is useful as it allows to chain errors. Polyfills exist: Pony Cause or error-cause. :::
-
Updates from the 86th meeting of TC39
Error Cause : .cause property on all Error types slides.
-
Pony Cause 1.0: Error Causes
The impact and cause provides the most value when paired with the other, and that's what Error Cause enables and what Pony Cause is is a ponyfill for and provides helpers for.
-
Error Cause in JavaScript
Well, we have error-cause on stage-3 for the same and with which we could do something like:
-
Updates from the 81st meeting of TC39
Error Cause: Enhancing errors with a distinct "cause".
-
Updates from 78th meeting of TC39
Error Cause
What are some alternatives?
Functional-Light-JS - Pragmatic, balanced FP in JavaScript. @FLJSBook on twitter.
proposal-intl-segmenter - Unicode text segmentation for ECMAScript
graphql-error-handling-with-union-and-fpts
proposal-temporal - Provides standard objects and functions for working with dates and times.
ts-belt - 🔧 Fast, modern, and practical utility library for FP in TypeScript.
pony-cause - Ponyfill and helpers for the standardized Error Causes
revocable-queue - Specialized async queue data structure, supports revocation of values
proposals - ✍️ Tracking the status of Babel's implementation of TC39 proposals (may be out of date)
domio - DOM and Event helpers for Monio
types-in-js - Tips and tricks for working with types in JavaScript
effect - A fully-fledged functional effect system for TypeScript with a rich standard library
proposal-resizablearraybuffer - Proposal for resizable array buffers