Monday, September 7, 2026

stb_avif: a vibing effort with LLM

some months ago I was thinking about: can we have a minimal stb_image alike AVIF decoder?

I asked my friend @lenchan139 and he happily vibe me thing exactly what I asked for: https://github.com/lenchan139/stb_avif, but what is working is just HEIF container parsing with a dav1d backend and YUV-to-RGB conversion, and its internal AV1 decoder is a stub at all.

He did try to vibe internal AV1 decoder but everything is not working, maybe due to missing references and/or samples.

2 months later (which is 3 weeks before today), I finally have time to pick it up, trying to create a working version.

First, I asked ChatGPT to give me a set of headers for new internal AV1 decoder, after that free plan limit triggered (decoder started to produce some correct pixels at the time) and I switched to use opencode free models for later tasks.

First opencode free model is DeepSeek4 Flash free, which is quite decent. But in the time, the free period of DS4F ends and I have to use opencode's Big Pickle for a while to fix decoder bugs.

Then I tried other free models like nemotron 3 ultra and muse spark 1.2 but their output are not satisfying me.

After that opencode and openrouter giving out unlimited usage "Ox Alpha" for a short period of time and I used it a lot, which is quite satisfying and quite progressed.

Good times are short and Ox Alpha free period ended, and there is no alternatives that has same level as Ox Alpha, I went back to old path: pack my files and upload it to ChatGPT and ask questions. ChatGPT working for about 25 minutes and tried to give some answers, it may give out some bugfix patches or it give out intermediate answer without any patch.

After some more testings, I found that Mimo v2.5 free is better than Big Pickle and still available to use and I switched to it for my later vibing.

Later workflow is like a loop: adding non-working new sample files, tell LLM about that and it started testing and tracing the error. When opencode free usage is used up, switch to new IP and continue.

Vibed for 3 weeks and now stb_avif is quite usable with internal AV1 decoder.

My commits are pushed and I created a PR to upstream, as I posted upstream link to Hacker News in the past.

Conclusion: as a F2P(Free-to-Play) LLM user, you can still able to code(or say, vibe) something big.

Saturday, September 5, 2026

Weekly browser binaries (20260905)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260905-3219d2d-uxp-11ae877de0-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260905-3219d2d-uxp-11ae877de0-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-20260905-3219d2d-uxp-11ae877de0-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-20260905-d849524bd-uxp-11ae877de0-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260905-d849524bd-uxp-11ae877de0-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260905-d849524bd-uxp-11ae877de0-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260905-d849524bd-uxp-11ae877de0-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260905-d849524bd-uxp-11ae877de0-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Replace strnlen with memchr. See code comment. (a74a510873)
- [DOM] Keep resized windows within reasonable bounds. (d91415b005)
- [gfx] Hold a strong ref to platform font entry. (3c098a9891)
- [gfx] Add buffer integer limit check to NVImage::GetAsSourceSurface. (60b7352394)
- [gfx] Check format 4 subtable length and Zero newly-allocated range. (1d17f9bf14)
- [gfx] Clean up cairo-win32-printing-surface.c (1d84253588)
- [layout] Prevent recursion of callbacks in PressShell. (d5fd5bf3ca)
- Bug 2057204 - use the right AddSystemEventListener variant with nsFileControlFrame::mMouseListener (86c8267530)
- [image] Simplify and further improve handling of destroying raster images. (bfe7453ddf)
- Resolve various assertions in debug builds (a5e46d4bbd)
- [DOM] Improve MediaInfo/Data a little. (887b1940d4)
- [gfx] Skia: Port grey mode pixelspace fix. (832062fa67)
- [parser] Only check for high surrogates when intending to avoid split pair. (0ae79a0f7e)
- Bug 2058622 - Validate selected options entries. (7b26e2f7cd)
- No issue - remove duplicate HTMLWin32ObjectAccessible from build. (3151562123)
- [DOM] Remove content from parent node before appending. (c9c1f678d3)
- [DOM] Clear mDocumentChildren after XSLT branch consumes it in DidBuildModel. (3687adcaec)
- Bug 2027380 - pass offset-adjusted pointer to SEC_ASN1GetSubtemplate in QuickDER call sites. (e4ca42477f)
- Bug 2029289 - fix off-by-one offset in pk11_buildNickname cert_id branch. (56fc8b29ec)
- Bug 2029750 - Reject undersized IV and key SECItems in PBES2 cipher dispatchers. (5227d5a9a6)
- Bug 2029794 - handle NSSCertificate identity changing in __CERT_AddTempCertToPerm (f86aa85f98)
- Bug 2027388 - add defensive check on pk11_HandUnwrap key size. (d8ef293df7)
- [DOM media] Reset CORS mode as-appropriate. (8980dbb8fc)
- [network] Reject NUL bytes in chunked trailer and chunk-size lines. (14e880ec29)
- [DOM] Hold a strong ref to the composed document in nsFocusManager. (0dd6e1178c)
- [editor] Hold a strong ref. (e3fe86d097)

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:
- Revert "Issue #2473 - implement :has() CSS pseudo class" (906f4cb77a)
- Revert "No issue - remove duplicate HTMLWin32ObjectAccessible from build." (6116fc571f)

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-20260905-40a79c75-uxp-11ae877de0-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260905-40a79c75-uxp-11ae877de0-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-20260905-id-656ea98-uxp-11ae877de0-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260905-id-656ea98-ia-c642e3c-uxp-11ae877de0-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-20260905-69d8d0eeb-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260905-69d8d0eeb-xpmod.7z

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

Repo changes:
- Revert "ported from UXP: Issue #2473 - implement :has() CSS pseudo class (aed631e5)" (f37ae9305)
- import from UXP:
 - Bug 2027380 - pass offset-adjusted pointer to SEC_ASN1GetSubtemplate in QuickDER call sites. (e4ca42477f)
 - Bug 2029289 - fix off-by-one offset in pk11_buildNickname cert_id branch. (56fc8b29ec)
 - Bug 2029750 - Reject undersized IV and key SECItems in PBES2 cipher dispatchers. (5227d5a9a6)
 - Bug 2029794 - handle NSSCertificate identity changing in __CERT_AddTempCertToPerm (f86aa85f98)
 - Bug 2027388 - add defensive check on pk11_HandUnwrap key size. (d8ef293df7) (ca2859464)
- import from UXP: Replace strnlen with memchr. See code comment. (a74a5108) (60dd79100)
- ported from UXP: [DOM] Keep resized windows within reasonable bounds. (d91415b0) (241221671)
- import from UXP: [gfx] Hold a strong ref to platform font entry. (3c098a98) (a97442845)
- ported from UXP: [gfx] Add buffer integer limit check to NVImage::GetAsSourceSurface. (60b73523) (da097637e)
- import from UXP: [gfx] Check format 4 subtable length and Zero newly-allocated range. (1d17f9bf) (2a03a5cdc)
- import from UXP: [gfx] Clean up cairo-win32-printing-surface.c (1d842535) (62bbea2f1)
- ported from UXP: [layout] Prevent recursion of callbacks in PressShell. (d5fd5bf3) (0be2c29bf)
- import from UXP: Bug 2057204 - use the right AddSystemEventListener variant with nsFileControlFrame::mMouseListener (86c82675) (8431cec2d)
- import from UXP: [image] Simplify and further improve handling of destroying raster images. (bfe7453d) (b0b4201ff)
- ported from UXP: Resolve various assertions in debug builds (a5e46d4b) (b1721e606)
- import from UXP: [DOM] Improve MediaInfo/Data a little. (887b1940) (28f2ef572)
- import from UXP: [gfx] Skia: Port grey mode pixelspace fix. (832062fa) (b90fb195b)
- import from UXP: [parser] Only check for high surrogates when intending to avoid split pair. (0ae79a0f) (337ccdc67)
- import from UXP: Bug 2058622 - Validate selected options entries. (7b26e2f7) (0c41b7d2c)
- import from UXP: [DOM] Remove content from parent node before appending. (c9c1f678) (c0e7cbedd)
- import from UXP: [DOM] Clear mDocumentChildren after XSLT branch consumes it in DidBuildModel. (3687adca) (4fde6fed6)
- import from UXP: [DOM media] Reset CORS mode as-appropriate. (8980dbb8) (2174ea5e0)
- import from UXP: [network] Reject NUL bytes in chunked trailer and chunk-size lines. (14e880ec) (8a2f7d830)
- import from UXP: [DOM] Hold a strong ref to the composed document in nsFocusManager. (0dd6e117) (7947eff86)
- import from UXP: [editor] Hold a strong ref. (e3fe86d0) (69d8d0eeb)

Saturday, August 15, 2026

Weekly browser binaries (20260815)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260815-3219d2d-uxp-e5e0e958e3-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260815-3219d2d-uxp-e5e0e958e3-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-20260815-3219d2d-uxp-e5e0e958e3-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-20260815-d849524bd-uxp-e5e0e958e3-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260815-d849524bd-uxp-e5e0e958e3-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260815-d849524bd-uxp-e5e0e958e3-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260815-d849524bd-uxp-e5e0e958e3-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260815-d849524bd-uxp-e5e0e958e3-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #2473 - implement :has() CSS pseudo class (aed631e589)
- Issue #3157 - Implement support for adoptedStyleSheets (785da0a0c3)

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-20260815-40a79c75-uxp-e5e0e958e3-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260815-40a79c75-uxp-e5e0e958e3-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-20260815-id-656ea98-uxp-e5e0e958e3-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260815-id-656ea98-ia-c642e3c-uxp-e5e0e958e3-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-20260815-ff12641a1-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260815-ff12641a1-xpmod.7z

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

Repo changes:
- ported from UXP: Issue #2473 - implement :has() CSS pseudo class (aed631e5) (7aed4de76)
- ported from UXP: Issue #3157 - Implement support for adoptedStyleSheets (785da0a0) (ff12641a1)

Saturday, August 1, 2026

Weekly browser binaries (20260801)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260801-3219d2d-uxp-bd1ccc490e-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260801-3219d2d-uxp-bd1ccc490e-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-20260801-3219d2d-uxp-bd1ccc490e-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-20260801-d849524bd-uxp-bd1ccc490e-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260801-d849524bd-uxp-bd1ccc490e-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260801-d849524bd-uxp-bd1ccc490e-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260801-d849524bd-uxp-bd1ccc490e-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260801-d849524bd-uxp-bd1ccc490e-w7plus-avx2.7z

Official UXP changes picked since my last build:
- No Issue - Remove the half-life experiment in HTTP cache (da157b41a3)
- [network] Add usrsctp TSN gap check. (105f231910)
- [layout] Add corner-case correctness check in DottedCornerFinder::FindBestOverlap. (49c7e3445f)
- [DOM] Stop accepting audio samples with too low sample rates. (5faa70e3aa)
- No issue - CallUpdateWindow is [[nodiscard]], but we don't need to use the result here. (dbfe4bd5a6)
- [parser] Associate image elements with form only if the form and the intended parent are in the same tree. (5ac81bf6ff)
- Issue #2404 - Improvements to CSS aspect-ratio spec compliance (3905cc5bd5)
- Issue #2404 - Fix aspect ratio sizing for grid items (8cf6c58858)
- [image] Make sure the image was fully and cleanly decoded before finalizing its animation state as complete. (e252b3856a)
- No issue - Use `strnlen` instead of `strnlen_s`. (5a765da5ca)
- Bug 2029734: Flush before calling sctp_process_init() (44365a9dbc)
- Bug 2049523 - Make ToJSValue for float consistent with double. (db7d9c4c76)
- Issue #2404 - Split aspect ratio enum types into a separate header to fix compilation issues (d6022d3847)
- Bug 2045742 (34cb4816c2)
- [DOM media] Perform more thorough checks on video regions. (06e746865c)
- Issue #3061 Follow-up: Remove network tickler prefs (0f9c761769)
- [layout] Fix nsFrameSetFrame primary frame handling of replicated children. (e5b3bc7cf9)
- [network] Fix CacheEntry::mDoomCallback data race. (9111049721)
- Bug 2027349 - reject empty nickname in PK11_TraverseCertsForNicknameInSlot. (3d7dbc8fb9)
- Bug 2027362 - bound usageCount in PK11_UnwrapPrivKey to keyTemplate capacity. (ec58fff3ca)
- Bug 2029901 - Guard against keySize overflow in IKE PRF/PRF+ output sizing. (1ed628fe3a)
- Bug 2027373 - guard space subtraction in ssl_CallCustomExtensionSenders. (97201f8758)
- Bug 2027371 - rewrite labelLen bound in tls13_HkdfExpandLabelGeneral to avoid unsigned overflow. (7af0472879)
- Bug 2027346 - validate encoded EC params length and tag in SECKEY_ECParamsToKeySize/BasePointOrderLen. (0bcb0f57ff)
- Bug 2029807 - Guard padding read against empty output in SEC_PKCS7DecryptContents. (4cf35f7b33)
- Issue #3153 - Make sure buttons report a definite size for flex containers. Second try, this time ONLY do it for flex container or grids. This should prevent layout problems in non-flex scenarios. (cd90cc0fd7)
- Bug 2030563 - Validate CKA_CERTIFICATE_TYPE ulValueLen in nss_cert_type_from_ck_attrib. (2be3800e92)
- Bug 2027325 - Reject empty nickname in PK11_TraverseCertsForNicknameInSlot. (1a603bfe9e)
- Bug 2030102 - avoid leaving a dangling ss->sec.ci.sid on allocation failure. (5dd26d41f6)
- Bug 2032110 - fix two integer overflows on LLP64 systems. (79a227055a)
- Bug 2027364 - Set tail pointer to null in static slot lists when deallocating. (f167cb61ee)
- Bug 2028954 - CERT_DecodeAVAValue — Integer Overflow in Output Buffer Sizing. (c4cf8cf6e3)
- Bug 2029433 - Bounds-check wrap index in PK11_GetWrapKey to match PK11_SetWrapKey. (23dc9da219)
- Bug 2027353 - clamp input.len to testString size in pk11_mergeSecretKey. (4ce8d28c03)
- Bug 2043887 - guard against integer overflow in CERT_Hexify. (73995df3a6)

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:
- nss: update certdata and bump ckbi version to 2.90 (e5c222be77)

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-20260801-40a79c75-uxp-bd1ccc490e-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260801-40a79c75-uxp-bd1ccc490e-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-20260801-id-656ea98-uxp-bd1ccc490e-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260801-id-656ea98-ia-c642e3c-uxp-bd1ccc490e-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-20260801-6d3683c75-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260801-6d3683c75-xpmod.7z

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

Repo changes:
- nss: update certdata and bump ckbi version to 2.90 (355bf04c8)
- ported from UXP: No Issue - Remove the half-life experiment in HTTP cache (da157b41) (bce086a0a)
- import from UXP: [network] Add usrsctp TSN gap check. (105f2319) (728de5fca)
- import from UXP: [layout] Add corner-case correctness check in DottedCornerFinder::FindBestOverlap. (49c7e344) (a3b30ecb4)
- import from UXP: [DOM] Stop accepting audio samples with too low sample rates. (5faa70e3) (fc10655b1)
- ported from UXP: No issue - CallUpdateWindow is [[nodiscard]], but we don't need to use the result here. (dbfe4bd5) (fba643271)
- import from UXP: [parser] Associate image elements with form only if the form and the intended parent are in the same tree. (5ac81bf6) (4b03e6446)
- ported from UXP: Issue #2404 - Improvements to CSS aspect-ratio spec compliance (3905cc5b) (608ee78c0)
- import from UXP: Issue #2404 - Fix aspect ratio sizing for grid items (8cf6c588) (5543f2f7b)
- ported from UXP: [image] Make sure the image was fully and cleanly decoded before finalizing its animation state as complete. (e252b385) (4ff326881)
- import from UXP: No issue - Use `strnlen` instead of `strnlen_s`. (5a765da5) (0316c9693)
- import from UXP: Bug 2029734: Flush before calling sctp_process_init() (44365a9d) (58c4ece42)
- import from UXP: Bug 2049523 - Make ToJSValue for float consistent with double. (db7d9c4c) (6d01a86e0)
- ported from UXP: Issue #2404 - Split aspect ratio enum types into a separate header to fix compilation issuesv (d6022d38) (2483193ab)
- import from UXP: Bug 2045742 (34cb4816) (3a6f3cf12)
- import from UXP: [DOM media] Perform more thorough checks on video regions. (06e74686) (3c8e85ed5)
- import from UXP: Issue #3061 Follow-up: Remove network tickler prefs (0f9c7617) (2b3618cd1)
- import from UXP: [layout] Fix nsFrameSetFrame primary frame handling of replicated children. (e5b3bc7c) (430c8d60d)
- import from UXP: [network] Fix CacheEntry::mDoomCallback data race. (91110497) (9be45a990)
- ported from UXP: Issue #3153 - Make sure buttons report a definite size for flex containers. Second try, this time ONLY do it for flex container or grids. This should prevent layout problems in non-flex scenarios. (cd90cc0f) (5099ec3fe)
- import from UXP:
 - Bug 2027349 - reject empty nickname in PK11_TraverseCertsForNicknameInSlot. (3d7dbc8fb9)
 - Bug 2027362 - bound usageCount in PK11_UnwrapPrivKey to keyTemplate capacity. (ec58fff3ca)
 - Bug 2029901 - Guard against keySize overflow in IKE PRF/PRF+ output sizing. (1ed628fe3a)
 - Bug 2027373 - guard space subtraction in ssl_CallCustomExtensionSenders. (97201f8758)
 - Bug 2027371 - rewrite labelLen bound in tls13_HkdfExpandLabelGeneral to avoid unsigned overflow. (7af0472879)
 - Bug 2027346 - validate encoded EC params length and tag in SECKEY_ECParamsToKeySize/BasePointOrderLen. (0bcb0f57ff)
 - Bug 2029807 - Guard padding read against empty output in SEC_PKCS7DecryptContents. (4cf35f7b33)
 - Bug 2030563 - Validate CKA_CERTIFICATE_TYPE ulValueLen in nss_cert_type_from_ck_attrib. (2be3800e92)
 - Bug 2027325 - Reject empty nickname in PK11_TraverseCertsForNicknameInSlot. (1a603bfe9e)
 - Bug 2030102 - avoid leaving a dangling ss->sec.ci.sid on allocation failure. (5dd26d41f6)
 - Bug 2032110 - fix two integer overflows on LLP64 systems. (79a227055a)
 - Bug 2027364 - Set tail pointer to null in static slot lists when deallocating. (f167cb61ee)
 - Bug 2028954 - CERT_DecodeAVAValue — Integer Overflow in Output Buffer Sizing. (c4cf8cf6e3)
 - Bug 2029433 - Bounds-check wrap index in PK11_GetWrapKey to match PK11_SetWrapKey. (23dc9da219)
 - Bug 2027353 - clamp input.len to testString size in pk11_mergeSecretKey. (4ce8d28c03)
 - Bug 2043887 - guard against integer overflow in CERT_Hexify. (73995df3a6) (6d3683c75)

Saturday, July 25, 2026

Weekly browser binaries (20260725)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260725-3219d2d-uxp-30427c0213-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260725-3219d2d-uxp-30427c0213-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-20260725-3219d2d-uxp-30427c0213-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-20260725-d849524bd-uxp-30427c0213-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260725-d849524bd-uxp-30427c0213-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260725-d849524bd-uxp-30427c0213-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260725-d849524bd-uxp-30427c0213-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260725-d849524bd-uxp-30427c0213-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #1803 - Convert std::*<T>::value/::type to _v and _t suffixes. (1dd094e90b)
- Issue #3061 - Remove network tickler. (3312ebb226)
- No issue - Exclude some files from the preprocessor that don't have directives in them. (4b77043d11)
- Issue #3144 - Implement CSSStyleSheet replaceSync (05467e9db6)
- [js] Guard against OOB string sizes in internal Printf (90952505ec)
- [gfx] Add bounds checks and limit reverse scanning of ligature data. (07271921c9)
- [gfx] Hold a strong ref during GetFontAt lookup. (0b8fd38fb3)
- [DOM] Make parser update form owner properly (0cd2c3acf7)
- [js] Initialize BaselineFrame return value slot in OnLeaveBaselineFrame. (a809f575d1)
- [js] Clamp length of regexp captures array for dollar substitution. (f8982ebd3f)

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:
- devtools: restore preprocessor usage (30427c0213)

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-20260725-40a79c75-uxp-30427c0213-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260725-40a79c75-uxp-30427c0213-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-20260725-id-656ea98-uxp-30427c0213-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260725-id-656ea98-ia-c642e3c-uxp-30427c0213-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-20260725-94e741a46-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260725-94e741a46-xpmod.7z

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

Repo changes:
- ported from UXP: Issue #1803 - Convert std::*<T>::value/::type to _v and _t suffixes. (1dd094e9) (200256195)
- ported from UXP: Issue #3061 - Remove network tickler. (3312ebb2) (5cb455841)
- ported from UXP: Issue #3144 - Implement CSSStyleSheet replaceSync (05467e9d) (de7f8267f)
- import from UXP: [js] Guard against OOB string sizes in internal Printf (90952505) (604ade209)
- import from UXP: [gfx] Add bounds checks and limit reverse scanning of ligature data. (07271921) (6c05b903c)
- import from UXP: [gfx] Hold a strong ref during GetFontAt lookup. (0b8fd38f) (a3d9936ff)
- import from UXP: [DOM] Make parser update form owner properly (0cd2c3ac) (443fd3272)
- import from UXP: [js] Initialize BaselineFrame return value slot in OnLeaveBaselineFrame. (a809f575) (df19befd2)
- import from UXP: [js] Clamp length of regexp captures array for dollar substitution. (f8982ebd) (94e741a46)

Saturday, July 18, 2026

Weekly browser binaries (20260718)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260718-3219d2d-uxp-edd86c9a9d-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260718-3219d2d-uxp-edd86c9a9d-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-20260718-3219d2d-uxp-edd86c9a9d-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-20260718-d849524bd-uxp-edd86c9a9d-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260718-d849524bd-uxp-edd86c9a9d-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260718-d849524bd-uxp-edd86c9a9d-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260718-d849524bd-uxp-edd86c9a9d-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260718-d849524bd-uxp-edd86c9a9d-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #3122 - Stop using <base> element in json viewer. (25440b453a)
- Issue #3129 - Add palette_neon_intrinsics.c to moz.build (6ba6120115)
- Issue #3129 - Follow-up: Add aarch64 to platforms enabling Neon in libpng. (97a7730717)
- Issue #3134 - Import missing libpng files for loongarch and plug them into moz.build (f3ed8ce4a4)
- Revert "Bug 2033848 - Use non-default response ID for GTK file picker accept button. r=stransky" (7e4c152210)
- Issue #2829 - Support revert-layer in CSS-wide parsing (cacd5b2d61)
- Issue #2829 - Implement CSS revert-layer cascade rollback (07a651cb70)
- Issue #2829 - Handle revert-layer variable fallbacks (8a63f0d1e1)
- Issue #2829 - Use layer index naming for revert-layer metadata (121fa183a0)
- Issue #2829 - Regenerate devtools CSS database for revert-layer (3ad8472edc)
- Issue #3140 - implement URL.parse() (a5610624d0)

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-20260718-40a79c75-uxp-edd86c9a9d-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260718-40a79c75-uxp-edd86c9a9d-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-20260718-id-656ea98-uxp-edd86c9a9d-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260718-id-656ea98-ia-c642e3c-uxp-edd86c9a9d-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-20260718-99e7fa950-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260718-99e7fa950-xpmod.7z

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

Repo changes:
- Revert "import from UXP: Bug 2033848 - Use non-default response ID for GTK file picker accept button. r=stransky (81babad1)" (072bcb2ff)
- ported from UXP: Issue #3122 - Stop using <base> element in json viewer. (25440b45) (57690362e)
- import from UXP: Issue #3129 - Add palette_neon_intrinsics.c to moz.build (6ba61201) (ff5d3081d)
- import from UXP: Issue #3129 - Follow-up: Add aarch64 to platforms enabling Neon in libpng. (97a77307) (fe07f5ff6)
- import from UXP: Issue #3134 - Import missing libpng files for loongarch and plug them into moz.build (f3ed8ce4) (38bca147b)
- ported from UXP: Issue #2829 - Support revert-layer in CSS-wide parsing (cacd5b2d) (0bb7b6959)
- ported from UXP: Issue #2829 - Implement CSS revert-layer cascade rollback (07a651cb) (ebf3fafe2)
- import from UXP: Issue #2829 - Handle revert-layer variable fallbacks (8a63f0d1) (5849d68a0)
- ported from UXP: Issue #2829 - Use layer index naming for revert-layer metadata (121fa183) (22dac9430)
- ported from UXP: Issue #2829 - Regenerate devtools CSS database for revert-layer (3ad8472e) (e49363921)
- import from UXP: Issue #3140 - implement URL.parse() (a5610624) (99e7fa950)

Saturday, June 27, 2026

Weekly browser binaries (20260627)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260627-3219d2d-uxp-98f21468a1-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260627-3219d2d-uxp-98f21468a1-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-20260627-3219d2d-uxp-98f21468a1-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-20260627-d849524bd-uxp-98f21468a1-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260627-d849524bd-uxp-98f21468a1-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260627-d849524bd-uxp-98f21468a1-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260627-d849524bd-uxp-98f21468a1-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260627-d849524bd-uxp-98f21468a1-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Fresh import of libpng 1.6.58 (b61274cd5d)
- Apply (hopefully for the last time before 2.0.x) APNG support code. (882bf4b345)
- [devtools] Consistently show filepicker on first save action from StyleEditor. (6316f240c7)
- Bug 2029403 - avoid PORT_Strdup in ssl_DecodeResumptionToken. (c95367158a)
- Bug 2030366 - avoid race with module unloading in NSSTrustDomain_FindTokensByURI. (43317d3eba)
- Bug 2030564 - add defensive input validation to sftk_compute_ANSI_X9_63_kdf. (346619a8ea)
- [DOM] Clean up WebGL transform feedback validation. (a4a23b4318)
- Issue #3122 - Put base paths in the json viewer client deps. (09108384c7)

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-20260627-40a79c75-uxp-98f21468a1-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260627-40a79c75-uxp-98f21468a1-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-20260627-id-656ea98-uxp-98f21468a1-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260627-id-656ea98-ia-c642e3c-uxp-98f21468a1-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-20260627-b6372f6d3-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260627-b6372f6d3-xpmod.7z

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

Repo changes:
- import from UXP:
 - Fresh import of libpng 1.6.58 (b61274cd)
 - Apply (hopefully for the last time before 2.0.x) APNG support code. (882bf4b3) (dba06fd4e)
- ported from UXP: [devtools] Consistently show filepicker on first save action from StyleEditor. (6316f240) (c5177c2c5)
- ported from UXP: Bug 2029403 - avoid PORT_Strdup in ssl_DecodeResumptionToken. (c9536715) (999cc9dfb)
- ported from UXP: Bug 2030366 - avoid race with module unloading in NSSTrustDomain_FindTokensByURI. (43317d3e) (43c5cf5af)
- import from UXP: Bug 2030564 - add defensive input validation to sftk_compute_ANSI_X9_63_kdf. (346619a8e) (045e9f53a)
- import from UXP: [DOM] Clean up WebGL transform feedback validation. (a4a23b43) (6597dd785)
- import from UXP: Issue #3122 - Put base paths in the json viewer client deps. (09108384) (b6372f6d3)

Saturday, June 20, 2026

Weekly browser binaries (20260620)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260620-3219d2d-uxp-f718564719-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260620-3219d2d-uxp-f718564719-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-20260620-3219d2d-uxp-f718564719-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-20260620-d849524bd-uxp-f718564719-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260620-d849524bd-uxp-f718564719-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260620-d849524bd-uxp-f718564719-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260620-d849524bd-uxp-f718564719-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260620-d849524bd-uxp-f718564719-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #2306 - Re-introduce pref for WeakRef API spec. (8eac1db64b)
- Issue #2306 - Enable full weakref by default in platform. (0bd0d0a296)
- Issue #3122 - Exclude local resources from <base> CSP checks. (692606e89c)
- Bug 2029066 - Remove Sinking of Live instructions. (2712943075)
- Bug 2029765 - avoid refcount over-release in nssTokenObjectCache error path [@ nssToken_Destroy]. (13d8737677)
- [network] Make keep-alive pref Atomic. (f20e0799a0)
- [DOM] Reject too large mLength in MutableBlobStorage::WriteRunnable. (b60661dfe1)
- Bug 2023478 - improve handling of escape sequences in pk11uri_ParseAttributes. (7ae6442d99)
- Bug 2033848 - Use non-default response ID for GTK file picker accept button. r=stransky (81babad165)
- [DOM] Zero-initialize ThreadSharedFloatArrayBufferList. (5ab14e5932)
- No issue - Use ImmGCPtr for module meta data visits. (0bdcc65c4c)
- [parser] Better align with spec definition of adding nodes. (a50e1d7ae5)
- [DOM] Avoid over-optimizing some getter/function calls. (a83b6f74bb)
- [gfx] Check more offsets during CFF subsetting. (9a457cbfd9)
- [network] Make HttpBaseChannel::mLoadFlags atomic. (100f6aaf5b)

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-20260620-40a79c75-uxp-f718564719-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260620-40a79c75-uxp-f718564719-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-20260620-id-656ea98-uxp-f718564719-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260620-id-656ea98-ia-c642e3c-uxp-f718564719-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-20260620-962fb7e60-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260620-962fb7e60-xpmod.7z

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

Repo changes:
- ported from UXP: Issue #2306 - Re-introduce pref for WeakRef API spec. (8eac1db6) (938e5c744)
- import from UXP: Issue #2306 - Enable full weakref by default in platform. (0bd0d0a2) (74824f24b)
- import from UXP: Issue #3122 - Exclude local resources from <base> CSP checks. (692606e8) (6fc95b735)
- ported from UXP: Bug 2029066 - Remove Sinking of Live instructions. (27129430) (e89f0a52f)
- import from UXP: Bug 2029765 - avoid refcount over-release in nssTokenObjectCache error path [@ nssToken_Destroy]. (13d87376) (73b5f11e4)
- import from UXP: [network] Make keep-alive pref Atomic. (f20e0799) (0d6196afd)
- ported from UXP: [DOM] Reject too large mLength in MutableBlobStorage::WriteRunnable. (b60661df) (94d348ce4)
- import from UXP: Bug 2023478 - improve handling of escape sequences in pk11uri_ParseAttributes. (7ae6442d) (f277da265)
- import from UXP: Bug 2033848 - Use non-default response ID for GTK file picker accept button. r=stransky (81babad1) (1f1e28073)
- import from UXP: [DOM] Zero-initialize ThreadSharedFloatArrayBufferList. (5ab14e59) (91d2413a4)
- import from UXP: No issue - Use ImmGCPtr for module meta data visits. (0bdcc65c) (456bea8af)
- import from UXP: [parser] Better align with spec definition of adding nodes. (a50e1d7a) (1f0c79b3a)
- import from UXP: [DOM] Avoid over-optimizing some getter/function calls. (a83b6f74) (94850d8a2)
- import from UXP: [gfx] Check more offsets during CFF subsetting. (9a457cbf) (acffb7115)
- import from UXP: [network] Make HttpBaseChannel::mLoadFlags atomic. (100f6aaf) (962fb7e60)

Saturday, June 13, 2026

Weekly browser binaries (20260613)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260613-3219d2d-uxp-ec5b4aa693-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260613-3219d2d-uxp-ec5b4aa693-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-20260613-3219d2d-uxp-ec5b4aa693-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-20260613-d849524bd-uxp-ec5b4aa693-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260613-d849524bd-uxp-ec5b4aa693-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260613-d849524bd-uxp-ec5b4aa693-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260613-d849524bd-uxp-ec5b4aa693-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260613-d849524bd-uxp-ec5b4aa693-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Revert "Bug 2027433 use nullptr for silent up-mix channels" (4d9fe0ca23)
- Revert "Bug 2027433 Treat null input channels as zero in AudioChannelsDownMix()" (cbdec72879)
- Revert "Bug 2027433 Treat null input channels as zero in InterleaveAndConvertBuffer()" (68b774798b)
- [DOM] Provide more silent audio processing frames. (f83dd5bf22)
- Issue #3111 - Clean up logic in SweepFinalizationRegistries. (b336d24faf)

Official Pale-Moon changes picked since my last build:
- [Pale-Moon] Adjust default theme to handle adjusted metrics for border truncation. (d7d7589555)

No official Basilisk changes picked since my last build.

My changes since my last build:
- Revert "Revert "Revert "Revert "Implement FinalizationRegistry" and related commits.""" (ff2a1248c4)

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-20260613-40a79c75-uxp-ec5b4aa693-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260613-40a79c75-uxp-ec5b4aa693-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-20260613-id-656ea98-uxp-ec5b4aa693-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260613-id-656ea98-ia-c642e3c-uxp-ec5b4aa693-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-20260613-3f8026b8c-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260613-3f8026b8c-xpmod.7z

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

Repo changes:
- Revert "import from UXP: Bug 2027433 use nullptr for silent up-mix channels (42f1ba1d)" (19975c09c)
- Revert "import from UXP: Bug 2027433 Treat null input channels as zero (83ef39ff)" (bbaac4291)
- Revert "Revert "Revert "Revert "Implement FinalizationRegistry" and related commits.""" (f2accccb8)
- import from UXP: [DOM] Provide more silent audio processing frames. (f83dd5bf) (64ed6203f)
- import from UXP: Issue #3111 - Clean up logic in SweepFinalizationRegistries. (b336d24f) (3f8026b8c)

Saturday, June 6, 2026

Weekly browser binaries (20260606)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260606-3219d2d-uxp-bfaade4306-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260606-3219d2d-uxp-bfaade4306-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-20260606-3219d2d-uxp-bfaade4306-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-20260606-d849524bd-uxp-bfaade4306-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260606-d849524bd-uxp-bfaade4306-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260606-d849524bd-uxp-bfaade4306-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260606-d849524bd-uxp-bfaade4306-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260606-d849524bd-uxp-bfaade4306-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Issue #3109 - Clamp border-radius value to CSS' internal length clamp value (d47606ce8f)
- Issue #2964 - Part 1: CSS Override for `uppercase` and `capitalize` (dff842a949)
- Issue #2964 - Part 2a: Correctly Detect End of Buffer in `ToUpperCaseImpl` (7a933598d7)
- Issue #2964 - Part 2b: Improve `ToUpperCaseLength` (b2f6fded36)
- Issue #2964 - Part 3: JS Override for `ToUpperCase` (5dc2f08e29)

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:
- Revert "Revert "Implement FinalizationRegistry" and related commits." (1e38b5ec94)
- mozapps/handling: fix application icon handling by reboot12@msfn (811b13e76c)
- Revert "Revert "Revert "Implement FinalizationRegistry" and related commits."" (bfaade4306)

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-20260606-40a79c75-uxp-bfaade4306-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260606-40a79c75-uxp-bfaade4306-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-20260606-id-656ea98-uxp-bfaade4306-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260606-id-656ea98-ia-c642e3c-uxp-bfaade4306-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-20260606-253d10e0c-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260606-253d10e0c-xpmod.7z

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

Repo changes:
- Revert "Revert "Implement FinalizationRegistry" and related commits." (18fb063dc)
- import from `custom` branch of UXP: mozapps/handling: fix application icon handling by reboot12@msfn (811b13e7) (4f67d65f8)
- import from UXP: Issue #3109 - Clamp border-radius value to CSS' internal length clamp value (d47606ce) (69fe8e2e6)
- ported from UXP: Issue #2964 - Part 1: CSS Override for `uppercase` and `capitalize` (dff842a9) (23c6e68f0)
- import from UXP: Issue #2964 - Part 2a: Correctly Detect End of Buffer in `ToUpperCaseImpl` (7a933598) (1cd9af596)
- import from UXP: Issue #2964 - Part 2b: Improve `ToUpperCaseLength` (b2f6fded) (328cde3f7)
- import from UXP: Issue #2964 - Part 3: JS Override for `ToUpperCase` (5dc2f08e) (c27557cee)
- Revert "Revert "Revert "Implement FinalizationRegistry" and related commits."" (253d10e0c)

Saturday, May 30, 2026

Weekly browser binaries (20260530)

New build of Serpent/UXP for XP!

Test binary:
Win32 https://o.rthost.win/basilisk/basilisk52-g4.8.win32-git-20260530-3219d2d-uxp-3c23f8ee4e-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk52-g4.8.win64-git-20260530-3219d2d-uxp-3c23f8ee4e-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-20260530-3219d2d-uxp-3c23f8ee4e-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-20260530-d849524bd-uxp-3c23f8ee4e-xpmod.7z
Win32 IA32 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260530-d849524bd-uxp-3c23f8ee4e-xpmod-ia32.7z
Win32 SSE https://o.rthost.win/palemoon/palemoon-28.10.7a1.win32-git-20260530-d849524bd-uxp-3c23f8ee4e-xpmod-sse.7z
Win64 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260530-d849524bd-uxp-3c23f8ee4e-xpmod.7z
Win7+ x64 AVX2 https://o.rthost.win/palemoon/palemoon-28.10.7a1.win64-git-20260530-d849524bd-uxp-3c23f8ee4e-w7plus-avx2.7z

Official UXP changes picked since my last build:
- Re-land: Fix devtools on 32-bit big endian platforms (0915736715)
- Issue #3053 - Implement CSSStyleSheet constructor (f5a84f4ad2)
- [js] Use size_t when inflating UTF8 (7bbdccd376)
- [NSS] Fix instances of softoken attributes freed after owning object. (300dd371b2)
- [NSS] Handle SEC_ASN1_NULL in sec_asn1e_contents_length. (9179441f96)
- [libjar] Check Jar entry names for nulls. (aadb6beb07)
- [NSS] Align PKCS7 digest array with digestAlgorithms. (089170ae83)
- [NSS] NSS_CMSContentInfo_SetContent: only modify cinfo if everything succeeds. (7167a8fabc)
- [NSS] Initialize src in SEC_PKCS5GetIV (07201fa1ae)
- [NSS] Avoid integer overflow when converting AVA value to hex string. (6511833580)
- Bug 2029771 - Heap use-after-free in [@ token_destructor] reading tok->pk11slot after nssToken_Destroy frees the token arena. (57bef0265c)
- Bug 2029782 - fix 8-byte over-read of AES-192 key buffer in x86 builds without USE_HW_AES. (92b3f6dd67)
- [netwerk] nsRequestObserverProxy ref cleanup. (bb2275d400)
- [netwerk] Make nsSocketTransport2::mConnectionFlags atomic. (bb85939429)
- Bug 2036905: Fix UDPSocketParent::ConnectInternal data race on mSocket. (8d4079866b)
- [netwerk] Make socket transport hold a reference to TLSServerConnectionInfo. (349f46bbb2)
- Bug 2027381 - improve error handling in SECITEM_DupArray with non-null arena. (b3f801743b)
- [NSS] Fix maxSize calculation in NSSUTIL_AddNSSFlagToModuleSpec. (c36357a954)
- Revert "Issue #3092 - Perform a minor GC on tab close" (3ae3595f6a)
- Revert "Issue #3092 - Initial idle GC implementation" (860d4457ae)
- Revert "Issue #3092 - Implement parallel sweeping and compaction tasks" (52ce9ebea5)
- Revert "Issue #3092 - Implement BackgroundFinalizeTask for parallel garbage collection finalization" (ac0510f380)
- Revert "Issue #3092 - Add new GC sweep tasks." (e95b229db8)
- Revert "Issue #3092 - Refactor WASM compilation handling" (d582d12ad8)
- Revert "Issue #3092 - Safely parallelize GC background finalization" (c144b4f403)
- [NSS] Fix use of uninitialized length after failed PK11_SignWithMechanism/SymKey. (2a26d9508b)
- Bug 2029818 - avoid refcount over-release in CERT_CertChainFromCert error path. (62d731d2c2)
- [DOM] Check values in audio resampling. (244c614a47)
- [layout] Hide accessible carets when needed. (4bf236902c)
- [libvorbis] Allocate memory with _ogg_malloc (e9c3451d54)
- No issue - Remove ISO-2022-JP from menu, overridability and detector. (c690e26c67)
- [gfx/layout] Simplify textruns (b611d80223)
- Bug 1784128 - Assert count passed to PR_Read/PR_Write in nsFileStreamBase fits INT32_MAX. (f83e05cf23)
- [DOM] Hold a strong ref to VoiceData in nsSynthVoiceRegistry::RemoveVoice. (2f73a3004b)
- [media] ffvpx patch: Fix leak in flac decoder in case of alloc failure. (9afa7a80cc)
- [DOM] Stop speech synthesis if the originating document is closed. (f041eb0607)

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-20260530-40a79c75-uxp-3c23f8ee4e-xpmod.7z
BNavigator Win32 https://o.rthost.win/boc-uxp/bnavigator.win32-20260530-40a79c75-uxp-3c23f8ee4e-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-20260530-id-656ea98-uxp-3c23f8ee4e-xpmod.7z
IceApe-UXP(suite) https://o.rthost.win/hbl-uxp/iceape.win32-20260530-id-656ea98-ia-c642e3c-uxp-3c23f8ee4e-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-20260530-7189d3699-xpmod.7z
Win64 https://o.rthost.win/basilisk/basilisk55-win64-git-20260530-7189d3699-xpmod.7z

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

Repo changes:
- Revert "ported from UXP: Issue #3092 - Safely parallelize GC background finalization (e9826f55)" (f1d082056)
- Revert "ported from UXP: Issue #3092 - Fix unsafe GC multithreading changes (f0cba412)" (d27f358dc)
- Revert "import from UXP: Issue #3092 - Initial idle GC implementation (18ddd00a)" (5e38c6ebd)
- Revert "ported from UXP: Issue #3092 - Implement parallel sweeping and compaction tasks for improved garbage collection performance (3433d538)" (b24b0b646)
- Revert "ported from UXP: Issue #3092 - Implement BackgroundFinalizeTask for parallel garbage collection finalization (c0677633)" (ea9e25798)
- Revert "import from UXP: Issue #3092 - Add new GC sweep tasks. (47746b47)" (2332bc302)
- Revert "ported from UXP: Issue #3092 - Refactor WASM compilation handling (a7a75b78)" (6108ea66a)
- import from UXP: Re-land: Fix devtools on 32-bit big endian platforms (09157367) (50cedf4ac)
- ported from UXP: Issue #3053 - Implement CSSStyleSheet constructor (f5a84f4a) (ddeba088c)
- import from UXP: [js] Use size_t when inflating UTF8 (7bbdccd3) (02d728c6c)
- import from UXP: [NSS] Fix instances of softoken attributes freed after owning object. (300dd371) (cd4767c93)
- import from UXP: [NSS] Handle SEC_ASN1_NULL in sec_asn1e_contents_length. (9179441f) (0ac0961f0)
- import from UXP: [libjar] Check Jar entry names for nulls. (aadb6beb) (ccdbe4215)
- import from UXP: [NSS] Align PKCS7 digest array with digestAlgorithms. (089170ae) (6725ca403)
- import from UXP: [NSS] NSS_CMSContentInfo_SetContent: only modify cinfo if everything succeeds. (7167a8fa) (150f7251c)
- import from UXP: [NSS] Initialize src in SEC_PKCS5GetIV (07201fa1) (0cd1f405c)
- import from UXP: [NSS] Avoid integer overflow when converting AVA value to hex string. (65118335) (813a4128d)
- import from UXP: Bug 2029771 - Heap use-after-free in [@ token_destructor] reading tok->pk11slot after nssToken_Destroy frees the token arena. (57bef026) (160c8de65)
- import from UXP: Bug 2029782 - fix 8-byte over-read of AES-192 key buffer in x86 builds without USE_HW_AES. (92b3f6dd) (eae85f288)
- import from UXP: [netwerk] nsRequestObserverProxy ref cleanup. (bb2275d4) (13f345626)
- import from UXP: [netwerk] Make nsSocketTransport2::mConnectionFlags atomic. (bb859394) (30b1e9927)
- import from UXP: Bug 2036905: Fix UDPSocketParent::ConnectInternal data race on mSocket. (8d407986) (ed08f977e)
- import from UXP: [netwerk] Make socket transport hold a reference to TLSServerConnectionInfo. (349f46bb) (204c60674)
- import from UXP: Bug 2027381 - improve error handling in SECITEM_DupArray with non-null arena. (b3f80174) (4c0ddeea1)
- import from UXP: [NSS] Fix maxSize calculation in NSSUTIL_AddNSSFlagToModuleSpec. (c36357a9) (25cfe00f9)
- import from UXP: [NSS] Fix use of uninitialized length after failed PK11_SignWithMechanism/SymKey. (2a26d950) (8bc7cd06a)
- import from UXP: Bug 2029818 - avoid refcount over-release in CERT_CertChainFromCert error path. (62d731d2) (60c2cf380)
- import from UXP: [DOM] Check values in audio resampling. (244c614a) (fc43479c0)
- import from UXP: [layout] Hide accessible carets when needed. (4bf23690) (1ceaab06a)
- import from UXP: [libvorbis] Allocate memory with _ogg_malloc (e9c3451d) (3c719091d)
- import from UXP: No issue - Remove ISO-2022-JP from menu, overridability and detector. (c690e26c) (670720d41)
- ported from UXP: [gfx/layout] Simplify textruns (b611d802) (3dc9429a3)
- ported from UXP: Bug 1784128 - Assert count passed to PR_Read/PR_Write in nsFileStreamBase fits INT32_MAX. (f83e05cf) (62fdd7306)
- import from UXP: [DOM] Hold a strong ref to VoiceData in nsSynthVoiceRegistry::RemoveVoice. (2f73a300) (301814744)
- import from UXP: [media] ffvpx patch: Fix leak in flac decoder in case of alloc failure. (9afa7a80) (3e56e3dd7)
- import from UXP: [DOM] Stop speech synthesis if the originating document is closed. (f041eb06) (7189d3699)