@effect/tsgo 0.11.4 → 0.12.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # Effect Language Service (TypeScript-Go)
2
2
 
3
- A wrapper around [TypeScript-Go](https://github.com/nicolo-ribaudo/TypeScript-Go) that builds the Effect Language Service, providing Effect-TS diagnostics and quick fixes.
3
+ A wrapper around [TypeScript-Go](https://github.com/microsoft/TypeScript-Go) that builds the Effect Language Service, providing Effect-TS diagnostics and quick fixes.
4
4
  This project targets **Effect V4** (codename: "smol") primarily and also Effect V3.
5
5
 
6
6
  ## Currently in Alpha
@@ -93,6 +93,7 @@ Some diagnostics are off by default or have a default severity of suggestion, bu
93
93
  <tr><td><code>unsafeEffectTypeAssertion</code></td><td>➖</td><td>🔧</td><td>Detects unsafe type assertions that narrow Effect, Stream, or Layer error or requirements channels</td><td>✓</td><td>✓</td></tr>
94
94
  <tr><td colspan="6"><strong>Style</strong> <em>Cleanup, consistency, and idiomatic Effect code.</em></td></tr>
95
95
  <tr><td><code>catchAllToMapError</code></td><td>💡</td><td>🔧</td><td>Suggests using Effect.mapError instead of Effect.catch + Effect.fail</td><td>✓</td><td>✓</td></tr>
96
+ <tr><td><code>catchToOrElseSucceed</code></td><td>💡</td><td>🔧</td><td>Suggests using Effect.orElseSucceed instead of Effect.catch + Effect.succeed</td><td>✓</td><td>✓</td></tr>
96
97
  <tr><td><code>deterministicKeys</code></td><td>➖</td><td>🔧</td><td>Enforces deterministic naming for service/tag/error identifiers based on class names</td><td>✓</td><td>✓</td></tr>
97
98
  <tr><td><code>effectDoNotation</code></td><td>➖</td><td></td><td>Suggests using Effect.gen or Effect.fn instead of the Effect.Do notation helpers</td><td>✓</td><td>✓</td></tr>
98
99
  <tr><td><code>effectFnOpportunity</code></td><td>💡</td><td>🔧</td><td>Suggests using Effect.fn for functions that return an Effect</td><td>✓</td><td>✓</td></tr>
@@ -182,7 +183,7 @@ Some diagnostics are off by default or have a default severity of suggestion, bu
182
183
 
183
184
  ### Relationship to Official TypeScript-Go (`tsgo`)
184
185
 
185
- Effect-tsgo is a **superset** of the official [TypeScript-Go](https://github.com/nicolo-ribaudo/TypeScript-Go) — it embeds a pinned version of `tsgo` with a small patch set on top and adds the Effect language service. This means `effect-tsgo` provides all standard TypeScript-Go functionality plus Effect-specific diagnostics, quick fixes, and refactors.
186
+ Effect-tsgo is a **superset** of the official [TypeScript-Go](https://github.com/microsoft/TypeScript-Go) — it embeds a pinned version of `tsgo` with a small patch set on top and adds the Effect language service. This means `effect-tsgo` provides all standard TypeScript-Go functionality plus Effect-specific diagnostics, quick fixes, and refactors.
186
187
 
187
188
  **Use `effect-tsgo` instead of `tsgo`, not alongside it.** Running both in parallel will produce duplicate diagnostics and degrade editor performance. Configure your editor to use `effect-tsgo` as your sole TypeScript language server.
188
189
 
@@ -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.11.4";
199262
+ var version = "0.12.0";
199263
199263
 
199264
199264
  //#endregion
199265
199265
  //#region src/setup/consts.ts
@@ -201068,6 +201068,23 @@ var rules = [
201068
201068
  }]
201069
201069
  }
201070
201070
  },
201071
+ {
201072
+ "name": "catchToOrElseSucceed",
201073
+ "group": "style",
201074
+ "description": "Suggests using Effect.orElseSucceed instead of Effect.catch + Effect.succeed",
201075
+ "defaultSeverity": "suggestion",
201076
+ "fixable": true,
201077
+ "supportedEffect": ["v3", "v4"],
201078
+ "codes": [377095],
201079
+ "preview": {
201080
+ "sourceText": "import { Effect } from \"effect\"\n\nexport const program = Effect.fail(\"error\").pipe(\n Effect.catch(() => Effect.succeed(42))\n)\n",
201081
+ "diagnostics": [{
201082
+ "start": 85,
201083
+ "end": 97,
201084
+ "text": "`Effect.orElseSucceed` expresses the same recovery more directly than `Effect.catch` followed by `Effect.succeed`. effect(catchToOrElseSucceed)"
201085
+ }]
201086
+ }
201087
+ },
201071
201088
  {
201072
201089
  "name": "deterministicKeys",
201073
201090
  "group": "style",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/tsgo",
3
- "version": "0.11.4",
3
+ "version": "0.12.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.11.4",
26
- "@effect/tsgo-win32-arm64": "0.11.4",
27
- "@effect/tsgo-linux-x64": "0.11.4",
28
- "@effect/tsgo-linux-arm64": "0.11.4",
29
- "@effect/tsgo-linux-arm": "0.11.4",
30
- "@effect/tsgo-darwin-x64": "0.11.4",
31
- "@effect/tsgo-darwin-arm64": "0.11.4"
25
+ "@effect/tsgo-win32-arm64": "0.12.0",
26
+ "@effect/tsgo-win32-x64": "0.12.0",
27
+ "@effect/tsgo-linux-x64": "0.12.0",
28
+ "@effect/tsgo-linux-arm64": "0.12.0",
29
+ "@effect/tsgo-linux-arm": "0.12.0",
30
+ "@effect/tsgo-darwin-x64": "0.12.0",
31
+ "@effect/tsgo-darwin-arm64": "0.12.0"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@effect/platform-node": "^4.0.0-beta.66",