Migrate IDNA handling to ICU4X
Categories
(Core :: Networking: DNS, enhancement, P2)
Tracking
()
Tracking | Status | |
---|---|---|
firefox130 | --- | fixed |
People
(Reporter: hsivonen, Assigned: hsivonen)
References
(Blocks 2 open bugs)
Details
(Keywords: perf-alert, Whiteboard: [necko-triaged])
Attachments
(2 files, 1 obsolete file)
Minting a bug number for this subtask of bug 1815871.
Use https://github.com/hsivonen/rust-url/tree/icu4x and https://github.com/unicode-org/icu4x/pull/4712 in Gecko.
Assignee | ||
Comment 1•10 months ago
|
||
Assignee | ||
Comment 2•10 months ago
|
||
Assignee | ||
Comment 3•10 months ago
|
||
Assignee | ||
Comment 4•10 months ago
|
||
Try run with certain idna
crate internals marked as inline(never)
:
https://treeherder.mozilla.org/jobs?repo=try&revision=3d64c01a968ce5d23db9e1d56bc7170c6610e6f7
(Rather concerningly, without this a local run on bloaty
showed one of the deprecated idna
methods compiling to huge code. Unclear why it wasn't LTOed away as unused locally. Hence, trying to make binary size comparisons on "shippable" try builds and not trusting my local config.)
Updated•10 months ago
|
Assignee | ||
Comment 5•10 months ago
|
||
Try run with IPv6 hosts fixed:
https://treeherder.mozilla.org/jobs?repo=try&revision=83d95ad63684ef0b2bec94dc59b84846efcee2b7
Assignee | ||
Comment 6•10 months ago
|
||
I opened a draft PR on the idna
crate: https://github.com/servo/rust-url/pull/923
Assignee | ||
Comment 7•10 months ago
•
|
||
https://treeherder.mozilla.org/jobs?repo=try&revision=cb8c9059b4d17a897c225a4361c17d0797156dc1
Looks like the cookie permission UI needs a mode where an asterisk is allowed.
Assignee | ||
Comment 8•10 months ago
|
||
(In reply to Henri Sivonen (:hsivonen) from comment #7)
Looks like the cookie permission UI needs a mode where an asterisk is allowed.
No, the issue is the other way round. The cookie UI expects an asterisk is the host name to fail parsing, but WHATWG allows. We have two forbidden characters that WHATWG does not forbid: asterisk and double quote.
Perhaps I'm going to have to allow customizable ASCII deny lists in the idna
crate. :-(
Hacking around this for now.
https://treeherder.mozilla.org/jobs?repo=try&revision=5f449e7d68e03fbca7258dc20947f2886866350b
Assignee | ||
Comment 9•10 months ago
|
||
Sigh. More places where existing code expects IPv6 addresses to make it through ToASCII without error.
Assignee | ||
Comment 10•10 months ago
|
||
Assignee | ||
Comment 11•10 months ago
|
||
Assignee | ||
Comment 12•9 months ago
|
||
Assignee | ||
Comment 13•9 months ago
|
||
Speedometer3 copypaste:
!!!NOTE!!!
You'll be able to find a performance comparison here once the tests are complete (ensure you select the right framework): https://treeherder.mozilla.org/perfherder/compare?originalProject=try&originalRevision=dc07e199ee5313e85f500cde2e5bf04c1eee5a24&newProject=try&newRevision=64e92dbd08be63c5cc51b3e7c468859fafcba09b
-
2 commits/try-runs are created... *
Base revision's try run: https://treeherder.mozilla.org/jobs?repo=try&revision=dc07e199ee5313e85f500cde2e5bf04c1eee5a24
Local revision's try run: https://treeherder.mozilla.org/jobs?repo=try&revision=64e92dbd08be63c5cc51b3e7c468859fafcba09b
Assignee | ||
Comment 14•9 months ago
|
||
(In reply to Henri Sivonen (:hsivonen) from comment #13)
Speedometer3 copypaste:
!!!NOTE!!!
You'll be able to find a performance comparison here once the tests are complete (ensure you select the right framework): https://treeherder.mozilla.org/perfherder/compare?originalProject=try&originalRevision=dc07e199ee5313e85f500cde2e5bf04c1eee5a24&newProject=try&newRevision=64e92dbd08be63c5cc51b3e7c468859fafcba09b
If I'm reading this correctly, this isn't enough to visibly move the Speedometer3 needle. (It would have been surprising for host parsing to make a notable difference alone.)
As for microbenchmarking pathless nsStandardURL
creation:
https://treeherder.mozilla.org/perfherder/compare?originalProject=mozilla-central&originalRevision=c560ac2dab5f138b9d9fc117124a8edd04dc0d3f&newProject=try&newRevision=a3d860464cc6120f4db21a6b5ae01083020f9677&framework=6&page=1&filter=TestIDNA+BenchUrl
Leading digit ASCII becomes worse. Other cases become better. Plain ASCII in single digits. Various actual IDNA case have their execution time reduced by 55%...70%.
I think I'm not going to optimize the leading digit case at this time. It's pessimized in case there's subsequent bidi in the domain. Currently Gecko fails to account for this case.
Assignee | ||
Comment 15•9 months ago
|
||
Assignee | ||
Comment 16•9 months ago
|
||
Assignee | ||
Comment 17•9 months ago
|
||
Assignee | ||
Comment 18•9 months ago
|
||
Sigh. We have way too many places that pass IP addresses or even port numbers through places where the code says it's dealing with a host name. I'm changing these to at least reject ASCII characters that don't have a glyph, but I'm declaring rejecting colons and square brackets out of scope for this patch.
https://treeherder.mozilla.org/jobs?repo=try&revision=030943877fee4dffdb3f9e7964b3ec5922fd8112
Assignee | ||
Comment 19•9 months ago
|
||
Assignee | ||
Comment 20•9 months ago
|
||
Assignee | ||
Comment 21•9 months ago
|
||
Assignee | ||
Comment 22•9 months ago
|
||
Updated•9 months ago
|
Updated•8 months ago
|
Updated•8 months ago
|
Updated•7 months ago
|
Assignee | ||
Comment 23•7 months ago
|
||
Updated•7 months ago
|
Comment 24•7 months ago
|
||
Comment 25•7 months ago
|
||
Backed out for causing bpnu bustages on nsIDNService.cpp.
[task 2024-07-09T10:41:22.663Z] 10:41:22 INFO - mkdir -p '.deps/'
[task 2024-07-09T10:41:22.664Z] 10:41:22 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/protocol/websocket'
[task 2024-07-09T10:41:22.667Z] 10:41:22 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/protocol/websocket'
[task 2024-07-09T10:41:22.668Z] 10:41:22 INFO - netwerk/protocol/websocket/BaseWebSocketChannel.o
[task 2024-07-09T10:41:22.669Z] 10:41:22 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/protocol/websocket'
[task 2024-07-09T10:41:23.143Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.146Z] 10:41:23 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ --sysroot /builds/worker/fetches/sysroot-x86_64-linux-gnu -o nsIncrementalDownload.o -c -I/builds/worker/workspace/obj-build/dist/stl_wrappers -I/builds/worker/workspace/obj-build/dist/system_wrappers -include /builds/worker/checkouts/gecko/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fstack-clash-protection -DNDEBUG=1 -DTRIMMED=1 -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DMOZ_SUPPORT_LEAKCHECKING -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/netwerk/base -I/builds/worker/workspace/obj-build/netwerk/base -I/builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders -I/builds/worker/checkouts/gecko/ipc/chromium/src -I/builds/worker/workspace/obj-build/xpcom/components -I/builds/worker/checkouts/gecko/docshell/base -I/builds/worker/checkouts/gecko/dom/base -I/builds/worker/checkouts/gecko/js/xpconnect/src -I/builds/worker/checkouts/gecko/netwerk/dns -I/builds/worker/checkouts/gecko/netwerk/protocol/http -I/builds/worker/checkouts/gecko/netwerk/protocol/webtransport -I/builds/worker/checkouts/gecko/netwerk/socket -I/builds/worker/checkouts/gecko/netwerk/url-classifier -I/builds/worker/checkouts/gecko/security/manager/ssl -I/builds/worker/checkouts/gecko/xpcom/components -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -DMOZILLA_CLIENT -include /builds/worker/workspace/obj-build/mozilla-config.h -D_GLIBCXX_USE_CXX11_ABI=0 -fno-rtti -pthread -fno-sized-deallocation -fno-aligned-new -ffunction-sections -fdata-sections -fno-math-errno -fno-exceptions -fPIC -fcrash-diagnostics-dir=/builds/worker/artifacts -gdwarf-4 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -fno-omit-frame-pointer -funwind-tables -Werror -Wall -Wbitfield-enum-conversion -Wempty-body -Wformat-type-confusion -Wignored-qualifiers -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtautological-constant-in-range-compare -Wtype-limits -Wno-error=tautological-type-limit-compare -Wunreachable-code -Wunreachable-code-return -Wunused-but-set-parameter -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wno-range-loop-analysis -Wenum-compare-conditional -Wenum-float-conversion -Wno-deprecated-anon-enum-enum-conversion -Wno-deprecated-enum-enum-conversion -Wno-deprecated-this-capture -Wcomma -Wimplicit-fallthrough -Wstring-conversion -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wno-error=atomic-alignment -Wno-error=deprecated-builtins -Wformat -Wformat-security -Wno-psabi -Wthread-safety -Wno-error=builtin-macro-redefined -Wno-vla-cxx-extension -Wno-unknown-warning-option -fno-strict-aliasing -ffp-contract=off -MD -MP -MF .deps/nsIncrementalDownload.o.pp /builds/worker/checkouts/gecko/netwerk/base/nsIncrementalDownload.cpp
[task 2024-07-09T10:41:23.147Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.147Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.147Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.150Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.150Z] 10:41:23 INFO - netwerk/base/nsIncrementalStreamLoader.o
[task 2024-07-09T10:41:23.151Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.223Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/dns'
[task 2024-07-09T10:41:23.226Z] 10:41:23 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ --sysroot /builds/worker/fetches/sysroot-x86_64-linux-gnu -o nsIDNService.o -c -I/builds/worker/workspace/obj-build/dist/stl_wrappers -I/builds/worker/workspace/obj-build/dist/system_wrappers -include /builds/worker/checkouts/gecko/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fstack-clash-protection -DNDEBUG=1 -DTRIMMED=1 -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DMOZ_SUPPORT_LEAKCHECKING -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/netwerk/dns -I/builds/worker/workspace/obj-build/netwerk/dns -I/builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders -I/builds/worker/checkouts/gecko/ipc/chromium/src -I/builds/worker/checkouts/gecko/netwerk/base -I/builds/worker/checkouts/gecko/netwerk/ipc -I/builds/worker/checkouts/gecko/netwerk/protocol/http -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -DMOZILLA_CLIENT -include /builds/worker/workspace/obj-build/mozilla-config.h -D_GLIBCXX_USE_CXX11_ABI=0 -fno-rtti -pthread -fno-sized-deallocation -fno-aligned-new -ffunction-sections -fdata-sections -fno-math-errno -fno-exceptions -fPIC -fcrash-diagnostics-dir=/builds/worker/artifacts -gdwarf-4 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -fno-omit-frame-pointer -funwind-tables -Werror -Wall -Wbitfield-enum-conversion -Wempty-body -Wformat-type-confusion -Wignored-qualifiers -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtautological-constant-in-range-compare -Wtype-limits -Wno-error=tautological-type-limit-compare -Wunreachable-code -Wunreachable-code-return -Wunused-but-set-parameter -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wno-range-loop-analysis -Wenum-compare-conditional -Wenum-float-conversion -Wno-deprecated-anon-enum-enum-conversion -Wno-deprecated-enum-enum-conversion -Wno-deprecated-this-capture -Wcomma -Wimplicit-fallthrough -Wstring-conversion -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wno-error=atomic-alignment -Wno-error=deprecated-builtins -Wformat -Wformat-security -Wno-psabi -Wthread-safety -Wno-error=builtin-macro-redefined -Wno-vla-cxx-extension -Wno-unknown-warning-option -fno-strict-aliasing -ffp-contract=off -MD -MP -MF .deps/nsIDNService.o.pp /builds/worker/checkouts/gecko/netwerk/dns/nsIDNService.cpp
[task 2024-07-09T10:41:23.228Z] 10:41:23 ERROR - /builds/worker/checkouts/gecko/netwerk/dns/nsIDNService.cpp:40:23: error: unused variable 'kMaxULabelSize' [-Werror,-Wunused-const-variable]
[task 2024-07-09T10:41:23.228Z] 10:41:23 INFO - 40 | static const uint32_t kMaxULabelSize = 256;
[task 2024-07-09T10:41:23.228Z] 10:41:23 INFO - | ^~~~~~~~~~~~~~
[task 2024-07-09T10:41:23.228Z] 10:41:23 ERROR - /builds/worker/checkouts/gecko/netwerk/dns/nsIDNService.cpp:42:19: error: unused variable 'kACEPrefix' [-Werror,-Wunused-const-variable]
[task 2024-07-09T10:41:23.228Z] 10:41:23 INFO - 42 | static const char kACEPrefix[] = "xn--";
[task 2024-07-09T10:41:23.228Z] 10:41:23 INFO - | ^~~~~~~~~~
[task 2024-07-09T10:41:23.228Z] 10:41:23 INFO - 2 errors generated.
[task 2024-07-09T10:41:23.228Z] 10:41:23 ERROR - gmake[4]: *** [/builds/worker/checkouts/gecko/config/rules.mk:674: nsIDNService.o] Error 1
[task 2024-07-09T10:41:23.228Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/dns'
[task 2024-07-09T10:41:23.228Z] 10:41:23 INFO - gmake[4]: Target 'target-objects' not remade because of errors.
[task 2024-07-09T10:41:23.228Z] 10:41:23 ERROR - gmake[3]: *** [/builds/worker/checkouts/gecko/config/recurse.mk:72: netwerk/dns/target-objects] Error 2
[task 2024-07-09T10:41:23.239Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/protocol/webtransport'
[task 2024-07-09T10:41:23.240Z] 10:41:23 INFO - mkdir -p '.deps/'
[task 2024-07-09T10:41:23.241Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/protocol/webtransport'
[task 2024-07-09T10:41:23.251Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/protocol/webtransport'
[task 2024-07-09T10:41:23.252Z] 10:41:23 INFO - netwerk/protocol/webtransport/WebTransportHash.o
[task 2024-07-09T10:41:23.253Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/protocol/webtransport'
[task 2024-07-09T10:41:23.265Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.268Z] 10:41:23 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang++ --sysroot /builds/worker/fetches/sysroot-x86_64-linux-gnu -o nsIOService.o -c -I/builds/worker/workspace/obj-build/dist/stl_wrappers -I/builds/worker/workspace/obj-build/dist/system_wrappers -include /builds/worker/checkouts/gecko/config/gcc_hidden.h -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -fstack-clash-protection -DNDEBUG=1 -DTRIMMED=1 -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DMOZ_SUPPORT_LEAKCHECKING -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/netwerk/base -I/builds/worker/workspace/obj-build/netwerk/base -I/builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders -I/builds/worker/checkouts/gecko/ipc/chromium/src -I/builds/worker/workspace/obj-build/xpcom/components -I/builds/worker/checkouts/gecko/docshell/base -I/builds/worker/checkouts/gecko/dom/base -I/builds/worker/checkouts/gecko/js/xpconnect/src -I/builds/worker/checkouts/gecko/netwerk/dns -I/builds/worker/checkouts/gecko/netwerk/protocol/http -I/builds/worker/checkouts/gecko/netwerk/protocol/webtransport -I/builds/worker/checkouts/gecko/netwerk/socket -I/builds/worker/checkouts/gecko/netwerk/url-classifier -I/builds/worker/checkouts/gecko/security/manager/ssl -I/builds/worker/checkouts/gecko/xpcom/components -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -DMOZILLA_CLIENT -include /builds/worker/workspace/obj-build/mozilla-config.h -D_GLIBCXX_USE_CXX11_ABI=0 -fno-rtti -pthread -fno-sized-deallocation -fno-aligned-new -ffunction-sections -fdata-sections -fno-math-errno -fno-exceptions -fPIC -fcrash-diagnostics-dir=/builds/worker/artifacts -gdwarf-4 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -fno-omit-frame-pointer -funwind-tables -Werror -Wall -Wbitfield-enum-conversion -Wempty-body -Wformat-type-confusion -Wignored-qualifiers -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtautological-constant-in-range-compare -Wtype-limits -Wno-error=tautological-type-limit-compare -Wunreachable-code -Wunreachable-code-return -Wunused-but-set-parameter -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wno-range-loop-analysis -Wenum-compare-conditional -Wenum-float-conversion -Wno-deprecated-anon-enum-enum-conversion -Wno-deprecated-enum-enum-conversion -Wno-deprecated-this-capture -Wcomma -Wimplicit-fallthrough -Wstring-conversion -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wno-error=atomic-alignment -Wno-error=deprecated-builtins -Wformat -Wformat-security -Wno-psabi -Wthread-safety -Wno-error=builtin-macro-redefined -Wno-vla-cxx-extension -Wno-unknown-warning-option -fno-strict-aliasing -ffp-contract=off -MD -MP -MF .deps/nsIOService.o.pp /builds/worker/checkouts/gecko/netwerk/base/nsIOService.cpp
[task 2024-07-09T10:41:23.268Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.272Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.272Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/base'
[task 2024-07-09T10:41:23.273Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/netwerk/protocol/websocket'
[task 2024-07-09T10:41:23.273Z] 10:41:23 INFO - netwerk/protocol/websocket/IPCTransportProvider.o
[task 2024-07-09T10:41:23.274Z] 10:41:23 INFO - gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/netwerk/protocol/websocket'
[task 2024-07-09T10:41:23.299Z] 10:41:23 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/media/libdav1d/asm'
[task 2024-07-09T10:41:23.300Z] 10:41:23 INFO - /builds/worker/fetches/nasm/nasm -o looprestoration_sse.o -f elf64 -F dwarf -I/builds/worker/checkouts/gecko/third_party/dav1d/src/ -DHAVE_AVX512ICL=1 -I/builds/worker/checkouts/gecko/media/libdav1d/asm/x86_64/linux/ -Dprivate_prefix=dav1d /builds/worker/checkouts/gecko/third_party/dav1d/src/x86/looprestoration_sse.asm
Assignee | ||
Comment 26•7 months ago
|
||
Updated•7 months ago
|
Comment 27•7 months ago
|
||
Assignee | ||
Comment 28•7 months ago
|
||
Relanded with the unused constants removed.
Comment 29•7 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/826c05f26376
https://hg.mozilla.org/mozilla-central/rev/e85a32e48a07
Comment 30•7 months ago
|
||
(In reply to Pulsebot from comment #24)
Pushed by hsivonen@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c3d6429d8a59
Vendor idna 1.0.2 and icu_normalizer by updating the url crate.
r=glandium,supply-chain-reviewers
https://hg.mozilla.org/integration/autoland/rev/87d0e483dd8c
Migrate IDNA handling to ICU4X.
r=necko-reviewers,geckoview-reviewers,credential-management-reviewers,home-
newtab-reviewers,valentin,owlish,dimi,thecount,supply-chain-reviewers
Perfherder has detected a build_metrics performance change from push 87d0e483dd8c374b25c66d0e74858f3f5ecd4cf5.
Improvements:
Ratio | Test | Platform | Options | Absolute values (old vs new) |
---|---|---|---|---|
0.13% | installer size | osx-cross | 96,296,389.33 -> 96,167,944.33 |
Details of the alert can be found in the alert summary, including links to graphs and comparisons for each of the affected tests.
If you need the profiling jobs you can trigger them yourself from treeherder job view or ask a sheriff to do that for you.
You can run these tests on try with ./mach try perf --alert 1084
For more information on performance sheriffing please see our FAQ.
Assignee | ||
Comment 31•7 months ago
|
||
(In reply to Acasandrei Beatrice (needinfo me) from comment #30)
Improvements:
As there's an improvement, there's no need for an action.
An improvement makes sense, since this change removed unicode-normalization
from the build, and it is known from outside-of-Gecko measurement that the icu_normalizer
back end for the idna
crate results in smaller binary size than the unicode-normalization
back end.
Description
•