deps: update c-ares to v1.34.6#195
Open
github-actions[bot] wants to merge 1 commit into
Open
Conversation
offensive-vk
pushed a commit
that referenced
this pull request
Jul 6, 2026
Upgrades WebKit to upstream `aac4aed489d1` (2026-04-24) via [oven-sh/WebKit#199](oven-sh/WebKit#199). Supersedes the bisect-revert approach (WebKit #190/#195) — merges latest upstream/main directly. ## Bun-side changes - **`jsCast<T*>` → `uncheckedDowncast<T>`, `jsDynamicCast<T*>` → `dynamicDowncast<T>`** — 1588 call sites across 248 files + the codegen templates. `jsSecureCast` → `downcast`. 13 redundant same-type casts dropped (new API static_asserts against them). - **`JSScriptFetcher`/`JSScriptFetchParameters` removed** — moduleLoader hooks retyped to `RefPtr<ScriptFetcher>`/`RefPtr<ScriptFetchParameters>`. `loadModuleSync` matches. `scriptFetcher.isObject()` short-circuit removed (old JS-loader quirk; `--eval` result capture keys on the specifier, not fetcher — verified working). - **`JSType.zig`** — two entries removed, 23+ renumbered −2, `EmbedderArrayLike = 237` added. - **NodeVM** — `scriptFetchParametersToImportAttributes()` rebuilds `{type}` for the `importModuleDynamically` callback. - **`WEBKIT_VERSION`** → `autobuild-preview-pr-199-b091462b`. ## Watch for - `Promise.prototype.finally` was split fast/slow upstream; Bun's ALS context wrapping moved to the fast path. Slow path may need coverage if ALS-through-finally tests fail. - `node:vm` `link()` now passes `nullptr` for scriptFetcher (was a JSValue). If node:vm tests rely on threading it, needs a `ScriptFetcher` subclass. --- # WebKit upgrade: d550dd3c808e → aac4aed489d1 565 upstream commits (Apr 16 → Apr 24); 105 touch JSC/WTF/bmalloc. ##⚠️ API/ABI changes that affect Bun bindings ### `jsCast` / `jsDynamicCast` → `downcast` / `dynamicDowncast` migration Upstream is deprecating the JSC-specific cast helpers in favor of WTF's generic `TypeCasts.h`. Bun's C++ bindings use `jsCast` / `jsDynamicCast` heavily — expect deprecation warnings or follow-up migration. - `195397957f97` Make downcast/dynamicDowncast/uncheckedDowncast work with JSCell subclasses - `a6df2880b331` Drop `jsDynamicCast<>()` in favor of `dynamicDowncast<>()` - `a20b2c96bcb4` Drop `jsCast<T*>()` in favor of `uncheckedDowncast<T>()` - `b8ef260b13ef` / `e60220202a25` Reduce remaining `jsCast<>()` uses - `178cea00b798` Replace `jsSecureCast<>()` with `downcast<>()` ### Module loader - `407d0feac1cd` **Remove `JSScriptFetcher` and `JSScriptFetchParameters`** — Bun's loader bridge wraps these; the rerere-resolved files for both headers signal the previous merge already adapted, but verify `ModuleLoader.cpp` - `e236b9dd9455` Fix null-env deref in `CyclicModuleRecord::initializeEnvironment` for Wasm modules ### Header reorganization (drives ~60 of the 75 merge conflicts) Aggressive include-minimization sweep across core JSC headers. Conflicts are mechanical: upstream rewrote include blocks while Bun keeps quote-style `"Foo.h"` instead of `<JavaScriptCore/Foo.h>`. - `9f2eb90301dc` Minimize includes in `CodeBlock.h`, `JSCJSValue.h`, `JSCJSValueInlines.h`, `VM.h` - `744271668d05` Expensive header files slow full build - `5ff0c08af8bf` Reduce cost of `StructureInlines.h` - `405a323e0a80` Use pre-compiled headers consistently for all ports - `4e4c3bd8416a` / `892008ea2763` Missing-include / non-unified-build fixups ## Runtime correctness ### Promise / async - `19dc01a2c79d` Optimize returned promise from async function when it has no `await` - `e704581e3ddb` `Promise.prototype.finally` throws in SpeciesConstructor before `then` - `13b3b3095f1e` [Win] Add missing `SYSV_ABI` to `pinballHandlerFinishReject` ### Arrays / TypedArrays / Objects - `286f7a92228f` Add `JSArray::fastShift` - `4c82252b8b2f` Snapshot span of TypedArrays in `toSorted`/`toReversed`/`with` - `cdd970b5238b` Fast path for `Array.prototype.indexOf` on NodeList - `8eca46ec5bfb` Fix `Object.defineProperties` Proxy trap ordering - `9b1a02808762` Fix megamorphic IC ownProperty check - `7eb28729693c` Correct IDL union handling of ArrayBuffer & friends ### Strings / JSON / BigInt - `128591e63775` Cache `JSString` cells for short `JSON.parse` string values - `fa83cf53f871` Avoid rope resolution for single-char `startsWith`/`endsWith` - `8f585979f1b4` Clean up `JSBigInt::cachedMod` ### Intl - `e6fae9eeaf4e` Introduce Canonicalized TimeZone mechanism - `239255f394a2` `Intl.DateTimeFormat` keep original legacy `[[TimeZone]]` - `367f77ea6640` Optimize `Intl.NumberFormat` creation - `7e5d9f982d7b` Report external memory in `Intl.NumberFormat`/`PluralRules` - `325456987d1d` `Intl.Locale` canonicalize before override language - `0145d169cd9c` `Intl.Segmenter` `isWordLike` off-by-one fix ### YARR / RegExp - `7c8c020f78ce` Fix YarrJIT SIGBUS from sibling-alt frame-slot aliasing - `282d55d7a141` FixedCount ParenContext: mark incomplete and retry - `062fabff2067` Unicode-mode non-capturing groups backreference count - `582f25b3e697` Forward references no longer JIT-compiled ## JIT / DFG / FTL / register allocator - `fa2381cad819` Use runtime indexing type for write barrier in `operationPopulateObjectInOSR` - `289a55e3913b` Fix hole-handling when rematerializing sunk double arrays - `460528ee4187` Escape `MultiGetByOffset` constants not convertible to double - `020b68a05dfa` Run `lowerAfterRegAlloc` before `fixObviousSpills` - `b8d759043c88` Lower `BitAnd(SShr(x,lsb),mask)` → `ubfx` on ARM64 - `bc02c09f91bb` Refine clobberize rule for `ArrayIsArray` - `0b634d738806` / `173d202e5943` / `86d3f77f318b` GreedyRegAlloc refactors (split metadata, typed costs, per-fn dump) - `51024b1e8ca6` Don't assert on self comparison in `buildCoalescingGroups` - `be7c61dd4afc` Fix `!ENABLE(JIT)` build - `7999f4e1693b` Disable ARM64E dotprod ## WebAssembly - `85da494b1c29` Implement relaxed Wasm SIMD - `7a12263d0ac4` / `88fb9a875ac5` / `14c9a4cfcf8a` Memory64: atomics, bulk memory, grow/size in OMG - `e40405afe9a4` / `98a27e9f7485` Multimemory: data segments + post-land refactor - `787be9470e19` BBQ: fix integer div/rem with `INT_MIN`/-1 - `a03517078f7e` BBQ: fp min/max negative-zero handling - `e07d187aa4dd` BBQ JIT gets stack size from IPInt - `c628c3c9d8ee` Crash on wide-arithmetic instructions - `1857337a10a5` Simplify IPInt local accessors - `a0d2715d2060` `WebAssemblyGCStructureTypeDependencies` traverse expanded types - `f45de3a3d2a7` / `bdb1b12f3a60` / `13c5aeda0703` / `7d074dda6cbe` Wasm Debugger: reset deadlock, null stopData, remove `stop()`, ordering bugs ## WTF - `2726e5dbb0cf` Remove runtime support for older Apple OS versions (touches `PlatformHave.h` heavily) - `21ac6cec98ee` Remove support for SDKs older than 26.2 - `0d04522925ea` Use `std::span` SIMDUTF API - `d814bd4d3a84` Add `RetainRef` (non-nullable `RetainPtr`) - `3b05441afa50` `Vector::grow()` assert → release assert - `1ae1abc47aac` Fix TSAN false-positive on `ThreadSafeWeakPtrControlBlock` - `19570fa4f1cb` `WTF::span(char**)` returns empty span for null - `98bb7482cf59` [MTE] Harden `ThreadTimerHeapItem` / `CompactPointerTuple` - `cdf397cab58d` Partial revert of `WTFCrashWithInfo` Linux/Armv7 - `f6c0c3a4c8ed` Reduce C-style arrays ## bmalloc / libpas - `1b1e4d08c01c` Fix initialization check for LDM state - `d7b3180cbfe8` Fix libpas standalone build ## Platform / build - `fc480fe9b885` Set ARM64 CPU feature bits on Windows - `2e7c3456cd6d` [Win] Cross-compile ARM64 from Linux - `3d242bc9a178` Use `UncheckedKeyHashMap`/`UncheckedKeyHashSet` - `92526e91925a` Suppress `-Wunsafe-buffer-usage` warnings - Reverts: `c63a29174071`, `7b7926d28328`, `550e10f0c386`, `75f92ada1361` ## Watch list for Bun - **`jsCast`/`jsDynamicCast` removal** — Bun bindings will need migration (or rely on the compat shims if upstream left any) - **`JSScriptFetcher`/`JSScriptFetchParameters` removed** — Bun's `ModuleLoader.cpp` and `BakeSourceProvider.cpp` reference these - **`PlatformHave.h` SDK-floor bump** — 32 conflict hunks; Bun's `OS(DARWIN) && USE(BUN_JSC_ADDITIONS)` overrides need re-threading - **Promise no-await optimization (`19dc01a2c79d`)** — interacts with Bun's microtask queue customizations in `JSMicrotask.cpp` - **`Vector::grow()` release assert** — any over-reserve in Bun bindings now fatal in release --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Jarred Sumner <jarred@jarredsumner.com>
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What does this PR do?
Updates c-ares to version v1.34.6
Compare: c-ares/c-ares@d3a507e...3ac47ee
Auto-updated by this workflow