You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#6144ec5c505 Thanks @LikiosSedo! - Fix --log-level=value equals syntax incorrectly swallowing the next argument. Only skip the next arg when the previous arg is exactly --log-level (space-separated form).
#7320674371 Thanks @mattiamanzati! - Update the Effect v4 test harness and language service development dependencies to Effect 4.0.0 beta 66, including fixture updates for the latest Context service API.
#728a5b0e47 Thanks @mattiamanzati! - Add the unsafeEffectTypeAssertion diagnostic to catch as Effect<...>, as Stream<...>, and as Layer<...> assertions that unsafely narrow the error or requirements channels.
The rule skips channels whose original type is any and offers a quick fix that removes the assertion while preserving the original expression.
#726fd4a8da Thanks @mattiamanzati! - Update the Effect v4 beta examples and type parsing to match the renamed Context APIs in the latest 4.0.0-beta releases.
#72414d5798 Thanks @mattiamanzati! - Refactor Effect context tracking to use cached node context flags and direct generator lookups.
This aligns the TypeScript implementation more closely with the TSGo version and simplifies diagnostics that need to detect whether code is inside an Effect generator.
#723da9cc4b Thanks @mattiamanzati! - Add the effectMapFlatten style diagnostic for Effect.map(...) immediately followed by Effect.flatten in pipe flows.
#7180af7c0f Thanks @mattiamanzati! - Add the lazyPromiseInEffectSync diagnostic to catch Effect.sync(() => Promise...) patterns and suggest using Effect.promise or Effect.tryPromise for async work.
Example:
Effect.sync(()=>Promise.resolve(1));
#71432985b2 Thanks @mattiamanzati! - Add processEnv and processEnvInEffect diagnostics to guide process.env.* reads toward Effect Config APIs.
Examples:
process.env.PORT
process.env["API_KEY"]
#721f05ae89 Thanks @mattiamanzati! - Add the unnecessaryArrowBlock style diagnostic for arrow functions whose block body only returns an expression.
Example:
consttrim=(value: string)=>{returnvalue.trim();};
#717b77848a Thanks @mattiamanzati! - Add newPromise and asyncFunction effect-native diagnostics to report manual Promise construction and async function declarations, with guidance toward Effect-based async control flow.
#7226f19858 Thanks @mattiamanzati! - Add the effectDoNotation style diagnostic for Effect.Do usage and suggest migrating to Effect.gen or Effect.fn.
Example:
import{pipe}from"effect/Function";import{Effect}from"effect";constprogram=pipe(Effect.Do,Effect.bind("a",()=>Effect.succeed(1)),Effect.let("b",({ a })=>a+1));
#716c3f67b0 Thanks @mattiamanzati! - Add cryptoRandomUUID and cryptoRandomUUIDInEffect diagnostics for Effect v4 to discourage crypto.randomUUID() in favor of the Effect Random module, which uses Effect-injected randomness instead of the global crypto implementation.
Patch Changes
#719d23980a Thanks @mattiamanzati! - Update the Effect v4 beta dependencies to 4.0.0-beta.43 for the language service and v4 harness packages.
#6191c016642 Thanks @IGassmann! - Update msgpackr to 1.11.10 to fix silent decode failures in environments that block new Function() at runtime (e.g. Cloudflare Workers). The new version wraps the JIT new Function() call in a try/catch, falling back to the interpreted path when dynamic code evaluation is blocked.
#619474f3267 Thanks @mikearnaldi! - Fix TestClock.unsafeCurrentTimeNanos() to floor fractional millisecond instants before converting them to BigInt.
#6139f99048e Thanks @marbemac! - Fix batched request resolver defects causing consumer fibers to hang forever.
When a RequestResolver.makeBatched resolver died with a defect, the request Deferreds were never completed because the cleanup logic in invokeWithInterrupt used flatMap (which only runs on success). Changed to ensuring so uncompleted request entries are always resolved regardless of exit type.
tracing.startHar() / tracing.stopHar() expose HAR recording as a first-class tracing API, with the same content, mode and urlFilter options as recordHar. The returned Disposable makes it easy to scope a recording with await using:
awaitusinghar=awaitcontext.tracing.startHar('trace.har');constpage=awaitcontext.newPage();awaitpage.goto('https://playwright.dev');// HAR is finalized when `har` goes out of scope.
🪝 Drop API
New locator.drop() simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches dragenter, dragover, and drop with a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:
New test.abort() aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:
test('does not publish to the shared page',async({ page })=>{awaitpage.route('**/publish',route=>{test.abort('Tests must not publish to the shared page. Use the `clone` option.');returnroute.abort();});// ...});
New option noDefaults in browserType.connectOverCDP() disables Playwright's default overrides on the default context (download behavior, focus emulation, media emulation), so attaching to a user's daily-driver browser doesn't disturb its state.
consoleMessage.location() now exposes line / column properties (lineNumber / columnNumber are deprecated).
New testInfoError.errorContext surfaces additional diagnostic context, such as the aria snapshot of the receiver at the time of an expect(...) matcher failure.
reporter.onError() now receives a workerInfo argument with details about the worker for fixture teardown errors.
Pin the integrity of git-hosted tarballs (codeload.github.com, gitlab.com, bitbucket.org) in the lockfile so that subsequent installs detect a tampered or substituted tarball and refuse to install it. Previously the lockfile only stored the tarball URL for git dependencies, so a compromised git host or a man-in-the-middle could serve arbitrary code on later installs without lockfile changes.
A new gitHosted: true field is recorded on git-hosted tarball resolutions in the lockfile, letting every reader/writer route them by a single typed check instead of pattern-matching the tarball URL in each call site. Lockfiles written by older pnpm versions are enriched on load (URL fallback) so the field can be relied on uniformly across the codebase.
Fix a regression where pnpm --recursive --filter '!<pkg>' run/exec/test/add would include the workspace root in the matched projects. The workspace root is now correctly excluded by default when only negative --filter arguments are provided, matching the documented behavior. To include the root, pass --include-workspace-root#11341.
When a project's packageManager field selects pnpm v11 or newer, commands that v10 would have passed through to npm (version, login, logout, publish, unpublish, deprecate, dist-tag, docs, ping, search, star, stars, unstar, whoami, etc.) are now handed over to the wanted pnpm, which implements them natively. Previously they silently shelled out to npm — making, for example, pnpm version --help print npm's help on a project with packageManager: pnpm@11.0.0-rc.3#11328.
🦧 feat: improve get dirty fields prune empty fields (#13363)
+ dirtyFields: { test: [{ data: false }] }- dirtyFields: {} // removed the empty node with false value
🎹 typescript 6.0 (#13330)
🌡️ chore: minor improvement on setValue & reset (#13366)
🐞 fix #13403: include setValues in FormProvider context value (#13404)
🐞 fix: recompute isDirty after re-registering a previously unregistered field (#13399)
🐞 fix: preserve watch updates on field array unmount fixes #13375 (#13385)
🐞 fix: prevent useWatch re-render when unrelated field validation is … (#13398)
🐞 fix: preserve previous field value when useController name changes (#13395)
🐞 fix: handle null parent when unregistering nested field (#13396)
🐞 fix: treat NaN as empty when valueAsNumber is true in validateField (#13388)
🪢 fix build to exclude test files (#13387)
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.
This PR includes no changesets
When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types
renovateBot
changed the title
chore(deps): update dependency @effect/platform to ^0.94.5 || ^0.96.0
chore(deps): update all non-major dependencies
Apr 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dependenciesPull requests that update a dependency file
0 participants
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.75.0→0.75.1^0.84.0→^0.86.0^0.94.5→^0.94.5 || ^0.96.00.96.0→0.96.15.96.2→5.100.1022.19.17→22.19.198.18.0→8.20.010.4.27→10.5.03.21.0→3.21.211.3.4→11.3.55.1.7→5.1.111.59.1→1.60.010.33.0→10.33.48.5.8→8.5.147.72.1→7.75.05.1.0→5.1.12.9.3→2.9.122.8.3→2.9.0Release Notes
Effect-TS/effect (@effect/cli)
v0.75.1Compare Source
Patch Changes
#6144
ec5c505Thanks @LikiosSedo! - Fix--log-level=valueequals syntax incorrectly swallowing the next argument. Only skip the next arg when the previous arg is exactly--log-level(space-separated form).Updated dependencies [
f99048e]:Effect-TS/language-service (@effect/language-service)
v0.86.1Compare Source
Patch Changes
0674371Thanks @mattiamanzati! - Update the Effect v4 test harness and language service development dependencies to Effect 4.0.0 beta 66, including fixture updates for the latest Context service API.v0.86.0Compare Source
Minor Changes
#728
a5b0e47Thanks @mattiamanzati! - Add theunsafeEffectTypeAssertiondiagnostic to catchas Effect<...>,as Stream<...>, andas Layer<...>assertions that unsafely narrow the error or requirements channels.The rule skips channels whose original type is
anyand offers a quick fix that removes the assertion while preserving the original expression.v0.85.1Compare Source
Patch Changes
#726
fd4a8daThanks @mattiamanzati! - Update the Effect v4 beta examples and type parsing to match the renamed Context APIs in the latest 4.0.0-beta releases.#724
14d5798Thanks @mattiamanzati! - Refactor Effect context tracking to use cached node context flags and direct generator lookups.This aligns the TypeScript implementation more closely with the TSGo version and simplifies diagnostics that need to detect whether code is inside an Effect generator.
v0.85.0Compare Source
Minor Changes
#720
4229bb9Thanks @mattiamanzati! - Add thenestedEffectGenYielddiagnostic to detectyield* Effect.gen(...)inside an existing Effect generator context.Example:
#723
da9cc4bThanks @mattiamanzati! - Add theeffectMapFlattenstyle diagnostic forEffect.map(...)immediately followed byEffect.flattenin pipe flows.Example:
#718
0af7c0fThanks @mattiamanzati! - Add thelazyPromiseInEffectSyncdiagnostic to catchEffect.sync(() => Promise...)patterns and suggest usingEffect.promiseorEffect.tryPromisefor async work.Example:
#714
32985b2Thanks @mattiamanzati! - AddprocessEnvandprocessEnvInEffectdiagnostics to guideprocess.env.*reads toward EffectConfigAPIs.Examples:
process.env.PORTprocess.env["API_KEY"]#721
f05ae89Thanks @mattiamanzati! - Add theunnecessaryArrowBlockstyle diagnostic for arrow functions whose block body only returns an expression.Example:
#717
b77848aThanks @mattiamanzati! - AddnewPromiseandasyncFunctioneffect-native diagnostics to report manualPromiseconstruction and async function declarations, with guidance toward Effect-based async control flow.#722
6f19858Thanks @mattiamanzati! - Add theeffectDoNotationstyle diagnostic forEffect.Dousage and suggest migrating toEffect.genorEffect.fn.Example:
#716
c3f67b0Thanks @mattiamanzati! - AddcryptoRandomUUIDandcryptoRandomUUIDInEffectdiagnostics for Effect v4 to discouragecrypto.randomUUID()in favor of the EffectRandommodule, which uses Effect-injected randomness instead of the global crypto implementation.Patch Changes
d23980aThanks @mattiamanzati! - Update the Effect v4 beta dependencies to4.0.0-beta.43for the language service and v4 harness packages.Effect-TS/effect (@effect/platform)
v0.96.1Compare Source
Patch Changes
#6147
518d0e3Thanks @syhstanley! - FixHttpLayerRouter.addHttpApisilently skipping API-level middleware.#6191
c016642Thanks @IGassmann! - Updatemsgpackrto 1.11.10 to fix silent decode failures in environments that blocknew Function()at runtime (e.g. Cloudflare Workers). The new version wraps the JITnew Function()call in a try/catch, falling back to the interpreted path when dynamic code evaluation is blocked.Updated dependencies [
74f3267]:v0.96.0Compare Source
Patch Changes
f7bb09b,bd7552a,ad1a7eb,0d32048,0d32048]:v0.95.0Compare Source
Patch Changes
fc82e81,82996bc,4d97a61,f6b0960,8798a84]:TanStack/query (@tanstack/react-query)
v5.100.10Patch Changes
v5.100.9Compare Source
Patch Changes
fcee7bd]:v5.100.8Compare Source
Patch Changes
v5.100.7Compare Source
Patch Changes
v5.100.6Compare Source
Patch Changes
v5.100.5Compare Source
Patch Changes
a53ef97]:v5.100.4Compare Source
Patch Changes
v5.100.3Compare Source
Patch Changes
fix(suspense): skip calling combine when queries would suspend (#10576)
Updated dependencies [
f85d825]:v5.100.2Patch Changes
ea4497e,d6a7bf3,645d5d1]:v5.100.1Patch Changes
1bb0d23]:v5.100.0Compare Source
Patch Changes
6540a41]:v5.99.2Compare Source
Patch Changes
v5.99.1Compare Source
Patch Changes
v5.99.0Compare Source
Patch Changes
v5.98.0Compare Source
Patch Changes
v5.97.0Compare Source
Patch Changes
2bfb12c]:ajv-validator/ajv (ajv)
v8.20.0Compare Source
What's Changed
Full Changelog: ajv-validator/ajv@v8.19.0...v8.20.0
postcss/autoprefixer (autoprefixer)
v10.5.0Compare Source
mask-position-xandmask-position-ysupport (by @toporek).Effect-TS/effect (effect)
v3.21.2Compare Source
Patch Changes
74f3267Thanks @mikearnaldi! - FixTestClock.unsafeCurrentTimeNanos()to floor fractional millisecond instants before converting them toBigInt.v3.21.1Compare Source
Patch Changes
#6139
f99048eThanks @marbemac! - Fix batched request resolver defects causing consumer fibers to hang forever.When a
RequestResolver.makeBatchedresolver died with a defect, the requestDeferreds were never completed because the cleanup logic ininvokeWithInterruptusedflatMap(which only runs on success). Changed toensuringso uncompleted request entries are always resolved regardless of exit type.jprichardson/node-fs-extra (fs-extra)
v11.3.5Compare Source
ensureLink*/ensureSymlink*identical file detection on Windows (#1068)ai/nanoid (nanoid)
v5.1.11Compare Source
v5.1.10Compare Source
v5.1.9Compare Source
v5.1.8Compare Source
cusatomAlphabet75% faster (by @saripovdenis).microsoft/playwright (playwright)
v1.60.0Compare Source
🌐 HAR recording on Tracing
tracing.startHar() / tracing.stopHar() expose HAR recording as a first-class tracing API, with the same
content,modeandurlFilteroptions asrecordHar. The returned Disposable makes it easy to scope a recording withawait using:🪝 Drop API
New locator.drop() simulates an external drag-and-drop of files or clipboard-like data onto an element. Playwright dispatches
dragenter,dragover, anddropwith a synthetic [DataTransfer] in the page context — works cross-browser and is great for testing upload zones:🎯 Aria snapshots
page.locator('body').boxesoption on locator.ariaSnapshot() / page.ariaSnapshot() appends each element's bounding box as[box=x,y,width,height], useful for AI consumption.🛑 test.abort()
New test.abort() aborts the currently running test from a fixture, hook, or route handler with an optional message. Use it when you have detected an unrecoverable misuse and want to fail the test right away:
New APIs
Browser, Context and Page
Locators and Assertions
descriptionin page.getByRole() / locator.getByRole() / frame.getByRole() / frameLocator.getByRole() for matching the accessible description.pseudoin expect(locator).toHaveCSS() reads computed styles from::beforeor::after.stylein locator.highlight() applies extra inline CSS to the highlight overlay, plus new page.hideHighlight() to clear all highlights.Network
noDefaultsin browserType.connectOverCDP() disables Playwright's default overrides on the default context (download behavior, focus emulation, media emulation), so attaching to a user's daily-driver browser doesn't disturb its state.Errors and Reporting
line/columnproperties (lineNumber/columnNumberare deprecated).expect(...)matcher failure.workerInfoargument with details about the worker for fixture teardown errors.Test runner
{testFileBaseName}token in testProject.snapshotPathTemplate — file name without extension.workers: 0or negative values.🛠️ Other improvements
npx playwright show-reportaccepts.zipfiles directly — no need to unzip first.repeatEachIndexis shown in the test header when non-zero.Breaking Changes⚠️
Locator.ariaRef()— use the standard locator.ariaSnapshot() pipeline.handleoption onBrowserContext.exposeBindingandPage.exposeBinding.loggeroption onBrowserType.connectandBrowserType.connectOverCDP— use tracing instead.videosPath/videoSize— userecordVideoinstead.Browser Versions
This version was also tested against the following stable channels:
pnpm/pnpm (pnpm)
v10.33.4: pnpm 10.33.4Compare Source
Patch Changes
Pin the integrity of git-hosted tarballs (codeload.github.com, gitlab.com, bitbucket.org) in the lockfile so that subsequent installs detect a tampered or substituted tarball and refuse to install it. Previously the lockfile only stored the tarball URL for git dependencies, so a compromised git host or a man-in-the-middle could serve arbitrary code on later installs without lockfile changes.
A new
gitHosted: truefield is recorded on git-hosted tarball resolutions in the lockfile, letting every reader/writer route them by a single typed check instead of pattern-matching the tarball URL in each call site. Lockfiles written by older pnpm versions are enriched on load (URL fallback) so the field can be relied on uniformly across the codebase.Fix a regression where
pnpm --recursive --filter '!<pkg>' run/exec/test/addwould include the workspace root in the matched projects. The workspace root is now correctly excluded by default when only negative--filterarguments are provided, matching the documented behavior. To include the root, pass--include-workspace-root#11341.Platinum Sponsors
Gold Sponsors
v10.33.3Compare Source
v10.33.2Compare Source
v10.33.1: pnpm 10.33.1Compare Source
Patch Changes
packageManagerfield selects pnpm v11 or newer, commands that v10 would have passed through to npm (version,login,logout,publish,unpublish,deprecate,dist-tag,docs,ping,search,star,stars,unstar,whoami, etc.) are now handed over to the wanted pnpm, which implements them natively. Previously they silently shelled out to npm — making, for example,pnpm version --helpprint npm's help on a project withpackageManager: pnpm@11.0.0-rc.3#11328.Platinum Sponsors
Gold Sponsors
postcss/postcss (postcss)
v8.5.14Compare Source
v8.5.13Compare Source
postcss-scsscommend regression.v8.5.12Compare Source
opts.unsafeMapto disable checks.v8.5.11Compare Source
v8.5.10Compare Source
</style>in non-bundler cases (by @TharVid).v8.5.9Compare Source
react-hook-form/react-hook-form (react-hook-form)
v7.75.0: Version 7.75.0Compare Source
🦧 feat: improve get dirty fields prune empty fields (#13363)
🎹 typescript 6.0 (#13330)
🌡️ chore: minor improvement on setValue & reset (#13366)
🐞 fix #13403: include setValues in FormProvider context value (#13404)
🐞 fix: recompute isDirty after re-registering a previously unregistered field (#13399)
🐞 fix: preserve watch updates on field array unmount fixes #13375 (#13385)
🐞 fix: prevent useWatch re-render when unrelated field validation is … (#13398)
thanks to @dfedoryshchev, @cyky & @gkarabelos
v7.74.0: Version 7.74.0Compare Source
🪇 feat: setValues (#13201)
🐞 fix: preserve previous field value when useController name changes (#13395)
🐞 fix: handle null parent when unregistering nested field (#13396)
🐞 fix: treat NaN as empty when valueAsNumber is true in validateField (#13388)
🪢 fix build to exclude test files (#13387)
thanks to @Yihao-G & @mixelburg
v7.73.1Compare Source
fastify/safe-regex2 (safe-regex2)
v5.1.1Compare Source
What's Changed
New Contributors
Full Changelog: fastify/safe-regex2@v5.1.0...v5.1.1
vercel/turborepo (turbo)
v2.9.12: Turborepo v2.9.12Compare Source
What's Changed
Changelog
Full Changelog: vercel/turborepo@v2.9.11...v2.9.12
v2.9.11: Turborepo v2.9.11Compare Source
What's Changed
Changelog
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.