@effect/tsgo 0.21.0 → 0.22.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
@@ -49,6 +49,7 @@ Some diagnostics are off by default or have a default severity of suggestion, bu
49
49
  <tr><td><code>nonObjectEffectServiceType</code></td><td>❌</td><td></td><td>Ensures Effect.Service types are objects, not primitives</td><td>✓</td><td></td></tr>
50
50
  <tr><td><code>outdatedApi</code></td><td>⚠️</td><td></td><td>Detects usage of APIs that have been removed or renamed in Effect v4</td><td></td><td>✓</td></tr>
51
51
  <tr><td><code>overriddenSchemaConstructor</code></td><td>❌</td><td>🔧</td><td>Prevents overriding constructors in Schema classes which breaks decoding behavior</td><td>✓</td><td>✓</td></tr>
52
+ <tr><td><code>schemaOpaqueInstanceMember</code></td><td>❌</td><td></td><td>Disallows instance members in classes extending Schema.Opaque</td><td></td><td>✓</td></tr>
52
53
  <tr><td colspan="6"><strong>Anti-pattern</strong> <em>Discouraged patterns that often lead to bugs or confusing behavior.</em></td></tr>
53
54
  <tr><td><code>catchUnfailableEffect</code></td><td>💡</td><td></td><td>Warns when using error handling on Effects that never fail</td><td>✓</td><td>✓</td></tr>
54
55
  <tr><td><code>effectFnIife</code></td><td>⚠️</td><td>🔧</td><td>Effect.fn or Effect.fnUntraced is called as an IIFE; use Effect.gen instead</td><td>✓</td><td>✓</td></tr>
@@ -204851,7 +204851,7 @@ var FileReadError = class extends TaggedError("FileReadError") {
204851
204851
  //#endregion
204852
204852
  //#region package.json
204853
204853
  var name = "@effect/tsgo";
204854
- var version = "0.21.0";
204854
+ var version = "0.22.0";
204855
204855
 
204856
204856
  //#endregion
204857
204857
  //#region src/setup/consts.ts
@@ -205975,6 +205975,27 @@ var rules = [
205975
205975
  }]
205976
205976
  }
205977
205977
  },
205978
+ {
205979
+ "name": "schemaOpaqueInstanceMember",
205980
+ "group": "correctness",
205981
+ "description": "Disallows instance members in classes extending Schema.Opaque",
205982
+ "defaultSeverity": "error",
205983
+ "fixable": false,
205984
+ "supportedEffect": ["v4"],
205985
+ "codes": [377102],
205986
+ "preview": {
205987
+ "sourceText": "import { Schema } from \"effect\"\n\nclass User extends Schema.Opaque<User>()(Schema.Struct({ name: Schema.String })) {\n displayName = \"User\"\n greet() {\n return `Hello, ${this.displayName}`\n }\n}\n",
205988
+ "diagnostics": [{
205989
+ "start": 118,
205990
+ "end": 129,
205991
+ "text": "Classes extending `Schema.Opaque` must not declare instance members. effect(schemaOpaqueInstanceMember)"
205992
+ }, {
205993
+ "start": 141,
205994
+ "end": 146,
205995
+ "text": "Classes extending `Schema.Opaque` must not declare instance members. effect(schemaOpaqueInstanceMember)"
205996
+ }]
205997
+ }
205998
+ },
205978
205999
  {
205979
206000
  "name": "catchUnfailableEffect",
205980
206001
  "group": "antipattern",
@@ -207859,7 +207880,7 @@ const gatherTargetState = (assessment, context) => gen(function* () {
207859
207880
 
207860
207881
  //#endregion
207861
207882
  //#region upstream.json
207862
- var tsVersion = "7.1.0-dev.20260713.1";
207883
+ var tsVersion = "7.1.0-dev.20260714.1";
207863
207884
 
207864
207885
  //#endregion
207865
207886
  //#region src/setup/index.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/tsgo",
3
- "version": "0.21.0",
3
+ "version": "0.22.0",
4
4
  "description": "Effect Language Service for TypeScript-Go — Effect-specific diagnostics and hover features.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -23,13 +23,13 @@
23
23
  "schema.json"
24
24
  ],
25
25
  "optionalDependencies": {
26
- "@effect/tsgo-win32-x64": "0.21.0",
27
- "@effect/tsgo-win32-arm64": "0.21.0",
28
- "@effect/tsgo-linux-x64": "0.21.0",
29
- "@effect/tsgo-linux-arm64": "0.21.0",
30
- "@effect/tsgo-linux-arm": "0.21.0",
31
- "@effect/tsgo-darwin-x64": "0.21.0",
32
- "@effect/tsgo-darwin-arm64": "0.21.0"
26
+ "@effect/tsgo-win32-x64": "0.22.0",
27
+ "@effect/tsgo-win32-arm64": "0.22.0",
28
+ "@effect/tsgo-linux-arm64": "0.22.0",
29
+ "@effect/tsgo-linux-arm": "0.22.0",
30
+ "@effect/tsgo-linux-x64": "0.22.0",
31
+ "@effect/tsgo-darwin-x64": "0.22.0",
32
+ "@effect/tsgo-darwin-arm64": "0.22.0"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@effect/platform-node": "^4.0.0-beta.83",