proposal-error-cause
proposal-class-static-block
proposal-error-cause | proposal-class-static-block | |
---|---|---|
6 | 5 | |
334 | 97 | |
- | - | |
5.7 | 7.3 | |
over 2 years ago | over 2 years ago | |
HTML | HTML | |
MIT License | BSD 3-clause "New" or "Revised" 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.
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
proposal-class-static-block
-
Class Static Initialization Blocks in JavaScript
If you often find yourself working with static fields you may find static initialization blocks to be a useful feature. They can help make static initialization easier. I hope that this post helped you understand what class static initialization blocks in JavaScript are and how to use them. If you want to learn more about this feature, you can take a look at the proposal available on GitHub.
-
Updates from the 85th meeting of TC39
Class Static Blocks Class static blocks provide a mechanism to perform additional static initialization during class definition evaluation.
-
ES2022 feature: class static initialization blocks
Before bashing a new feature make sure to read then criticize the actual proposal [1]. I personally think the proposal makes sense mostly because of private fields since it is very awkward to initialize those fields outside of the class.
[1] https://github.com/tc39/proposal-class-static-block
-
TypeScript 4.4: The Good, The Bad and The Not So Bad
It’s an upcoming ECMAScript feature that’s currently a stage 3 proposal. static blocks allow for a more complex initiation process of static class members.
-
Updates from 78th meeting of TC39
Class static initialization block.
What are some alternatives?
proposal-intl-segmenter - Unicode text segmentation for ECMAScript
proposal-array-from-async - Draft specification for a proposed Array.fromAsync method in JavaScript.
proposal-temporal - Provides standard objects and functions for working with dates and times.
proposal-intl-locale-info - An API to expose information of locale, such as week data ( first day of a week, weekend start, weekend end), hour cycle, measurement system, commonly used calendar, etc.
pony-cause - Ponyfill and helpers for the standardized Error Causes
proposal-intl-enumeration - Return supported values of options, such as timeZone, calendars, numberingSystems, currencies, units
proposals - ✍️ Tracking the status of Babel's implementation of TC39 proposals (may be out of date)
proposal-structs - JavaScript Structs: Fixed Layout Objects
types-in-js - Tips and tricks for working with types in JavaScript
proposal-string-dedent - TC39 Proposal to remove common leading indentation from multiline template strings
proposal-resizablearraybuffer - Proposal for resizable array buffers
proposal-deiter - Double-Ended Iterator and Destructuring