@systemfsoftware/all 0.3.0 → 1.0.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.
Files changed (2) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/package.json +14 -14
package/CHANGELOG.md CHANGED
@@ -1,5 +1,41 @@
1
1
  # @systemfsoftware/all
2
2
 
3
+ ## 1.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - A hand-written `_tag` member in a type is now an error.
8
+
9
+ `no-manual-tag-member` reports a `_tag` property signature in any type position — a type alias, an
10
+ interface body, or a type literal inside a union. The diagnostic names the replacement:
11
+ `Schema.TaggedStruct` for a plain variant, `Schema.TaggedError` for an error-shaped one, or
12
+ `Schema.Schema.Type` derivation when the members carry type parameters.
13
+
14
+ Before reaching for a replacement, check whether the union is needed at all. Two cases retire it
15
+ outright: no consumer distinguishes the variants, so all but one can go; or every construction site
16
+ already knows which variant it builds, so those operations can be called by name and the union and
17
+ its dispatcher deleted. Where the union survives and its members are encodable, derive the tag from
18
+ a schema. Only where a member cannot be encoded at all — a running effect, a stream, a foreign
19
+ prototype — declare the tag once as a value and let the type inherit it; that form forces no
20
+ constructor and validates nothing, so it is the last answer rather than the first.
21
+
22
+ The rule has no options, no allowlist and no per-package disable, and it is on in the recommended
23
+ preset — so upgrading reports every `_tag` member your types declare, in one pass. It is silent in
24
+ `.tst.ts` type-test fixtures, and only there: every replacement it names is a runtime value, and a
25
+ type-test fixture holds none, so firing there could only be answered by a value that exists to be
26
+ read back by `typeof`.
27
+
28
+ ### Patch Changes
29
+
30
+ - The peer requirements for `effect` and for the Effect test-runner integration now accept any compatible `4.0.0-rc` release, instead of demanding one exact release candidate.
31
+
32
+ Installing alongside a newer release candidate no longer reports an unmet peer dependency or resolves a second copy of `effect` into the dependency tree.
33
+
34
+ - Updated dependencies:
35
+ - @systemfsoftware/oxlint-plugin-effect-dmmf@4.0.0
36
+ - @systemfsoftware/oxlint-plugin-effect-schema@4.0.0
37
+ - @systemfsoftware/oxlint-plugin-effect-workflow@4.0.0
38
+
3
39
  ## 0.3.0
4
40
 
5
41
  ### Minor Changes
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@systemfsoftware/all",
3
3
  "license": "Apache-2.0",
4
- "version": "0.3.0",
4
+ "version": "1.0.0",
5
5
  "author": "Ryan Lee <drdgvhbh@gmail.com>",
6
6
  "repository": {
7
7
  "type": "git",
@@ -27,31 +27,31 @@
27
27
  "dist"
28
28
  ],
29
29
  "dependencies": {
30
- "@systemfsoftware/oxlint-plugin-effect-dmmf": "^3.0.0",
31
- "@systemfsoftware/oxlint-plugin-cell-vocabulary": "^1.2.0",
32
- "@systemfsoftware/oxlint-plugin-effect-entrypoint": "^1.0.4",
33
- "@systemfsoftware/oxlint-plugin-effect-schema": "^3.0.0",
34
- "@systemfsoftware/oxlint-plugin": "^2.0.0",
35
- "@systemfsoftware/oxlint-plugin-property-testing": "^1.3.0",
36
- "@systemfsoftware/oxlint-plugin-test-hygiene": "^1.1.4",
37
- "@systemfsoftware/oxlint-plugin-effect-workflow": "^3.0.0",
30
+ "@systemfsoftware/oxlint-plugin": "^2.1.0",
31
+ "@systemfsoftware/oxlint-plugin-cell-vocabulary": "^1.2.1",
32
+ "@systemfsoftware/oxlint-plugin-effect-entrypoint": "^1.0.5",
33
+ "@systemfsoftware/oxlint-plugin-effect-dmmf": "^4.0.0",
34
+ "@systemfsoftware/oxlint-plugin-effect-workflow": "^4.0.0",
38
35
  "@systemfsoftware/oxlint-plugin-recommended": "^1.1.3",
39
- "@systemfsoftware/oxlint-plugin-test-placement": "^3.0.0"
36
+ "@systemfsoftware/oxlint-plugin-test-placement": "^3.1.0",
37
+ "@systemfsoftware/oxlint-plugin-property-testing": "^1.3.1",
38
+ "@systemfsoftware/oxlint-plugin-effect-schema": "^4.0.0",
39
+ "@systemfsoftware/oxlint-plugin-test-hygiene": "^1.1.5"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@systemfsoftware/arethetypeswrong-cli": "^1.1.1",
43
43
  "@types/node": "^24",
44
- "effect": "4.0.0-rc.108",
44
+ "effect": "4.0.0-rc.111",
45
45
  "oxlint": "^1.77.0",
46
46
  "oxlint-tsgolint": ">=0.24.0",
47
47
  "rimraf": "^6.1.3",
48
48
  "tsdown": "^0.22.14",
49
49
  "typescript": "^7",
50
- "@systemfsoftware/tsconfig": "^1.3.3",
51
- "@systemfsoftware/oxlint-config": "^0.1.0"
50
+ "@systemfsoftware/oxlint-config": "^0.1.0",
51
+ "@systemfsoftware/tsconfig": "^1.3.3"
52
52
  },
53
53
  "peerDependencies": {
54
- "effect": "4.0.0-rc.108",
54
+ "effect": "^4.0.0-rc.111",
55
55
  "oxlint": "^1.77.0",
56
56
  "oxlint-tsgolint": ">=0.24.0",
57
57
  "typescript": ">=5.0.0"