Граф коммитов

4413 Коммитов

Автор SHA1 Сообщение Дата
Henri Sivonen 3edc601325 Bug 1402247 - Use encoding_rs for XPCOM string encoding conversions. r=Nika,erahm,froydnj.
Correctness improvements:

 * UTF errors are handled safely per spec instead of dangerously truncating
   strings.

 * There are fewer converter implementations.

Performance improvements:

 * The old code did exact buffer length math, which meant doing UTF math twice
   on each input string (once for length calculation and another time for
   conversion). Exact length math is more complicated when handling errors
   properly, which the old code didn't do. The new code does UTF math on the
   string content only once (when converting) but risks allocating more than
   once. There are heuristics in place to lower the probability of
   reallocation in cases where the double math avoidance isn't enough of a
   saving to absorb an allocation and memcpy.

 * Previously, in UTF-16 <-> UTF-8 conversions, an ASCII prefix was optimized
   but a single non-ASCII code point pessimized the rest of the string. The
   new code tries to get back on the fast ASCII path.

 * UTF-16 to Latin1 conversion guarantees less about handling of out-of-range
   input to eliminate an operation from the inner loop on x86/x86_64.

 * When assigning to a pre-existing string, the new code tries to reuse the
   old buffer instead of first releasing the old buffer and then allocating a
   new one.

 * When reallocating from the new code, the memcpy covers only the data that
   is part of the logical length of the old string instead of memcpying the
   whole capacity. (For old callers old excess memcpy behavior is preserved
   due to bogus callers. See bug 1472113.)

 * UTF-8 strings in XPConnect that are in the Latin1 range are passed to
   SpiderMonkey as Latin1.

New features:

 * Conversion between UTF-8 and Latin1 is added in order to enable faster
   future interop between Rust code (or otherwise UTF-8-using code) and text
   node and SpiderMonkey code that uses Latin1.

MozReview-Commit-ID: JaJuExfILM9
2018-08-14 14:43:42 +03:00
Paul Bone a769b94ed4 Bug 1482002 - add nsCaseInsensitiveStringComparator default constructor r=bz
--HG--
extra : rebase_source : 33354a2466e0695350669d309713694ff5b7b6ca
extra : source : 45c85611bd318a4b788ae9884a78af2ebe99e30e
2018-08-09 14:37:30 +10:00
Zibi Braniecki 6ddc6d1828 Bug 1480881 - Upgrade Gecko to Fluent 0.6. r=stas
Upgrade Gecko to Fluent 0.6.

Differential Revision: https://phabricator.services.mozilla.com/D2740

--HG--
extra : moz-landing-system : lando
2018-08-07 00:08:29 +00:00
Zibi Braniecki 16229f69ef Bug 1475903 - Add mozIDOMLocalization API. r=mossop
In order to use DOMLocalization from C++ we need an XPIDL interface.
mozIDOMLocalization exposes the class and functionality allowing DocumentL10n to hook into it.

MozReview-Commit-ID: GPMhw61LPEg

--HG--
extra : rebase_source : 65d6e2b84379e78201f0c8b674630d1f485aaf8c
2018-06-22 13:14:23 -07:00
Zibi Braniecki a3c93fda4e Bug 1480798 - Set document's directionality in Fluent. r=stas
Set document's directionality in Fluent.

Differential Revision: https://phabricator.services.mozilla.com/D2732

--HG--
extra : moz-landing-system : lando
2018-08-03 21:13:19 +00:00
Coroiu Cristina 83ac803dc6 Backed out changeset c0bf622859f6 (bug 1480798) for chrome failures at intl/l10n/test/dom/test_domloc.xul 2018-08-03 23:55:25 +03:00
Zibi Braniecki 0abff42b51 Bug 1480798 - Set document's directionality in Fluent. r=stas
Set document's directionality in Fluent.

Differential Revision: https://phabricator.services.mozilla.com/D2732

--HG--
extra : moz-landing-system : lando
2018-08-03 17:21:37 +00:00
Cosmin Sabou 0d26acc69a Backed out changeset bfaeacf41b77 (bug 1475903) for causing leaks at nsTArray_base. 2018-08-02 10:39:02 +03:00
Zibi Braniecki ee6c5d52d3 Bug 1475903 - Add mozIDOMLocalization API. r=mossop
In order to use DOMLocalization from C++ we need an XPIDL interface.
mozIDOMLocalization exposes the class and functionality allowing DocumentL10n to hook into it.

MozReview-Commit-ID: GPMhw61LPEg

--HG--
extra : rebase_source : 65d6e2b84379e78201f0c8b674630d1f485aaf8c
2018-06-22 13:14:23 -07:00
Andreea Pavel 7c754d1621 Backed out changeset fbbb0327f0f1 (bug 1475903) for failing intl/l10n/test/test_mozdomlocalization.js 2018-08-02 06:14:05 +03:00
Zibi Braniecki 0ce3ff104d Bug 1475903 - Add mozIDOMLocalization API. r=mossop
In order to use DOMLocalization from C++ we need an XPIDL interface.
mozIDOMLocalization exposes the class and functionality allowing DocumentL10n to hook into it.

MozReview-Commit-ID: GPMhw61LPEg

--HG--
extra : rebase_source : 62d5909d9db8858c2ad1b4234d6f9b9be8da7efd
2018-06-22 13:14:23 -07:00
Zibi Braniecki a0c2cfd168 Bug 1479606 - Sync BCP47 language tags between processes, not lang tags. r=jfkthame
Sync BCP47 language tags between processes, not lang tags.

Differential Revision: https://phabricator.services.mozilla.com/D2579

--HG--
extra : moz-landing-system : lando
2018-07-31 21:42:37 +00:00
Axel Hecht 85cca5e505 bug 1478343, update Fluent migration docs, r=stas
The changes affecting the docs include:
Rename of EXTERNAL_ARGUMENT to VARIABLE_REFERENCE
Addition of TERM_REFERENCE

Docs already talk about variable references, too.

MozReview-Commit-ID: KUwPSqJyBn0

--HG--
extra : rebase_source : d1b8b3aa42716ba9884422687c8ae8946805bb1f
2018-07-26 11:17:57 +02:00
Jonathan Kew 98cb122caa Bug 1426827 - Treat Fitzpatrick skin-tone modifiers as cluster extenders when building textruns. r=m_kato 2018-07-25 09:38:10 +01:00
Jonathan Kew c5cd6a1621 Bug 1477010 - Treat plane-14 tag characters as cluster extenders when building textruns, so that emoji flag sequences behave as single units. r=m_kato 2018-07-25 09:38:07 +01:00
Kris Maglione 43de9e89bf Bug 1473135: Stop using ReentrantMonitor for string bundle mutexes. r=gandalf
MozReview-Commit-ID: HUfb47Eei7P

--HG--
extra : rebase_source : a6edf2f1163b799e9c62eb510d5e52e7a9d014b8
2018-07-20 17:20:00 -07:00
Margareta Eliza Balazs 9de29c1f5a Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-07-18 12:40:51 +03:00
Xidorn Quan 158c6391b2 Bug 1476485 - Remove pragma pack from nsUnicodeScriptCodes.h. r=jfkthame
MozReview-Commit-ID: LW64U7ccjVa

--HG--
extra : rebase_source : 0c95807a0a86be417d331c9f9b0a61ff2b04db23
2018-07-18 14:05:05 +10:00
Sylvestre Ledru 91907444b3 Bug 1468273 - Fix flake8/pep8 in intl/ r=froydnj
MozReview-Commit-ID: IDqjd7nBRS

--HG--
extra : rebase_source : 1679528701e0cab59fb827224f19eced9c8fda00
2018-06-10 14:25:47 +02:00
Zibi Braniecki 9abd8411b1 Bug 1384236 - Cache l10n resources differently in L10nRegistry. r=Pike
Switch to cache FTLResources per FileSource. This allows us to minimize
the memory impact of dynamic additions/removals of l10n resources to
a context on fly.

MozReview-Commit-ID: B9fxbkaU3oX

--HG--
extra : rebase_source : bc268352965c721b5692f2062a063f7fba091136
2018-06-22 12:03:24 -07:00
Paolo Amadini 78634a8074 Bug 1472716 - Part 1 - Whitelist the "value" attribute for XUL localization. r=gandalf
MozReview-Commit-ID: Gv9da9rqOrL

--HG--
extra : source : 8863ca47ea65aae4b136ea9cf80fb8eab33c0e90
2018-07-10 14:57:18 +01:00
Zibi Braniecki 6ab04fc7a2 Bug 1474786 - Update Fluent to master. r=stas
MozReview-Commit-ID: 5PMKF46TPVM

--HG--
extra : rebase_source : cb1efb34498c6d067cde90e5f999267ce91b08e9
2018-07-10 17:49:02 -07:00
André Bargull 7f4e8b545f Bug 1466471 - Part 6: Import patch to fix case conversion bug. r=Waldo 2018-07-05 07:14:07 -07:00
André Bargull 19d00748a5 Bug 1466471 - Part 5: Regenerate Unicode files after ICU update. r=jfkthame 2018-06-22 05:02:03 -07:00
André Bargull 5f0b43c2d6 Bug 1466471 - Part 2: Update in-tree ICU to release 62.1. rs=Waldo 2018-06-22 04:40:26 -07:00
André Bargull e41342954e Bug 1466471 - Part 1: Update patches for ICU 62. r=Waldo 2018-06-22 04:39:39 -07:00
Kris Maglione 55220193dd Bug 1470771: Follow-up: Fix null deref in Windows GPU process. r=me 2018-06-30 16:37:51 -07:00
Kris Maglione a2b2bbf6b6 Bug 1470771: Part 2 - Update StringBundle memory reporters to account for sharing. r=erahm
MozReview-Commit-ID: 5xRsvLj4Klu

--HG--
extra : rebase_source : 08cdb56e6260ea03c3b5040013289482b5edd44c
extra : absorb_source : 67a548b588e576913181feca037a28493539de35
2018-06-24 15:47:10 -07:00
Kris Maglione bfb5c20c11 Bug 1470771: Part 1 - Don't evict shared bundles from the bundle cache. r=erahm
MozReview-Commit-ID: 6BLN4hOH5fW

--HG--
extra : rebase_source : 445ebef3d6a50c44de6929b32cdbe2bc68daef35
extra : absorb_source : e3152069712927a73a54ca9d8240413f51ddec21
2018-06-24 14:32:19 -07:00
Kris Maglione f66e192f39 Bug 1470716: Remove unused ExtensibleStringBundle support. r=gandalf
MozReview-Commit-ID: HpNjXK0IURv

--HG--
extra : rebase_source : 988d650e15f4082ad0b778163b661ec105d71096
extra : absorb_source : 55ede0cae193e3dfb6c1ce9e1caffe51a9005aa6
2018-06-23 23:12:31 -07:00
Kris Maglione 54bf3bc3c5 Bug 1470608: Remove StringBundleOverride service. r=gandalf
MozReview-Commit-ID: GYEvzmstW54

--HG--
extra : rebase_source : 9ae0a0cef7f4ae0e373f6ace7d26767616881409
extra : absorb_source : 98dae21cc3acda425cc885f7ae473a54a5ac71b4
2018-06-23 22:56:19 -07:00
Kris Maglione e6da28f1ce Bug 1470365: Part 3 - Use shared memory for StringBundles loaded in the content process. r=erahm,smaug
MozReview-Commit-ID: LunnQyndnBf

--HG--
extra : rebase_source : f67e08fc83e8c2e280d886b2d69150c09fb48200
extra : absorb_source : 3b9b226aaca168e3b6537f3031ff22275bd27133
2018-06-29 22:53:12 -07:00
Kris Maglione d89b3482b9 Bug 1470365: Part 2 - Add StringBundle implementation using shared memory maps. r=erahm,gandalf
This adds a basic StringBundle implementation using shared memory maps, but
doesn't yet hook them up to anything. They behave the same as ordinary string
bundles, but have the additional restriction that they are permanent for the
length of the session, and cannot be removed from the cache.

MozReview-Commit-ID: 4juGhhpCWPn

--HG--
extra : rebase_source : 3a9e30eeb64482056ad5c5b1fc480cf1e8333691
extra : absorb_source : e38998a347b641d4fd4243a6a1b7365543fee3c4
2018-06-28 14:45:21 -07:00
Chris Peterson 2afd829d0f Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj
This patch is an automatic replacement of s/NS_NOTREACHED/MOZ_ASSERT_UNREACHABLE/. Reindenting long lines and whitespace fixups follow in patch 6b.

MozReview-Commit-ID: 5UQVHElSpCr

--HG--
extra : rebase_source : 4c1b2fc32b269342f07639266b64941e2270e9c4
extra : source : 907543f6eae716f23a6de52b1ffb1c82908d158a
2018-06-17 22:43:11 -07:00
Francesco Lodolo (:flod) b8cbb8c7e1 Bug 1467183 - Add documentation for Fluent migrations, r=gandalf,Pike,stas
MozReview-Commit-ID: 8eaH4SaXfAu

--HG--
extra : rebase_source : a8af1c7613fd4dc50b6bedde45c8a2d61403ee8c
2018-06-07 18:19:00 +02:00
Andi-Bogdan Postelnicu 61063ef470 Bug 1453795 - I18N - Initialize member fields in classes/ structures. r=jfkthame
--HG--
extra : amend_source : 8acc147182e6a4dff7fdb6a324e12628f5211c07
2018-06-14 22:32:49 +03:00
Makoto Kato 128531b424 Bug 1434805 - Use LocaleList on Android N+. r=jchen
Android N+ has new Locale mode that selects multiple locale for font selection.
We should support it to be better locale system selection.

MozReview-Commit-ID: HndldWO5yOd

--HG--
extra : rebase_source : b07608b7c51ae530ccb80f79e24aee6eface4712
2018-06-08 17:35:43 +09:00
Henri Sivonen e4805fd183 Bug 1466807 - Update encoding_rs to 0.8.0. r=emk
MozReview-Commit-ID: 30vmruy1kiL

--HG--
extra : rebase_source : 0e3e489fde0485919cd03529ba5d6d030863bfc1
2018-06-05 13:50:20 +03:00
Kris Maglione 7b7264f453 Bug 1464548: Part 3 - Update callers to use defineLazyGlobalGetters. r=mccr8
MozReview-Commit-ID: 9APGewiDDYB

--HG--
extra : rebase_source : 2931dd0eec0e4206414b698a9700fc20d922eb3a
2018-05-25 17:02:29 -07:00
Francesco Lodolo (:flod) fe5f3fd914 Bug 1467377 - Fix typos in Intl and L10n documentation r=gandalf
MozReview-Commit-ID: 9zP6j7COEiJ

--HG--
extra : rebase_source : 35b44964d38f53f62522d0709b18d7dfa1ca8a9a
2018-06-07 08:20:49 +02:00
Zibi Braniecki a3bf95f8ee Bug 1450781 - Enable pseudolocalization in Fluent. r=mossop
MozReview-Commit-ID: Cs8OubRRur4

--HG--
extra : rebase_source : 10f2ff4983d0785278a030d134a41582e4714f71
2018-06-01 12:37:13 -07:00
Mark Banner 009a516ef4 Bug 1444329 - Remove nsIScriptableUnicodeConverter::convertFromByteArray. r=hsivonen
MozReview-Commit-ID: IPgCK6slIqj

--HG--
extra : rebase_source : f5074678ccaf184e17660699a6e1173a6d951b6f
2018-06-04 11:25:54 +01:00
Emilio Cobos Álvarez fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Zibi Braniecki 2c11915c39 Bug 1438687 - Add Developer documentation for l10n. r=flod,Pike
MozReview-Commit-ID: J3jZuyyRKXM

--HG--
extra : rebase_source : 09023a869d19616e914b1c5494bd57808489003f
2018-04-26 14:19:22 -07:00
Zibi Braniecki 1f437852f1 Bug 1438687 - Add Developer documentation for Intl and mozIntl. r=jfkthame,Pike
MozReview-Commit-ID: HbKJoM66iD6

--HG--
extra : rebase_source : 41b92532ba1fee024b6435ee84f8f6df32bd48b3
2018-04-26 14:19:01 -07:00
Zibi Braniecki 41175a3f18 Bug 1438687 - Add Developer documentation for LocaleService. r=jfkthame,Pike
MozReview-Commit-ID: Jk2BhKBsW8S

--HG--
extra : rebase_source : 13919722aa508cac0f4c9638dc6ff9a6bf4607ce
2018-04-26 14:18:34 -07:00
Zibi Braniecki 81ade958bc Bug 1438687 - Document mozilla::intl::Locale. r=jfkthame,Pike
MozReview-Commit-ID: BzGKIfzR63

--HG--
extra : rebase_source : ecb85fd784636ad19ce9a62368c46747cebe0f10
2018-04-26 14:18:08 -07:00
Kristen Wright 5e4b4031fc Bug 1462138 - Part 1: Add a memory reporter for nsStringBundleService. r=erahm
Added memory reporter in nsStringBundleService. Added SizeOfIncluding/ExcludingThis functions in IStringBundle, StringBundle, ExtensibleStringBundle, PersistentProperties, StringBundleTextOverride.

--HG--
extra : rebase_source : 0756ed2181f02ffe42dd94db282ddf3dfa59047c
2018-05-18 13:16:31 -07:00
Zibi Braniecki 1c5fcde883 Bug 1453765 - Switch Fluent from warning to throwing errors when in debug/testing mode. r=Gijs
MozReview-Commit-ID: 1y7FTCPWRxb

--HG--
extra : rebase_source : fb4d20e383efd64bbdfce5ca1d78aca40716b57a
2018-05-22 20:49:29 -07:00
Csoregi Natalia acd92af57e Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-05-23 01:02:30 +03:00