diff --git a/package.json b/package.json index f92ac62a02b..8751f3fd5df 100644 --- a/package.json +++ b/package.json @@ -68,7 +68,7 @@ "prettier": "^3.2.5", "rimraf": "^5.0.5", "tsx": "^4.7.1", - "typescript": "^5.3.3", + "typescript": "npm:@typescript-deploys/pr-build@5.4.0-pr-54183-19", "vite": "^5.1.4", "vitest": "^1.3.1" }, diff --git a/packages/effect/src/internal/fiberRuntime.ts b/packages/effect/src/internal/fiberRuntime.ts index 352b0114f33..e1f9bc51beb 100644 --- a/packages/effect/src/internal/fiberRuntime.ts +++ b/packages/effect/src/internal/fiberRuntime.ts @@ -1520,6 +1520,19 @@ export const acquireRelease: { core.tap(acquire, (a) => addFinalizer((exit) => release(a, exit))) )) +/* @internal */ +export const acquireRelease2: { + ( + args: { + acquire: Effect.Effect + release: (a: NoInfer, exit: Exit.Exit) => Effect.Effect + } + ): Effect.Effect +} = ({ acquire, release }) => + core.uninterruptible( + core.tap(acquire, (a) => addFinalizer((exit) => release(a, exit))) + ) + /* @internal */ export const acquireReleaseInterruptible: { ( @@ -3084,12 +3097,14 @@ export const fiberRefLocallyScoped = dual< (self: FiberRef.FiberRef, value: A) => Effect.Effect >(2, (self, value) => core.asUnit( - acquireRelease( - core.flatMap( - core.fiberRefGet(self), - (oldValue) => core.as(core.fiberRefSet(self, value), oldValue) - ), - (oldValue) => core.fiberRefSet(self, oldValue) + acquireRelease2( + { + acquire: core.flatMap( + core.fiberRefGet(self), + (oldValue) => core.as(core.fiberRefSet(self, value), oldValue) + ), + release: (oldValue) => core.fiberRefSet(self, oldValue) + } ) )) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cbb9f48ecd9..3db35b9e073 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -51,10 +51,10 @@ importers: version: 0.7.6 '@effect/docgen': specifier: ^0.3.8 - version: 0.3.8(tsx@4.7.1)(typescript@5.3.3) + version: 0.3.8(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(tsx@4.7.1) '@effect/dtslint': specifier: ^0.0.5 - version: 0.0.5(typescript@5.3.3) + version: 0.0.5(@typescript-deploys/pr-build@5.4.0-pr-54183-19) '@effect/eslint-plugin': specifier: ^0.1.2 version: 0.1.2 @@ -66,10 +66,10 @@ importers: version: 20.11.20 '@typescript-eslint/eslint-plugin': specifier: ^7.0.2 - version: 7.0.2(@typescript-eslint/parser@7.0.2)(eslint@8.57.0)(typescript@5.3.3) + version: 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(@typescript-eslint/parser@7.0.2)(eslint@8.57.0) '@typescript-eslint/parser': specifier: ^7.0.2 - version: 7.0.2(eslint@8.57.0)(typescript@5.3.3) + version: 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) '@vitest/browser': specifier: ^1.3.1 version: 1.3.1(playwright@1.41.2)(vitest@1.3.1) @@ -93,7 +93,7 @@ importers: version: 0.23.0(eslint@8.57.0) eslint-plugin-deprecation: specifier: ^2.0.0 - version: 2.0.0(eslint@8.57.0)(typescript@5.3.3) + version: 2.0.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) eslint-plugin-import: specifier: ^2.29.1 version: 2.29.1(@typescript-eslint/parser@7.0.2)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) @@ -111,7 +111,7 @@ importers: version: 10.3.10 madge: specifier: ^6.1.0 - version: 6.1.0(typescript@5.3.3) + version: 6.1.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19) playwright: specifier: ^1.41.2 version: 1.41.2 @@ -125,8 +125,8 @@ importers: specifier: ^4.7.1 version: 4.7.1 typescript: - specifier: ^5.3.3 - version: 5.3.3 + specifier: npm:@typescript-deploys/pr-build@5.4.0-pr-54183-19 + version: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 vite: specifier: ^5.1.4 version: 5.1.4(@types/node@20.11.20) @@ -1214,7 +1214,7 @@ packages: hasBin: true dev: true - /@effect/docgen@0.3.8(tsx@4.7.1)(typescript@5.3.3): + /@effect/docgen@0.3.8(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(tsx@4.7.1): resolution: {integrity: sha512-yg777LXbKjgpHS+PC2dXS5tHTWRXQoCgcWJtM7CsNkZ2mefvmO7aufiRCaWYDnCF58otv10Tijuyanii4b2cxQ==} engines: {node: '>=16.17.1'} hasBin: true @@ -1227,18 +1227,18 @@ packages: markdown-toc: github.com/effect-ts/markdown-toc/4bfeb0f140105440ea0d12df2fa23199cc3ec1d5 prettier: 3.2.5 tsx: 4.7.1 - typescript: 5.3.3 + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 dev: true - /@effect/dtslint@0.0.5(typescript@5.3.3): + /@effect/dtslint@0.0.5(@typescript-deploys/pr-build@5.4.0-pr-54183-19): resolution: {integrity: sha512-LdVs+At5SBnWBIHeeeQozIfyx5/5Iv82wwtp63R/Lxq3X48yB7suug47x0nDSjJ/Xb82Lyihb2WJGzk5E1OgIw==} hasBin: true peerDependencies: typescript: ^5.x dependencies: fs-extra: 11.1.1 - tslint: 6.1.3(typescript@5.3.3) - typescript: 5.3.3 + tslint: 6.1.3(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 dev: true /@effect/eslint-plugin@0.1.2: @@ -2329,7 +2329,13 @@ packages: '@types/yargs-parser': 21.0.3 dev: true - /@typescript-eslint/eslint-plugin@7.0.2(@typescript-eslint/parser@7.0.2)(eslint@8.57.0)(typescript@5.3.3): + /@typescript-deploys/pr-build@5.4.0-pr-54183-19: + resolution: {integrity: sha512-lYN4Um5Bsy2cr0+wDy8znkGnDn7hkfQfgs53RKzXrgmyjPFHPlFlKX1JIpGPH1e7XTHK5AyrMCUinKHUXhBong==} + engines: {node: '>=14.17'} + hasBin: true + dev: true + + /@typescript-eslint/eslint-plugin@7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(@typescript-eslint/parser@7.0.2)(eslint@8.57.0): resolution: {integrity: sha512-/XtVZJtbaphtdrWjr+CJclaCVGPtOdBpFEnvtNf/jRV0IiEemRrL0qABex/nEt8isYcnFacm3nPHYQwL+Wb7qg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2341,10 +2347,10 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 7.0.2(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/parser': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) '@typescript-eslint/scope-manager': 7.0.2 - '@typescript-eslint/type-utils': 7.0.2(eslint@8.57.0)(typescript@5.3.3) - '@typescript-eslint/utils': 7.0.2(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/type-utils': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) + '@typescript-eslint/utils': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) '@typescript-eslint/visitor-keys': 7.0.2 debug: 4.3.4 eslint: 8.57.0 @@ -2352,13 +2358,13 @@ packages: ignore: 5.3.1 natural-compare: 1.4.0 semver: 7.6.0 - ts-api-utils: 1.2.1(typescript@5.3.3) - typescript: 5.3.3 + ts-api-utils: 1.2.1(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@7.0.2(eslint@8.57.0)(typescript@5.3.3): + /@typescript-eslint/parser@7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0): resolution: {integrity: sha512-GdwfDglCxSmU+QTS9vhz2Sop46ebNCXpPPvsByK7hu0rFGRHL+AusKQJ7SoN+LbLh6APFpQwHKmDSwN35Z700Q==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2370,11 +2376,11 @@ packages: dependencies: '@typescript-eslint/scope-manager': 7.0.2 '@typescript-eslint/types': 7.0.2 - '@typescript-eslint/typescript-estree': 7.0.2(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19) '@typescript-eslint/visitor-keys': 7.0.2 debug: 4.3.4 eslint: 8.57.0 - typescript: 5.3.3 + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 transitivePeerDependencies: - supports-color dev: true @@ -2395,7 +2401,7 @@ packages: '@typescript-eslint/visitor-keys': 7.0.2 dev: true - /@typescript-eslint/type-utils@7.0.2(eslint@8.57.0)(typescript@5.3.3): + /@typescript-eslint/type-utils@7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0): resolution: {integrity: sha512-IKKDcFsKAYlk8Rs4wiFfEwJTQlHcdn8CLwLaxwd6zb8HNiMcQIFX9sWax2k4Cjj7l7mGS5N1zl7RCHOVwHq2VQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2405,12 +2411,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 7.0.2(typescript@5.3.3) - '@typescript-eslint/utils': 7.0.2(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + '@typescript-eslint/utils': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) debug: 4.3.4 eslint: 8.57.0 - ts-api-utils: 1.2.1(typescript@5.3.3) - typescript: 5.3.3 + ts-api-utils: 1.2.1(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 transitivePeerDependencies: - supports-color dev: true @@ -2451,7 +2457,7 @@ packages: - supports-color dev: true - /@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3): + /@typescript-eslint/typescript-estree@6.21.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19): resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2467,13 +2473,13 @@ packages: is-glob: 4.0.3 minimatch: 9.0.3 semver: 7.6.0 - ts-api-utils: 1.2.1(typescript@5.3.3) - typescript: 5.3.3 + ts-api-utils: 1.2.1(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree@7.0.2(typescript@5.3.3): + /@typescript-eslint/typescript-estree@7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19): resolution: {integrity: sha512-3AMc8khTcELFWcKcPc0xiLviEvvfzATpdPj/DXuOGIdQIIFybf4DMT1vKRbuAEOFMwhWt7NFLXRkbjsvKZQyvw==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2489,13 +2495,13 @@ packages: is-glob: 4.0.3 minimatch: 9.0.3 semver: 7.6.0 - ts-api-utils: 1.2.1(typescript@5.3.3) - typescript: 5.3.3 + ts-api-utils: 1.2.1(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.3.3): + /@typescript-eslint/utils@6.21.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0): resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2506,7 +2512,7 @@ packages: '@types/semver': 7.5.8 '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.21.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19) eslint: 8.57.0 semver: 7.6.0 transitivePeerDependencies: @@ -2514,7 +2520,7 @@ packages: - typescript dev: true - /@typescript-eslint/utils@7.0.2(eslint@8.57.0)(typescript@5.3.3): + /@typescript-eslint/utils@7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0): resolution: {integrity: sha512-PZPIONBIB/X684bhT1XlrkjNZJIEevwkKDsdwfiu1WeqBxYEEdIgVDgm8/bbKHVu+6YOpeRqcfImTdImx/4Bsw==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2525,7 +2531,7 @@ packages: '@types/semver': 7.5.8 '@typescript-eslint/scope-manager': 7.0.2 '@typescript-eslint/types': 7.0.2 - '@typescript-eslint/typescript-estree': 7.0.2(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19) eslint: 8.57.0 semver: 7.6.0 transitivePeerDependencies: @@ -3763,7 +3769,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 7.0.2(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/parser': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) debug: 3.2.7 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 @@ -3804,17 +3810,17 @@ packages: - supports-color dev: true - /eslint-plugin-deprecation@2.0.0(eslint@8.57.0)(typescript@5.3.3): + /eslint-plugin-deprecation@2.0.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0): resolution: {integrity: sha512-OAm9Ohzbj11/ZFyICyR5N6LbOIvQMp7ZU2zI7Ej0jIc8kiGUERXPNMfw2QqqHD1ZHtjMub3yPZILovYEYucgoQ==} peerDependencies: eslint: ^7.0.0 || ^8.0.0 typescript: ^4.2.4 || ^5.0.0 dependencies: - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.21.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) eslint: 8.57.0 tslib: 2.6.2 - tsutils: 3.21.0(typescript@5.3.3) - typescript: 5.3.3 + tsutils: 3.21.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 transitivePeerDependencies: - supports-color dev: true @@ -3829,7 +3835,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 7.0.2(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/parser': 7.0.2(@typescript-deploys/pr-build@5.4.0-pr-54183-19)(eslint@8.57.0) array-includes: 3.1.7 array.prototype.findlastindex: 1.2.4 array.prototype.flat: 1.3.2 @@ -5304,7 +5310,7 @@ packages: yallist: 4.0.0 dev: true - /madge@6.1.0(typescript@5.3.3): + /madge@6.1.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19): resolution: {integrity: sha512-irWhT5RpFOc6lkzGHKLihonCVgM0YtfNUh4IrFeW3EqHpnt/JHUG3z26j8PeJEktCGB4tmGOOOJi1Rl/ACWucQ==} engines: {node: '>=14'} hasBin: true @@ -5335,7 +5341,7 @@ packages: rc: 1.2.8 stream-to-array: 2.3.0 ts-graphviz: 1.8.2 - typescript: 5.3.3 + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 walkdir: 0.4.1 transitivePeerDependencies: - supports-color @@ -6998,13 +7004,13 @@ packages: engines: {node: '>=8'} dev: true - /ts-api-utils@1.2.1(typescript@5.3.3): + /ts-api-utils@1.2.1(@typescript-deploys/pr-build@5.4.0-pr-54183-19): resolution: {integrity: sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==} engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' dependencies: - typescript: 5.3.3 + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 dev: true /ts-graphviz@1.8.2: @@ -7038,7 +7044,7 @@ packages: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} dev: true - /tslint@6.1.3(typescript@5.3.3): + /tslint@6.1.3(@typescript-deploys/pr-build@5.4.0-pr-54183-19): resolution: {integrity: sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==} engines: {node: '>=4.8.0'} deprecated: TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information. @@ -7058,17 +7064,27 @@ packages: resolve: 1.22.8 semver: 5.7.2 tslib: 1.14.1 - tsutils: 2.29.0(typescript@5.3.3) - typescript: 5.3.3 + tsutils: 2.29.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19) + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 dev: true - /tsutils@2.29.0(typescript@5.3.3): + /tsutils@2.29.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19): resolution: {integrity: sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==} peerDependencies: typescript: '>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev' dependencies: tslib: 1.14.1 - typescript: 5.3.3 + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 + dev: true + + /tsutils@3.21.0(@typescript-deploys/pr-build@5.4.0-pr-54183-19): + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + dependencies: + tslib: 1.14.1 + typescript: /@typescript-deploys/pr-build@5.4.0-pr-54183-19 dev: true /tsutils@3.21.0(typescript@5.3.3):