resultar 3.0.0-alpha.2 → 3.0.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -11
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -97,7 +97,7 @@ in normal TypeScript.
|
|
|
97
97
|
| Production errors need stable names and metadata | `createTaggedError` classes with `_tag`, template props, `cause`, and `.toJSON()` |
|
|
98
98
|
| Async flows turn into nested `try/catch` | `tryResultAsync`, `andThen`, `asyncAndThen`, `map`, `orElse`, `safeTry` |
|
|
99
99
|
| Boundary handlers miss cases | `matchTags` for exhaustive tagged-error handling |
|
|
100
|
-
| Results are easy to ignore | `resultar-
|
|
100
|
+
| Results are easy to ignore | `resultar-lint check` and the `resultar-lint` TypeScript plugin |
|
|
101
101
|
| You do not want another application runtime | A small ESM library around explicit values |
|
|
102
102
|
|
|
103
103
|
Nested `try/catch` often masks the error the caller actually needs:
|
|
@@ -562,11 +562,11 @@ const config = safeTry({
|
|
|
562
562
|
|
|
563
563
|
## No-Discard Validation
|
|
564
564
|
|
|
565
|
-
Resultar values should not be ignored. Install `resultar-
|
|
565
|
+
Resultar values should not be ignored. Install `resultar-lint` to report discarded `Result` and
|
|
566
566
|
`ResultAsync` values.
|
|
567
567
|
|
|
568
568
|
```sh
|
|
569
|
-
pnpm add -D resultar-
|
|
569
|
+
pnpm add -D resultar-lint typescript
|
|
570
570
|
```
|
|
571
571
|
|
|
572
572
|
Add a lint-like script:
|
|
@@ -574,7 +574,7 @@ Add a lint-like script:
|
|
|
574
574
|
```json
|
|
575
575
|
{
|
|
576
576
|
"scripts": {
|
|
577
|
-
"lint:resultar": "resultar-
|
|
577
|
+
"lint:resultar": "resultar-lint check --project tsconfig.json"
|
|
578
578
|
}
|
|
579
579
|
}
|
|
580
580
|
```
|
|
@@ -598,7 +598,7 @@ For editor diagnostics, enable the TypeScript language-service plugin:
|
|
|
598
598
|
```json
|
|
599
599
|
{
|
|
600
600
|
"compilerOptions": {
|
|
601
|
-
"plugins": [{ "name": "resultar-
|
|
601
|
+
"plugins": [{ "name": "resultar-lint", "noDiscard": "error" }]
|
|
602
602
|
}
|
|
603
603
|
}
|
|
604
604
|
```
|
|
@@ -607,9 +607,9 @@ TypeScript language-service plugins are editor-only by default. To make `tsc` re
|
|
|
607
607
|
diagnostics during builds, patch the local TypeScript installation:
|
|
608
608
|
|
|
609
609
|
```sh
|
|
610
|
-
pnpm exec resultar-
|
|
611
|
-
pnpm exec resultar-
|
|
612
|
-
pnpm exec resultar-
|
|
610
|
+
pnpm exec resultar-lint patch
|
|
611
|
+
pnpm exec resultar-lint doctor
|
|
612
|
+
pnpm exec resultar-lint unpatch
|
|
613
613
|
```
|
|
614
614
|
|
|
615
615
|
For TypeScript 7 native-preview projects, `resultar-tsgo` exposes a `tsgo` wrapper that runs native
|
|
@@ -674,7 +674,7 @@ More focused material:
|
|
|
674
674
|
|
|
675
675
|
- [Type-safe error handling article, English](articles/en/type-safe.md)
|
|
676
676
|
- [Artigo sobre tratamento de erros type-safe, Portuguese](articles/pt/type-safe.md)
|
|
677
|
-
- [resultar-
|
|
677
|
+
- [resultar-lint package guide](packages/resultar-lint/README.md)
|
|
678
678
|
- [resultar-tsgo package guide](packages/resultar-tsgo/README.md)
|
|
679
679
|
|
|
680
680
|
## Workspace
|
|
@@ -682,11 +682,11 @@ More focused material:
|
|
|
682
682
|
This repository is a pnpm workspace:
|
|
683
683
|
|
|
684
684
|
- `packages/resultar`: Resultar runtime package.
|
|
685
|
-
- `packages/resultar-
|
|
685
|
+
- `packages/resultar-lint`: TypeScript language-service diagnostics and no-discard CLI.
|
|
686
686
|
- `packages/resultar-tsgo`: TypeScript 7 native-preview `tsgo` wrapper plus Resultar no-discard
|
|
687
687
|
validation.
|
|
688
688
|
- `benchmarks`: benchmark package.
|
|
689
|
-
- `examples/
|
|
689
|
+
- `examples/resultar-lint`: TypeScript 6 no-discard smoke example.
|
|
690
690
|
- `examples/tsgo`: TypeScript 7 native-preview smoke example.
|
|
691
691
|
|
|
692
692
|
Common commands:
|