Saturday, May 2, 2026

Weekly browser binaries (20260502)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260502-3219d2d-uxp-9161cd3bdb-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260502-3219d2d-uxp-9161cd3bdb-xpmod.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom

IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260502-3219d2d-uxp-9161cd3bdb-xpmod-ia32.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32

NM28XP build:
Win32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260502-d849524bd-uxp-9161cd3bdb-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260502-d849524bd-uxp-9161cd3bdb-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260502-d849524bd-uxp-9161cd3bdb-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260502-d849524bd-uxp-9161cd3bdb-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260502-d849524bd-uxp-9161cd3bdb-w7plus-avx2.7z

Official UXP changes picked since my last build:
- [DOM] Improve CC/WrapperCache for nursery objects. (a126257d80)
- [DOM] Ensure the GC sees consistent states while adopting DOM nodes. (0ca2e3ea42)
- [image] Hold a strong ref on error. (1a73ec0124)
- [NSS] Improve input validation in DSAU signature decoding (d6ff046d72)
- Bug 2025976 - Make txxPathNode be a value instead of reference. (f568fa4576)
- [DOM/XSLT] Re-fetch index entry. (0bf878118a)
- Bug 2025971 - Use txSingleNodeContext getter of owned txXPathNode. (368694e27a)
- [webrtc] Fix off-by-one comparison. (8a4c6d11e0)
- [gfx] Don't return dummy surfaces. (483bf0f43a)
- [accessibility] Hold a strong ref to mParent in AccIterator. (b2dc9706ca)
- Bug 2026293: Block scripts when initiating async scrollbar activity. (efbe3cb909)
- [widget] Improve clearing of data during clipboard operations. (8c3c8b4e91)
- [DOM] Add a SequenceRooter to ConsoleProfile. (470d5bd180)
- [DOM] Add a death grip and use locals in BaseMediaResource::ModifyLoadFlags. (d8b8649f92)
- [DOM/WebCrypto] Reject absurdly large salt values. (59887ccee8)
- [DOM] Avoid leaks in nsXMLPrettyPrinter. (bee96124c5)
- [NSS] Reject excessively large ASN.1 SEQUENCE OF in quickder. (9dd4cfcc64)
- No issue - Deduplicate HTMLAllCollection::GetSupportedNames code. (c087ec3c00)
- [DOM/XSLT] Prevent circular indexing (a0587881d6)
- [NSS] Deep copy profile data in CERT_FindSMimeProfile. (5f41bdffd4)
- Bug 2025483 update mBeginProcessing even on speex_resampler_set_rate() error (6cf972e912)
- Bug 2025332 - ErrorResult should call ClearUnionData more. (be70077b66)
- [gfx] Stop using binary arithmetic in software filtering. (4139582955)
- [DOM/XSLT] Don't use txXPathNode by reference. (853057cf33)
- Bug 2025370 - Properly handle error case in EventListenerManager::GetTypedEventHandler (096dffbcab)
- Issue #3030 - Reduce layout stalls due to compositor hang-ups. (58f5dd61ae)
- [js] Only allow strings as function name. (bcd936e548)
- [NSS] Clarify extension negotiation mechanism for TLS Handshakes. (e4fd587adf)
- Bug 2025973 - Use value-semantics for txExecutionState::TemplateRule (d419d35337)
- [gfx] Port libyuv upstream bounds check. (99c241d56f)
- [gfx] Explicitly cast calculation to int32. (602a2e35d8)
- Bug 2029427 - Fix format string (3d9478ef97)
- Bug 2029423 - Reset post_proc state. (a246b84e8b)
- Bug 2029317 - Create RareArgumentsData before mutating the arguments object in MappedArgumentsObject::obj_defineProperty. (5858cd226c)
- Bug 2029291. (5a065b86fc)
- [security] Ensure `DispatchToMainThreadAndWait` isn't interrupted. (69bd6af877)
- Bug 2029462 - store email on subject cache_entry in NSS trust domain. (7937766f4a)
- No issue - Update our in-tree brotli library to 1.2.0+ (1020e0cd4f)
- Revert "[gfx] Use local statics for harfbuzz callback pointers" (1f95ec61d6)
- Merge remote-tracking branch 'origin/tracking' into custom (6be945e9da)
- Bug 2030135 - improve error handling in PK11_ImportPrivateKeyInfoAndReturnKey (a8571576a1)
- [DOM/media] Use extended channel data as-appropriate. (21d1a7dc24)
- [DOM] Add some death grips to TextTrackManager. (f897efd802)
- [image] Hold a strong ref on mInnerImage when requesting a refresh. (abd19068fb)
- Bug 2029425 - Heap use-after-free in cert_VerifyCertChainOld via dangling certsList[] entry on NameConstraints violation. (aad6fdd59b)
- Bug 2029323 - Improve size calculations in CMS content buffering (0329082cf0)
- [js] Use isElement in UnmappedArgSetter to check if the argument was marked as deleted. (8a3427845f)
- [gfx] OTS/HB: Correct bounds checks. (80b0fe5547)
- Bug 2029727: Update RegExpStatics data after realloc (08f1b381fc)
- [image] Don't do unnecessary work if the image is being destroyed. (85e32b8238)
- [media] Spot-fix for ffvpx handling of bad video data. (a7a5092b23)
- [parser] Handle foster parenting properly. (69d0209956)
- Revert "[DOM] Ensure the GC sees consistent states while adopting DOM nodes." (dcf89d342f)
- Bug 2027433 Treat null input channels as zero (83ef39ff44)
- Bug 2027433 use nullptr for silent up-mix channels (42f1ba1d29)
- Bug 2029806: Handle ill-formed UTF16 (f45cce8396)
- [DOM/media] Add some sanity checks to MP3 demuxer. (c748294a4a)
- [DOM] Validate size in FileReader. (dceb1c4fe6)
- Issue #3066 - Follow-up: Reserve threads for burst use cases. (38dc7b394e)
- [DOM] Do not interrupt worker execution if already scheduled. (bf526d7076)
- [gfx] Add sanity checks in ANGLE D3D11 renderer. (208e06dc84)

No official Pale-Moon changes picked since my last build.

No official Basilisk changes picked since my last build.

My changes picked since my last build:
- js-HelperThreads: reduce maxParseThreads() to cpuCount - 1, or 1 if CPU is dual core or less. (04e063ddee)
- dom/media: ffmpeg-audio: apply same changes to !MOZ_SAMPLE_TYPE_FLOAT32 code paths (27c36d1ea9)
- Revert "Spoof to Firefox 128 for WebExtensions" (12e7d147cf)

Update Notice:
- You may delete file named icudt*.dat and icu63.dll inside program folder when updating from old releases.

* Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.


New build of BOC/UXP for XP!

Test binary:
MailNews Win32 https://o.rthost.win/boc-uxp/mailnews.win32-20260502-40a79c75-uxp-9161cd3bdb-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260502-40a79c75-uxp-9161cd3bdb-xpmod.7z

source repo (excluding UXP): https://github.com/roytam1/boc-uxp/tree/custom

* Notice: the profile prefix (i.e. parent folder names) are also changed since 2020-08-15 build, you may rename their names before using new binaries when updating from builds before 2020-08-15.

--

New build of HBL-UXP for XP!

Test binary:
IceDove-UXP(mail) https://o.rthost.win/hbl-uxp/icedove.win32-20260502-id-656ea98-uxp-9161cd3bdb-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260502-id-656ea98-ia-c642e3c-uxp-9161cd3bdb-xpmod.7z

source repo (excluding UXP):
https://github.com/roytam1/icedove-uxp/tree/winbuild
https://github.com/roytam1/iceape-uxp/tree/winbuild


New build of post-deprecated Serpent/moebius for XP!
* Notice: This repo will not be built on regular schedule, and changes are experimental as usual.
** Current moebius patch level should be on par with 52.9, but some security patches can not be applied/ported due to source milestone differences between versions.

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk55-win32-git-20260502-6359349a8-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260502-6359349a8-xpmod.7z

repo: https://github.com/roytam1/basilisk55

Repo changes:
- js-HelperThreads: reduce maxParseThreads() to cpuCount - 1, or 1 if CPU is dual core or less. (f57dec529)
- import from UXP: [DOM] Improve CC/WrapperCache for nursery objects. (a126257d) (b7384e984)
- import from UXP: [DOM] Ensure the GC sees consistent states while adopting DOM nodes. (0ca2e3ea) (028fc21c4)
- import from UXP: [image] Hold a strong ref on error. (1a73ec01) (cd6e0c85c)
- import from UXP: [NSS] Improve input validation in DSAU signature decoding (d6ff046d) (94fb8c8a6)
- import from UXP: Bug 2025976 - Make txxPathNode be a value instead of reference. (f568fa45) (6dff65471)
- import from UXP: [DOM/XSLT] Re-fetch index entry. (0bf87811) (f5b7cc8f4)
- import from UXP: Bug 2025971 - Use txSingleNodeContext getter of owned txXPathNode. (368694e2) (48085b1b1)
- import from UXP: [webrtc] Fix off-by-one comparison. (8a4c6d11) (45313bc26)
- import from UXP: [gfx] Don't return dummy surfaces. (483bf0f4) (f6e88778a)
- import from UXP: [accessibility] Hold a strong ref to mParent in AccIterator. (b2dc9706) (54630631b)
- import from UXP: Bug 2026293: Block scripts when initiating async scrollbar activity. (efbe3cb9) (552fd9cd5)
- import from UXP: [widget] Improve clearing of data during clipboard operations. (8c3c8b4e) (3d5310370)
- import from UXP: [DOM] Add a SequenceRooter to ConsoleProfile. (470d5bd1) (567dd94b9)
- import from UXP: [DOM] Add a death grip and use locals in BaseMediaResource::ModifyLoadFlags. (d8b8649f) (5d45ef230)
- ported from UXP: [DOM/WebCrypto] Reject absurdly large salt values. (59887cce) (5eb1e866c)
- import from UXP: [DOM] Avoid leaks in nsXMLPrettyPrinter. (bee96124) (5f5e71842)
- import from UXP: [NSS] Reject excessively large ASN.1 SEQUENCE OF in quickder. (9dd4cfcc) (8679b848c)
- import from UXP: No issue - Deduplicate HTMLAllCollection::GetSupportedNames code. (c087ec3c) (c85450456)
- import from UXP: [DOM/XSLT] Prevent circular indexing (a0587881) (0d91cf9e1)
- import from UXP: [NSS] Deep copy profile data in CERT_FindSMimeProfile. (5f41bdff) (028ac906b)
- import from UXP: Bug 2025483 update mBeginProcessing even on speex_resampler_set_rate() error (6cf972e9) (7c1504d7a)
- import from UXP: Bug 2025332 - ErrorResult should call ClearUnionData more. (be70077b) (893fa710a)
- import from UXP: [gfx] Stop using binary arithmetic in software filtering. (41395829) (1baea0354)
- import from UXP: [DOM/XSLT] Don't use txXPathNode by reference. (853057cf) (04f036803)
- import from UXP:  Bug 2025370 - Properly handle error case in EventListenerManager::GetTypedEventHandler (096dffbc) (4980c3894)
- import from UXP: Issue #3030 - Reduce layout stalls due to compositor hang-ups. (58f5dd61) (7fbc7b10f)
- import from UXP: [js] Only allow strings as function name. (bcd936e5) (42ef7b821)
- import from UXP: [NSS] Clarify extension negotiation mechanism for TLS Handshakes. (e4fd587a) (4378c0b3c)
- import from UXP: Bug 2025973 - Use value-semantics for txExecutionState::TemplateRule (d419d353) (87d44e0bd)
- import from UXP: [gfx] Port libyuv upstream bounds check. (99c241d5) (aff4c6aaf)
- import from UXP: [gfx] Explicitly cast calculation to int32. (602a2e35) (0b3db11cd)
- import from UXP: Bug 2029427 - Fix format string (3d9478ef) (f66af5be4)
- import from UXP: Bug 2029423 - Reset post_proc state. (a246b84e) (09653f2d4)
- import from UXP: Bug 2029317 - Create RareArgumentsData before mutating the arguments object in MappedArgumentsObject::obj_defineProperty. (5858cd22) (fd5eeca9c)
- import from UXP: Bug 2029291. (5a065b86) (354483e5c)
- import from UXP: [security] Ensure `DispatchToMainThreadAndWait` isn't interrupted. (69bd6af8) (a057cae18)
- import from UXP: Bug 2029462 - store email on subject cache_entry in NSS trust domain. (7937766f) (df3e0635e)
- ported from UXP: No issue - Update our in-tree brotli library to 1.2.0+ (1020e0cd) (d22e189a4)
- import from UXP: Revert "[gfx] Use local statics for harfbuzz callback pointers" (1f95ec61) (4b46a260f)
- import from UXP: Bug 2030135 - improve error handling in PK11_ImportPrivateKeyInfoAndReturnKey (a8571576) (4dc05471f)
- ported from UXP: [DOM/media] Use extended channel data as-appropriate. (21d1a7dc) (43f62a272)
- ported from UXP: [DOM] Add some death grips to TextTrackManager. (f897efd8) (8fd3ea341)
- import from UXP: [image] Hold a strong ref on mInnerImage when requesting a refresh. (abd19068) (52c7f4c2c)
- import from UXP: Bug 2029425 - Heap use-after-free in cert_VerifyCertChainOld via dangling certsList[] entry on NameConstraints violation. (aad6fdd5) (a81abc48d)
- import from UXP: Bug 2029323 - Improve size calculations in CMS content buffering (0329082c) (6ffc4f152)
- import from UXP: [js] Use isElement in UnmappedArgSetter to check if the argument was marked as deleted. (8a342784) (72dd26b2f)
- import from UXP: [gfx] OTS/HB: Correct bounds checks. (80b0fe55) (9de8f8123)
- import from UXP: Bug 2029727: Update RegExpStatics data after realloc (08f1b381) (8d925fbd1)
- import from UXP: [image] Don't do unnecessary work if the image is being destroyed. (85e32b82) (b2acfc720)
- import from UXP: [media] Spot-fix for ffvpx handling of bad video data. (a7a5092b) (9ba9b9a29)
- import from UXP: [parser] Handle foster parenting properly. (69d02099) (284e76377)
- import from UXP: Revert "[DOM] Ensure the GC sees consistent states while adopting DOM nodes." (dcf89d34) (3149e2dd8)
- import from UXP: Bug 2027433 Treat null input channels as zero (83ef39ff) (403ec902a)
- import from UXP: Bug 2027433 use nullptr for silent up-mix channels (42f1ba1d) (ddf51d3fa)
- Revert "ported from `custom` branch of UXP: Spoof to Firefox 128 for WebExtensions (ae7c40d4)" (2ec5548c9)
- import from UXP: Bug 2029806: Handle ill-formed UTF16 (f45cce83) (feeff479f)
- import from UXP: [DOM/media] Add some sanity checks to MP3 demuxer. (c748294a) (43464120e)
- import from UXP: [DOM] Validate size in FileReader. (dceb1c4f) (96709570c)
- import from UXP: [DOM] Do not interrupt worker execution if already scheduled. (bf526d70) (b79b897b6)
- ported from UXP: [gfx] Add sanity checks in ANGLE D3D11 renderer. (208e06dc) (6359349a8)

Saturday, April 25, 2026

Weekly browser binaries (20260425)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260425-3219d2d-uxp-8a2c4ec1a0-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260425-3219d2d-uxp-8a2c4ec1a0-xpmod.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom

IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260425-3219d2d-uxp-8a2c4ec1a0-xpmod-ia32.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32

NM28XP build:
Win32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260425-d849524bd-uxp-8a2c4ec1a0-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260425-d849524bd-uxp-8a2c4ec1a0-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260425-d849524bd-uxp-8a2c4ec1a0-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260425-d849524bd-uxp-8a2c4ec1a0-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260425-d849524bd-uxp-8a2c4ec1a0-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #3027 - completely remove all remaining usages of dbus-glib from our tree (1d0967ab3c)
- Issue #3050 - Backport 1379814: Prevent HelperThreads master-task deadlock (9454fcf539)
- Issue #3050 - Backport 1431353: Remove off-thread parse thread limit (52b3fada95)
- Issue #3049 - backport libffi loongarch support (dd64525180)
- Issue #3038 - Fix ARM assembler issues in libpixman. (e98a43e46c)
- [NSS] ensure permittedSubtrees don't match wildcards that could be outside the permitted tree. (662d60c5bf)
- [XPCOM] Update list of executable extensions on Windows. (4d73188003)
- [DOM] More consistently use already-calculated image properties. (7aaf0ab764)
- Issue #2946 - Follow-up: Sanity-check WMF video properties. (8ffe5094c9)
- [network] use nsCOMPtr for mRequest in Base Channel's ScopedRequestSuspender (2ece521467)
- [media] Check alpha data pointer instead of length. (700b73f155)
- [NSS] Protect rwSessionCount with slotLock. (29233ebca8)
- [NSS] Fix memory leak in NSC_GenerateKey error path. (69fdabab8d)
- Issue #3058 - Part 1: Fix arithmetic issue in `ConvertYCbCrToRGB32` (6048fc0fb7)
- [DOM] Update some DOM canvas checks. (4d91f637b6)
- [network] Use locals for `VisitHeader` (269b0cdb58)
- [DOM] Add a death grip. (9e00ce775a)
- [network] Hold strong ref in `nsDownloader::OnDataAvailable`. (cecf760aa5)
- [network] Handle WebSocketChannel::IsPersistentFramePtr correctly. (8d189c4890)
- Issue #3060 - Align cookie magic prefix handling with the updated spec. (fe8d56078e)
- [DOM] Fix access to shared RuntimeService::mNavigatorProperties. (2f1af7557f)
- [webrtc] Hold a self-ref on behalf of sigslot, just in case. (b73e47ce1c)
- [network] Force NUL termination in ToStringBuffer AF_LOCAL. (b55a39ac33)
- [network] Hold strong ref in `nsSyncStreamListener::Available`. (68fd6722f0)
- [network] Ensure UDPSocket remains alive during CloseWithReason. (b6dec9b37c)

No official Pale-Moon changes picked since my last build.

No official Basilisk changes picked since my last build.

Update Notice:
- You may delete file named icudt*.dat and icu63.dll inside program folder when updating from old releases.

* Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.


New build of BOC/UXP for XP!

Test binary:
MailNews Win32 https://o.rthost.win/boc-uxp/mailnews.win32-20260425-40a79c75-uxp-8a2c4ec1a0-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260425-40a79c75-uxp-8a2c4ec1a0-xpmod.7z

source repo (excluding UXP): https://github.com/roytam1/boc-uxp/tree/custom

* Notice: the profile prefix (i.e. parent folder names) are also changed since 2020-08-15 build, you may rename their names before using new binaries when updating from builds before 2020-08-15.

--

New build of HBL-UXP for XP!

Test binary:
IceDove-UXP(mail) https://o.rthost.win/hbl-uxp/icedove.win32-20260425-id-656ea98-uxp-8a2c4ec1a0-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260425-id-656ea98-ia-c642e3c-uxp-8a2c4ec1a0-xpmod.7z

source repo (excluding UXP):
https://github.com/roytam1/icedove-uxp/tree/winbuild
https://github.com/roytam1/iceape-uxp/tree/winbuild


New build of post-deprecated Serpent/moebius for XP!
* Notice: This repo will not be built on regular schedule, and changes are experimental as usual.
** Current moebius patch level should be on par with 52.9, but some security patches can not be applied/ported due to source milestone differences between versions.

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk55-win32-git-20260425-302bb22b4-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260425-302bb22b4-xpmod.7z

repo: https://github.com/roytam1/basilisk55

Repo changes:
- ported from UXP: Issue #3027 - completely remove all remaining usages of dbus-glib from our tree (1d0967ab) (6d2744da8)
- ported from UXP: Issue #3050 - Backport 1379814: Prevent HelperThreads master-task deadlock (9454fcf5) (42025a271)
- import from UXP: Issue #3050 - Backport 1431353: Remove off-thread parse thread limit (52b3fada) (7dc548ee3)
- import from UXP: Issue #3049 - backport libffi loongarch support (dd645251) (7edcb4e7e)
- import from UXP: Issue #3038 - Fix ARM assembler issues in libpixman. (e98a43e4) (42ee52672)
- import from UXP: [NSS] ensure permittedSubtrees don't match wildcards that could be outside the permitted tree. (662d60c5) (f260735d9)
- import from UXP: [XPCOM] Update list of executable extensions on Windows. (4d731880) (7a76ddfc4)
- import from UXP: [DOM] More consistently use already-calculated image properties. (7aaf0ab7) (43dbe7a3c)
- ported from UXP: Issue #2946 - Follow-up: Sanity-check WMF video properties. (8ffe5094) (5b0e12f72)
- import from UXP: [network] use nsCOMPtr for mRequest in Base Channel's ScopedRequestSuspender (2ece5214) (d2f0f0020)
- ported from UXP: [media] Check alpha data pointer instead of length. (700b73f1) (43500eee0)
- import from UXP: [NSS] Protect rwSessionCount with slotLock. (29233ebc) (a55328afd)
- import from UXP: [NSS] Fix memory leak in NSC_GenerateKey error path. (69fdabab) (0fa7b241a)
- import from UXP: Issue #3058 - Part 1: Fix arithmetic issue in `ConvertYCbCrToRGB32` (6048fc0f) (09367b53d)
- import from UXP: [DOM] Update some DOM canvas checks. (4d91f637) (e2c2b6364)
- import from UXP: [network] Use locals for `VisitHeader` (269b0cdb) (d4b409586)
- import from UXP: [DOM] Add a death grip. (9e00ce77) (833519a34)
- import from UXP: [network] Hold strong ref in `nsDownloader::OnDataAvailable`. (cecf760a) (9ebf79d00)
- import from UXP: [network] Handle WebSocketChannel::IsPersistentFramePtr correctly. (8d189c48) (27e802bc6)
- import from UXP: Issue #3060 - Align cookie magic prefix handling with the updated spec. (fe8d5607) (74d13a53a)
- import from UXP: [DOM] Fix access to shared RuntimeService::mNavigatorProperties. (2f1af755) (7614fe3db)
- import from UXP: [webrtc] Hold a self-ref on behalf of sigslot, just in case. (b73e47ce) (78080634a)
- import from UXP: [network] Force NUL termination in ToStringBuffer AF_LOCAL. (b55a39ac) (41934c874)
- import from UXP: [network] Hold strong ref in `nsSyncStreamListener::Available`. (68fd6722) (f3b7fcb56)
- import from UXP: [network] Ensure UDPSocket remains alive during CloseWithReason. (b6dec9b3) (302bb22b4)

Saturday, April 18, 2026

Weekly browser binaries (20260418)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260418-3219d2d-uxp-d4c4c1f6ec-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260418-3219d2d-uxp-d4c4c1f6ec-xpmod.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom

IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260418-3219d2d-uxp-d4c4c1f6ec-xpmod-ia32.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32

NM28XP build:
Win32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260418-d849524bd-uxp-d4c4c1f6ec-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260418-d849524bd-uxp-d4c4c1f6ec-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260418-d849524bd-uxp-d4c4c1f6ec-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260418-d849524bd-uxp-d4c4c1f6ec-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260418-d849524bd-uxp-d4c4c1f6ec-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #3003 prerequisite - Split non-sRGB CSS color helpers out of nsCSSParser (c249eee4d1)
- Issue #3003 - Add CSS lch() color parsing support (576265905a)
- Issue #3043 - Fix stack OOB write in nsLocaleService::GetLocaleFromAcceptLanguage bounds checks (3c7ab8a384)
- Issue #3045 - backport of bug 1350760 - atomization fast-path improvements (b44216a883)
- Issue #3047 - Added a null-argument guard in uriloader/exthandler/nsExternalHelperAppService (3836a57d47)

No official Pale-Moon changes picked since my last build.

No official Basilisk changes picked since my last build.

My changes since my last build:
- [Basilisk] update UAO from Dactyloidae fork (a4db612fb8)
- Spoof to Firefox 128 for WebExtensions (ae7c40d461)

Update Notice:
- You may delete file named icudt*.dat and icu63.dll inside program folder when updating from old releases.

* Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.


New build of BOC/UXP for XP!

Test binary:
MailNews Win32 https://o.rthost.win/boc-uxp/mailnews.win32-20260418-40a79c75-uxp-d4c4c1f6ec-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260418-40a79c75-uxp-d4c4c1f6ec-xpmod.7z

source repo (excluding UXP): https://github.com/roytam1/boc-uxp/tree/custom

* Notice: the profile prefix (i.e. parent folder names) are also changed since 2020-08-15 build, you may rename their names before using new binaries when updating from builds before 2020-08-15.

--

New build of HBL-UXP for XP!

Test binary:
IceDove-UXP(mail) https://o.rthost.win/hbl-uxp/icedove.win32-20260418-id-656ea98-uxp-d4c4c1f6ec-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260418-id-656ea98-ia-c642e3c-uxp-d4c4c1f6ec-xpmod.7z

source repo (excluding UXP):
https://github.com/roytam1/icedove-uxp/tree/winbuild
https://github.com/roytam1/iceape-uxp/tree/winbuild


New build of post-deprecated Serpent/moebius for XP!
* Notice: This repo will not be built on regular schedule, and changes are experimental as usual.
** Current moebius patch level should be on par with 52.9, but some security patches can not be applied/ported due to source milestone differences between versions.

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk55-win32-git-20260418-6d817e348-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260418-6d817e348-xpmod.7z

repo: https://github.com/roytam1/basilisk55

Repo changes:
- ported from `custom` branch of UXP: [Basilisk] update UAO from Dactyloidae fork (a4db612f) (f2ff3841c)
- ported from `custom` branch of UXP: Spoof to Firefox 128 for WebExtensions (ae7c40d4) (0a26c24bb)
- ported from UXP: Issue #3003 prerequisite - Split non-sRGB CSS color helpers out of nsCSSParser (c249eee4) (b0180d228)
- import from UXP: Issue #3003 - Add CSS lch() color parsing support (57626590) (1633c82b7)
- import from UXP: Issue #3043 - Fix stack OOB write in nsLocaleService::GetLocaleFromAcceptLanguage bounds checks (3c7ab8a3) (a54588899)
- import from UXP: Issue #3047 - Added a null-argument guard in uriloader/exthandler/nsExternalHelperAppService (3836a57d) (b6e99c67f)
- ported from UXP: Issue #3045 - backport of bug 1350760 - atomization fast-path improvements (b44216a8) (6d817e348)

Saturday, April 11, 2026

Weekly browser binaries (20260411)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260411-3219d2d-uxp-c8f7030b13-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260411-3219d2d-uxp-c8f7030b13-xpmod.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom

IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260411-3219d2d-uxp-c8f7030b13-xpmod-ia32.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32

NM28XP build:
Win32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260411-d849524bd-uxp-c8f7030b13-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260411-d849524bd-uxp-c8f7030b13-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260411-d849524bd-uxp-c8f7030b13-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260411-d849524bd-uxp-c8f7030b13-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260411-d849524bd-uxp-c8f7030b13-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #3027 - modify nsGIOService to call libdbus directly instead of using dbus-glib (c97bc33a87)
- Issue #3027 - remove all uses of dbus-glib from widget/ (6ce1b9a8c0)
- Issue #3042 - Add canvas WebGL context `powerPreference` (546e0075dd)

No official Pale-Moon changes picked since my last build.

No official Basilisk changes picked since my last build.

Update Notice:
- You may delete file named icudt*.dat and icu63.dll inside program folder when updating from old releases.

* Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.


New build of BOC/UXP for XP!

Test binary:
MailNews Win32 https://o.rthost.win/boc-uxp/mailnews.win32-20260411-40a79c75-uxp-c8f7030b13-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260411-40a79c75-uxp-c8f7030b13-xpmod.7z

source repo (excluding UXP): https://github.com/roytam1/boc-uxp/tree/custom

* Notice: the profile prefix (i.e. parent folder names) are also changed since 2020-08-15 build, you may rename their names before using new binaries when updating from builds before 2020-08-15.

--

New build of HBL-UXP for XP!

Test binary:
IceDove-UXP(mail) https://o.rthost.win/hbl-uxp/icedove.win32-20260411-id-656ea98-uxp-c8f7030b13-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260411-id-656ea98-ia-c642e3c-uxp-c8f7030b13-xpmod.7z

source repo (excluding UXP):
https://github.com/roytam1/icedove-uxp/tree/winbuild
https://github.com/roytam1/iceape-uxp/tree/winbuild


New build of post-deprecated Serpent/moebius for XP!
* Notice: This repo will not be built on regular schedule, and changes are experimental as usual.
** Current moebius patch level should be on par with 52.9, but some security patches can not be applied/ported due to source milestone differences between versions.

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk55-win32-git-20260411-2f20f30db-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260411-2f20f30db-xpmod.7z

repo: https://github.com/roytam1/basilisk55

Repo changes:
- import from UXP: Issue #3027 - modify nsGIOService to call libdbus directly instead of using dbus-glib (c97bc33a) (ad86e28ed)
- import from UXP: Issue #3027 - remove all uses of dbus-glib from widget/ (6ce1b9a8) (39391a877)
- import from UXP: Issue #3042 - Add canvas WebGL context `powerPreference` (546e0075) (2f20f30db)

Saturday, April 4, 2026

Weekly browser binaries (20260404)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260404-3219d2d-uxp-4d6414cfd0-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260404-3219d2d-uxp-4d6414cfd0-xpmod.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom

IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260404-3219d2d-uxp-4d6414cfd0-xpmod-ia32.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32

NM28XP build:
Win32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260404-d849524bd-uxp-4d6414cfd0-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260404-d849524bd-uxp-4d6414cfd0-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260404-d849524bd-uxp-4d6414cfd0-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260404-d849524bd-uxp-4d6414cfd0-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260404-d849524bd-uxp-4d6414cfd0-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #2551 - implement TypedArray.prototype.toSorted (393d890730)
- No issue - Add 10.4 and 26.* SDK versions to KNOWN_SDK_VERSIONS (45ae2d89ff)
- No issue - Add convolver sanity check (09c0393640)
- [XPCOM] Add more validation to SnappyUncompressInputStream (d323fc3012)
- [gfx] Use local statics for harfbuzz callback pointers (b96505c0e3)
- [network] Ignore non-compliant http server header. (0a5af25d60)
- [NSS] Update NSS (custom) (61c6b4c1aa)

No official Pale-Moon changes picked since my last build.

No official Basilisk changes picked since my last build.

Update Notice:
- You may delete file named icudt*.dat and icu63.dll inside program folder when updating from old releases.

* Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.


New build of BOC/UXP for XP!

Test binary:
MailNews Win32 https://o.rthost.win/boc-uxp/mailnews.win32-20260404-40a79c75-uxp-4d6414cfd0-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260404-40a79c75-uxp-4d6414cfd0-xpmod.7z

source repo (excluding UXP): https://github.com/roytam1/boc-uxp/tree/custom

* Notice: the profile prefix (i.e. parent folder names) are also changed since 2020-08-15 build, you may rename their names before using new binaries when updating from builds before 2020-08-15.

--

New build of HBL-UXP for XP!

Test binary:
IceDove-UXP(mail) https://o.rthost.win/hbl-uxp/icedove.win32-20260404-id-656ea98-uxp-4d6414cfd0-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260404-id-656ea98-ia-c642e3c-uxp-4d6414cfd0-xpmod.7z

source repo (excluding UXP):
https://github.com/roytam1/icedove-uxp/tree/winbuild
https://github.com/roytam1/iceape-uxp/tree/winbuild


New build of post-deprecated Serpent/moebius for XP!
* Notice: This repo will not be built on regular schedule, and changes are experimental as usual.
** Current moebius patch level should be on par with 52.9, but some security patches can not be applied/ported due to source milestone differences between versions.

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk55-win32-git-20260404-a02ab89ea-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260404-a02ab89ea-xpmod.7z

repo: https://github.com/roytam1/basilisk55

Repo changes:
- import from UXP: Issue #2551 - implement TypedArray.prototype.toSorted (393d8907) (5a3009a5f)
- import from UXP: No issue - Add convolver sanity check (09c03936) (ae3b17332)
- import from UXP: [XPCOM] Add more validation to SnappyUncompressInputStream (d323fc30) (c0b640264)
- import from UXP: [gfx] Use local statics for harfbuzz callback pointers (b96505c0) (ccae21335)
- import from UXP: [network] Ignore non-compliant http server header. (0a5af25d) (502100149)
- import from UXP: [NSS] Update NSS (custom) (61c6b4c1) (a02ab89ea)

Saturday, March 28, 2026

Weekly browser binaries (20260328)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260328-3219d2d-uxp-956cd0a5cc-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260328-3219d2d-uxp-956cd0a5cc-xpmod.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom

IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260328-3219d2d-uxp-956cd0a5cc-xpmod-ia32.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32

NM28XP build:
Win32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260328-d849524bd-uxp-956cd0a5cc-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260328-d849524bd-uxp-956cd0a5cc-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260328-d849524bd-uxp-956cd0a5cc-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260328-d849524bd-uxp-956cd0a5cc-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260328-d849524bd-uxp-956cd0a5cc-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Cloudflare Image Resizing fix (c8460ae3e7)
- Issue #3016 - allow url.CanParse to use custom-scheme bases to match current spec (a704425358)
- Issue #2551 - implement TypedArray.prototype.with (3d131186be)
- Issue #3011 - Part 1: Add As{Text|Html}Editor() and AsEditorBase() (2f20100059)
- Issue #3011 - Part 2: Switch spellchecker root to Shadow DOM. (e701dad7ef)
- Issue #3011 - Part 3: Handle edge case for spellchecking. (964a72079a)
- Issue #3020 - document.currentScript should be null in modules (94ffd74cab)
- Issue #3020 - Update `currentScript` when dealing with shadow DOM. (eee99b32cc)
- Issue #3020 - Clear currentScript after running microtasks (fdee9737a8)
- Issue #2548 - Part 1 - Implement MathML DOM and pre-requisites. https://bugzilla.mozilla.org/show_bug.cgi?id=1571487 Introduce interface mixins. https://bugzilla.mozilla.org/show_bug.cgi?id=1414372 Switch XPathEvaluator to using IDL mixins and remaining users of IDL "implements" over to mixin syntax. https://bugzilla.mozilla.org/show_bug.cgi?id=1574195 Introduce GlobalEventHandlers/DocumentAndElementEventHandlers/ElementCSSInlineStyle mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=1579457 Introduce DocumentAndElementEventHandlers to more closely align with the HTML spec. https://bugzilla.mozilla.org/show_bug.cgi?id=1330457 Remove the use of IsCallerChrome in FetchRequest. https://bugzilla.mozilla.org/show_bug.cgi?id=1335368 (85600c7378)
- Issue #2548 - Part 2 - Collection of WebIDL parsing updates in an attempt to fix partial interface mixin error. We should ensure, at build-time, that partial interfaces are defined in the same file as the interface they extend. Since our build system doesn't really support correct dep builds if they're placed in a different file. https://bugzilla.mozilla.org/show_bug.cgi?id=1333117 WebIDL: Better error message for trying to inherit from a mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=1575384 Fix webidl identifier conflicts involving typedefs to produce saner exceptions. https://bugzilla.mozilla.org/show_bug.cgi?id=1531623 Disallow nullable types for WebIDL constants. https://bugzilla.mozilla.org/show_bug.cgi?id=1535647 Add support for extended attributes on types in Web IDL https://bugzilla.mozilla.org/show_bug.cgi?id=1359269 Allow LenientFloat to be only in a specific overload https://bugzilla.mozilla.org/show_bug.cgi?id=1020975 (81b4f0c352)
- Issue #2548 - Part 3 - Fix some MathML issues encountered since WebIDL works. Add an nsContentUtils API for getting the CallerType of a JSContext. https://bugzilla.mozilla.org/show_bug.cgi?id=1316616 Also added a Fetch() change that was not in the Mozilla patch. (20354b672f)
- Issue #2548 - Part 4 - Fix some missed changes for ElementCSSInlineStyle. Introduce GlobalEventHandlers/DocumentAndElementEventHandlers/ElementCSSInlineStyle mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=1579457 (502c704770)
- Issue #2548 - Part 5 - Implement the HTMLOrForeignElement mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=1577660 Add 'preventScroll' option to HTMLElement's, SVGElement's and XULElement's 'focus' method. https://bugzilla.mozilla.org/show_bug.cgi?id=1374045 (3febe21f99)

No official Pale-Moon changes picked since my last build.

No official Basilisk changes picked since my last build.

Update Notice:
- You may delete file named icudt*.dat and icu63.dll inside program folder when updating from old releases.

* Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.


New build of BOC/UXP for XP!

Test binary:
MailNews Win32 https://o.rthost.win/boc-uxp/mailnews.win32-20260328-40a79c75-uxp-956cd0a5cc-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260328-40a79c75-uxp-956cd0a5cc-xpmod.7z

source repo (excluding UXP): https://github.com/roytam1/boc-uxp/tree/custom

* Notice: the profile prefix (i.e. parent folder names) are also changed since 2020-08-15 build, you may rename their names before using new binaries when updating from builds before 2020-08-15.

--

New build of HBL-UXP for XP!

Test binary:
IceDove-UXP(mail) https://o.rthost.win/hbl-uxp/icedove.win32-20260328-id-656ea98-uxp-956cd0a5cc-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260328-id-656ea98-ia-c642e3c-uxp-956cd0a5cc-xpmod.7z

source repo (excluding UXP):
https://github.com/roytam1/icedove-uxp/tree/winbuild
https://github.com/roytam1/iceape-uxp/tree/winbuild


New build of post-deprecated Serpent/moebius for XP!
* Notice: This repo will not be built on regular schedule, and changes are experimental as usual.
** Current moebius patch level should be on par with 52.9, but some security patches can not be applied/ported due to source milestone differences between versions.

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk55-win32-git-20260328-eb31645dc-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260328-eb31645dc-xpmod.7z

repo: https://github.com/roytam1/basilisk55

Repo changes:
- ported from UXP: Cloudflare Image Resizing fix (c8460ae3) (2d69b6c88)
- ported from UXP: Issue #3016 - allow url.CanParse to use custom-scheme bases to match current spec (a7044253) (0fd3dc434)
- ported from UXP: Issue #2551 - implement TypedArray.prototype.with (3d131186) (1b04d4b0b)
- ported from UXP: Issue #3011 - Part 1: Add As{Text|Html}Editor() and AsEditorBase() (2f201000) (76bf4dc35)
- ported from UXP: Issue #3011 - Part 2: Switch spellchecker root to Shadow DOM. (e701dad7) (984b6e3c3)
- import from UXP: Issue #3011 - Part 3: Handle edge case for spellchecking. (964a7207) (bbe59f5fe)
- import from UXP: Issue #3020 - document.currentScript should be null in modules (94ffd74c) (fc00851a7)
- import from UXP: Issue #3020 - Update `currentScript` when dealing with shadow DOM. (eee99b32) (0db6bb4b5)
- import from UXP: Issue #3020 - Clear currentScript after running microtasks (fdee9737) (c7997448b)
- ported from UXP:
 - Issue #2548 - Part 1 - Implement MathML DOM and pre-requisites. https://bugzilla.mozilla.org/show_bug.cgi?id=1571487 Introduce interface mixins. https://bugzilla.mozilla.org/show_bug.cgi?id=1414372 Switch XPathEvaluator to using IDL mixins and remaining users of IDL "implements" over to mixin syntax. https://bugzilla.mozilla.org/show_bug.cgi?id=1574195 Introduce GlobalEventHandlers/DocumentAndElementEventHandlers/ElementCSSInlineStyle mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=1579457 Introduce DocumentAndElementEventHandlers to more closely align with the HTML spec. https://bugzilla.mozilla.org/show_bug.cgi?id=1330457 Remove the use of IsCallerChrome in FetchRequest. https://bugzilla.mozilla.org/show_bug.cgi?id=1335368 (85600c73)
 - Issue #2548 - Part 2 - Collection of WebIDL parsing updates in an attempt to fix partial interface mixin error. We should ensure, at build-time, that partial interfaces are defined in the same file as the interface they extend. Since our build system doesn't really support correct dep builds if they're placed in a different file. https://bugzilla.mozilla.org/show_bug.cgi?id=1333117 WebIDL: Better error message for trying to inherit from a mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=1575384 Fix webidl identifier conflicts involving typedefs to produce saner exceptions. https://bugzilla.mozilla.org/show_bug.cgi?id=1531623 Disallow nullable types for WebIDL constants. https://bugzilla.mozilla.org/show_bug.cgi?id=1535647 Add support for extended attributes on types in Web IDL https://bugzilla.mozilla.org/show_bug.cgi?id=1359269 Allow LenientFloat to be only in a specific overload https://bugzilla.mozilla.org/show_bug.cgi?id=1020975 (81b4f0c3)
 - Issue #2548 - Part 3 - Fix some MathML issues encountered since WebIDL works. https://bugzilla.mozilla.org/show_bug.cgi?id=1316616 Also added a Fetch() change that was not in the Mozilla patch. (20354b67)
 - Issue #2548 - Part 4 - Fix some missed changes for ElementCSSInlineStyle. Introduce GlobalEventHandlers/DocumentAndElementEventHandlers/ElementCSSInlineStyle mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=157945 (502c7047)
 - Issue #2548 - Part 5 - Implement the HTMLOrForeignElement mixin. https://bugzilla.mozilla.org/show_bug.cgi?id=1577660 Add 'preventScroll' option to HTMLElement's, SVGElement's and XULElement's 'focus' method. https://bugzilla.mozilla.org/show_bug.cgi?id=1374045 (3febe21f) (eb31645dc)

Saturday, March 21, 2026

Weekly browser binaries (20260321)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260321-3219d2d-uxp-e1ab6d5746-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260321-3219d2d-uxp-e1ab6d5746-xpmod.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/custom

IA32 Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260321-3219d2d-uxp-e1ab6d5746-xpmod-ia32.7z

source code that is comparable to my current working tree is available here: https://github.com/roytam1/UXP/commits/ia32

NM28XP build:
Win32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260321-d849524bd-uxp-e1ab6d5746-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260321-d849524bd-uxp-e1ab6d5746-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260321-d849524bd-uxp-e1ab6d5746-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260321-d849524bd-uxp-e1ab6d5746-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260321-d849524bd-uxp-e1ab6d5746-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #2987 - Part 1: Add `AnalyserNode` constructor. (f372f32492)
- Issue #2987 - Part 2: Add `AudioBufferSourceNode` constructor. (0cbf609b3f)
- Issue #2987 - Part 3: Add `GainNode` constructor. (c4fa2c5c6f)
- Issue #2987 - Part 4: Add `DelayNode` constructor. (778db35c34)
- Issue #2987 - Part 5: Add `BiQuadFilterNode` constructor. (5b7efa6c93)
- Issue #2987 - Part 6: Add `IIRFilterNode` constructor. (37f7e56e78)
- Issue #2987 - Part 7: Add `WaveShaperNode` constructor. (5c1996d7f2)
- Issue #2987 - Part 8: Add `PannerNode` constructor. (dc27c4a81d)
- Issue #2987 - Part 9: Add `StereoPannerNode` constructor. (5803d8b571)
- Issue #2987 - Part 10: Add `ConvolverNode` constructor. (a11a979b3b)
- Issue #2987 - Part 11: Add `ChannelSplitterNode` constructor. (6894c6849a)
- Issue #2987 - Part 12: Add `ChannelMergerNode` constructor. (abd12bc195)
- Issue #2987 - Part 13: Add `DynamicsCompressorNode` constructor. (f07c3b501e)
- Issue #2987 - Part 14: Add `OscillatorNode` constructor. (304f413c06)
- Issue #2987 - Part 15: Add `PeriodicWave` constructor. (b097097e28)
- Issue #2987 - Part 16: Add `AudioBuffer` constructor. (c86e080a0c)
- Issue #2987 - Part 17: Add `MediaElementAudioSourceNode` constructor. (e9474a5dc0)
- Issue #2987 - Part 18: Add `MediaStreamAudioSourceNode` constructor. (6456244887)
- Issue #2987 - Part 19: Add `MediaStreamAudioDestinationNode` constructor. (5cb44135d1)
- Issue #2997 - Update expat source to 2.7.4 and apply local patches. (c31f629aee)
- Issue #2862 - Initial attempt at a css lowering (ce4b9975db)
- Issue #2862 - add initial nested css test file (fc09c7cb34)
- Issue #2862 - Modify the css lowerer so that the lowering pass now recognizes bare type-selector nested rules and combinator-led cases (34f9837649)
- Issue #2862 - Fix a few nested selectors (d37e667f9a)
- Issue #2862 - Split the css lowering functionality out to a separate file for easier maintenance (d9b66581ac)
- Issue #2862 - more tests files for nested css (3f299e8f2b)
- Issue #2862 - handle more edge cases in css lowering (6d9547c688)
- Issue #2862 - Change code references from CSS lowering to CSS flattening (a6356fff88)
- Issue #2862 - Change tests from lowering to flattening (ac4c7bca08)
- Issue #2862 - Remove unused vars in CSS flattener (72cb599848)
- Issue #2862 - css nesting pref true by default (ea86d15635)
- Issue #3001 - Restore table reference frame call. (e5e86a8124)
- Issue #2229 - Follow-up: Don't attempt on-stack replacement for TLA modules (11b0b680e1)
- Issue #2551 - implement array.prototype.with (d5566bbb0f)
- Issue #2551 - implement array.prototype.toSpliced (7209aaa021)
- Issue #2897 followup - Do not hardcode jemalloc page size on LoongArch (2aec1ada9e)

No official Pale-Moon changes picked since my last build.

No official Basilisk changes picked since my last build.

Update Notice:
- You may delete file named icudt*.dat and icu63.dll inside program folder when updating from old releases.

* Notice: From now on, UXP rev will point to `custom` branch of my UXP repo instead of MCP UXP repo, while "official UXP changes" shows only `tracking` branch changes.


New build of BOC/UXP for XP!

Test binary:
MailNews Win32 https://o.rthost.win/boc-uxp/mailnews.win32-20260321-40a79c75-uxp-e1ab6d5746-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260321-40a79c75-uxp-e1ab6d5746-xpmod.7z

source repo (excluding UXP): https://github.com/roytam1/boc-uxp/tree/custom

* Notice: the profile prefix (i.e. parent folder names) are also changed since 2020-08-15 build, you may rename their names before using new binaries when updating from builds before 2020-08-15.

--

New build of HBL-UXP for XP!

Test binary:
IceDove-UXP(mail) https://o.rthost.win/hbl-uxp/icedove.win32-20260321-id-656ea98-uxp-e1ab6d5746-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260321-id-656ea98-ia-c642e3c-uxp-e1ab6d5746-xpmod.7z

source repo (excluding UXP):
https://github.com/roytam1/icedove-uxp/tree/winbuild
https://github.com/roytam1/iceape-uxp/tree/winbuild


New build of post-deprecated Serpent/moebius for XP!
* Notice: This repo will not be built on regular schedule, and changes are experimental as usual.
** Current moebius patch level should be on par with 52.9, but some security patches can not be applied/ported due to source milestone differences between versions.

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk55-win32-git-20260321-8552c7ed4-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260321-8552c7ed4-xpmod.7z

repo: https://github.com/roytam1/basilisk55

Repo changes:
- import from UXP: Issue #2997 - Update expat source to 2.7.4 and apply local patches. (c31f629a) (f78b7604e)
- ported from UXP:
 - Issue #2862 - Initial attempt at a css lowering (ce4b9975)
 - Issue #2862 - add initial nested css test file (fc09c7cb)
 - Issue #2862 - Modify the css lowerer so that the lowering pass now recognizes bare type-selector nested rules and combinator-led cases (34f98376)
 - Issue #2862 - Fix a few nested selectors (d37e667f)
 - Issue #2862 - Split the css lowering functionality out to a separate file for easier maintenance (d9b66581)
 - Issue #2862 - more tests files for nested css (3f299e8f)
 - Issue #2862 - handle more edge cases in css lowering (6d9547c6)
 - Issue #2862 - Change code references from CSS lowering to CSS flattening (a6356fff)
 - Issue #2862 - Change tests from lowering to flattening (ac4c7bca)
 - Issue #2862 - Remove unused vars in CSS flattener (72cb5998)
 - Issue #2862 - css nesting pref true by default (ea86d156) (91488e277)
- import from UXP: Issue #3001 - Restore table reference frame call. (e5e86a81) (390598bee)
- import from UXP: Issue #2229 - Follow-up: Don't attempt on-stack replacement for TLA modules (11b0b680) (a530696d3)
- ported from UXP: Issue #2551 - implement array.prototype.with (d5566bbb) (6f86c144d)
- import from UXP: Issue #2551 - implement array.prototype.toSpliced (7209aaa0) (751ea453c)
- import from UXP: Issue #2897 followup - Do not hardcode jemalloc page size on LoongArch (2aec1ada) (8552c7ed4)