@effect/tsgo 0.7.4 → 0.8.0
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 +2 -0
- package/dist/effect-tsgo.js +35 -1
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -101,6 +101,7 @@ Some diagnostics are off by default or have a default severity of suggestion, bu
|
|
|
101
101
|
<tr><td><code>missedPipeableOpportunity</code></td><td>➖</td><td>🔧</td><td>Suggests using .pipe() for nested function calls</td><td>✓</td><td>✓</td></tr>
|
|
102
102
|
<tr><td><code>missingEffectServiceDependency</code></td><td>➖</td><td></td><td>Checks that Effect.Service dependencies satisfy all required layer inputs</td><td>✓</td><td></td></tr>
|
|
103
103
|
<tr><td><code>nestedEffectGenYield</code></td><td>➖</td><td></td><td>Warns when yielding a nested bare Effect.gen inside an existing Effect generator context</td><td>✓</td><td>✓</td></tr>
|
|
104
|
+
<tr><td><code>redundantMapError</code></td><td>💡</td><td></td><td>Suggests hoisting a repeated trailing Effect.mapError from every yield in an Effect generator</td><td>✓</td><td>✓</td></tr>
|
|
104
105
|
<tr><td><code>redundantSchemaTagIdentifier</code></td><td>💡</td><td>🔧</td><td>Suggests removing redundant identifier argument when it equals the tag value in Schema.TaggedClass/TaggedError/TaggedRequest</td><td>✓</td><td>✓</td></tr>
|
|
105
106
|
<tr><td><code>schemaStructWithTag</code></td><td>💡</td><td>🔧</td><td>Suggests using Schema.TaggedStruct instead of Schema.Struct with _tag field</td><td>✓</td><td>✓</td></tr>
|
|
106
107
|
<tr><td><code>schemaUnionOfLiterals</code></td><td>➖</td><td>🔧</td><td>Suggests combining multiple Schema.Literal calls in Schema.Union into a single Schema.Literal</td><td>✓</td><td></td></tr>
|
|
@@ -111,6 +112,7 @@ Some diagnostics are off by default or have a default severity of suggestion, bu
|
|
|
111
112
|
<tr><td><code>unnecessaryFailYieldableError</code></td><td>💡</td><td>🔧</td><td>Suggests yielding yieldable errors directly instead of wrapping with Effect.fail</td><td>✓</td><td>✓</td></tr>
|
|
112
113
|
<tr><td><code>unnecessaryPipe</code></td><td>💡</td><td>🔧</td><td>Removes pipe calls with no arguments</td><td>✓</td><td>✓</td></tr>
|
|
113
114
|
<tr><td><code>unnecessaryPipeChain</code></td><td>💡</td><td>🔧</td><td>Simplifies chained pipe calls into a single pipe call</td><td>✓</td><td>✓</td></tr>
|
|
115
|
+
<tr><td><code>unnecessaryTypeofType</code></td><td>💡</td><td>🔧</td><td>Suggests replacing typeof Schema.Type style annotations with the matching named type when available</td><td>✓</td><td>✓</td></tr>
|
|
114
116
|
</tbody>
|
|
115
117
|
</table>
|
|
116
118
|
|
package/dist/effect-tsgo.js
CHANGED
|
@@ -199259,7 +199259,7 @@ var FileReadError = class extends TaggedError("FileReadError") {
|
|
|
199259
199259
|
//#endregion
|
|
199260
199260
|
//#region package.json
|
|
199261
199261
|
var name = "@effect/tsgo";
|
|
199262
|
-
var version = "0.
|
|
199262
|
+
var version = "0.8.0";
|
|
199263
199263
|
|
|
199264
199264
|
//#endregion
|
|
199265
199265
|
//#region src/setup/consts.ts
|
|
@@ -201204,6 +201204,23 @@ var rules = [
|
|
|
201204
201204
|
}]
|
|
201205
201205
|
}
|
|
201206
201206
|
},
|
|
201207
|
+
{
|
|
201208
|
+
"name": "redundantMapError",
|
|
201209
|
+
"group": "style",
|
|
201210
|
+
"description": "Suggests hoisting a repeated trailing Effect.mapError from every yield in an Effect generator",
|
|
201211
|
+
"defaultSeverity": "suggestion",
|
|
201212
|
+
"fixable": false,
|
|
201213
|
+
"supportedEffect": ["v3", "v4"],
|
|
201214
|
+
"codes": [377088, 377089],
|
|
201215
|
+
"preview": {
|
|
201216
|
+
"sourceText": "import { Effect } from \"effect\"\n\ndeclare const first: Effect.Effect<number, unknown>\ndeclare const second: Effect.Effect<string, unknown>\n\nclass RepoError {\n constructor(readonly args: { cause: unknown }) {}\n}\n\nexport const program = Effect.gen(function*() {\n yield* first.pipe(\n Effect.mapError((cause) => new RepoError({ cause }))\n )\n\n return yield* second.pipe(\n Effect.mapError((cause) => new RepoError({ cause }))\n )\n})\n",
|
|
201217
|
+
"diagnostics": [{
|
|
201218
|
+
"start": 246,
|
|
201219
|
+
"end": 255,
|
|
201220
|
+
"text": "This generator applies the same inline `Effect.mapError(...)` to every yielded effect. Keep that `Effect.mapError(...)` inline and hoist it once to the generator result: `Effect.gen(...).pipe(Effect.mapError(...))`, or `Effect.fn(function*(){ ... }, Effect.mapError(...))`. effect(redundantMapError)"
|
|
201221
|
+
}]
|
|
201222
|
+
}
|
|
201223
|
+
},
|
|
201207
201224
|
{
|
|
201208
201225
|
"name": "redundantSchemaTagIdentifier",
|
|
201209
201226
|
"group": "style",
|
|
@@ -201377,6 +201394,23 @@ var rules = [
|
|
|
201377
201394
|
"text": "This expression contains chained `pipe` calls that can be simplified to a single `pipe` call. effect(unnecessaryPipeChain)"
|
|
201378
201395
|
}]
|
|
201379
201396
|
}
|
|
201397
|
+
},
|
|
201398
|
+
{
|
|
201399
|
+
"name": "unnecessaryTypeofType",
|
|
201400
|
+
"group": "style",
|
|
201401
|
+
"description": "Suggests replacing typeof Schema.Type style annotations with the matching named type when available",
|
|
201402
|
+
"defaultSeverity": "suggestion",
|
|
201403
|
+
"fixable": true,
|
|
201404
|
+
"supportedEffect": ["v3", "v4"],
|
|
201405
|
+
"codes": [377090],
|
|
201406
|
+
"preview": {
|
|
201407
|
+
"sourceText": "import { Schema } from \"effect\"\n\nexport namespace UsersRepo {\n export const User = Schema.Struct({ id: Schema.Number })\n export type User = typeof User.Type\n}\n\nexport const preview: typeof UsersRepo.User.Type = { id: 1 }\n",
|
|
201408
|
+
"diagnostics": [{
|
|
201409
|
+
"start": 184,
|
|
201410
|
+
"end": 210,
|
|
201411
|
+
"text": "This `typeof ... .Type` query can be replaced with `UsersRepo.User`. effect(unnecessaryTypeofType)"
|
|
201412
|
+
}]
|
|
201413
|
+
}
|
|
201380
201414
|
}
|
|
201381
201415
|
];
|
|
201382
201416
|
var metadata_default = {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/tsgo",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Effect Language Service for TypeScript-Go — Effect-specific diagnostics and hover features.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -22,13 +22,13 @@
|
|
|
22
22
|
"README.md"
|
|
23
23
|
],
|
|
24
24
|
"optionalDependencies": {
|
|
25
|
-
"@effect/tsgo-win32-x64": "0.
|
|
26
|
-
"@effect/tsgo-win32-arm64": "0.
|
|
27
|
-
"@effect/tsgo-linux-x64": "0.
|
|
28
|
-
"@effect/tsgo-linux-arm64": "0.
|
|
29
|
-
"@effect/tsgo-linux-arm": "0.
|
|
30
|
-
"@effect/tsgo-darwin-x64": "0.
|
|
31
|
-
"@effect/tsgo-darwin-arm64": "0.
|
|
25
|
+
"@effect/tsgo-win32-x64": "0.8.0",
|
|
26
|
+
"@effect/tsgo-win32-arm64": "0.8.0",
|
|
27
|
+
"@effect/tsgo-linux-x64": "0.8.0",
|
|
28
|
+
"@effect/tsgo-linux-arm64": "0.8.0",
|
|
29
|
+
"@effect/tsgo-linux-arm": "0.8.0",
|
|
30
|
+
"@effect/tsgo-darwin-x64": "0.8.0",
|
|
31
|
+
"@effect/tsgo-darwin-arm64": "0.8.0"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@effect/platform-node": "^4.0.0-beta.66",
|