a0043d4c36ebe893c61691d3027712285989be62
[platform/upstream/libphonenumber.git] / java / release_notes.txt
1 Mar 04, 2015: libphonenumber-7.0.4
2 * Metadata changes:
3
4 Mar 02, 2015: libphonenumber-7.0.3
5 * Metadata changes:
6  - Updated phone metadata for region code(s):
7    AR, BH, BY, CI, CN, GH, KR, KW, LU, ME, NZ, SB, WS
8  - New geocoding data for country calling code(s): 64 (en)
9  - Updated geocoding data for country calling code(s):
10    86 (en, zh), 1418 (en), 1438 (en), 1450 (en), 1514 (en), 1819 (en)
11  - Updated carrier data for country calling code(s):
12    225 (en), 233 (en), 677 (en), 973 (en)
13
14 Jan 09, 2015: libphonenumber-7.0.2
15 * Metadata changes:
16  - Updated phone metadata for region code(s):
17    BD, BH, EH, GH, IN, JM, LU, MA, MY, NF, NG, PK, SB, TT, TZ
18  - Updated geocoding data for country calling code(s): 91 (en), 352 (en, fr)
19  - New carrier data for country calling code(s): 1876 (en)
20  - Updated carrier data for country calling code(s):
21    60 (en), 91 (en), 92 (en), 212 (en), 233 (en), 234 (en), 352 (en), 677 (en)
22
23 Nov 25, 2014: libphonenumber-7.0.1
24 * Metadata changes:
25  - New alternate formatting data for country calling code(s): 676
26  - Updated phone metadata for region code(s):
27    BI, CM, ID, IR, KR, LA, NP, TG, TH, TO
28  - New geocoding data for country calling code(s): 237 (en)
29  - Updated geocoding data for country calling code(s): 98 (en, fa)
30  - Updated carrier data for country calling code(s):
31    237 (en), 257 (en), 856 (en), 977 (en)
32
33 Oct 29, 2014: libphonenumber-7.0
34 * Code changes:
35  - New APIs for ShortNumberInfo. The old APIs have been deprecated and will be
36    removed in an upcoming release.
37 * Metadata changes:
38  - Updated phone metadata for region code(s):
39    AR, AU, CC, CI, CX, DZ, EE, IN, KZ, MC, SB, TJ, TT
40  - Updated short number metadata for region code(s): MC
41  - Updated geocoding data for country calling code(s): 34 (en, es), 54 (en)
42  - Updated carrier data for country calling code(s):
43    7 (en), 61 (en), 91 (en), 225 (en), 677 (en), 967 (en), 992 (en), 1868 (en)
44
45 Oct 13, 2014: libphonenumber-6.3.1
46 * Metadata changes:
47  - Updated phone metadata for region code(s):
48    AC, AU, CR, DE, IL, MR, NO, SA, SR, UG
49  - Updated short number metadata for region code(s): CR
50  - Updated carrier data for country calling code(s):
51    61 (en), 256 (en), 506 (en), 597 (en), 966 (en), 972 (en)
52
53 Sep 25, 2014: libphonenumber-6.3
54 * Code changes:
55   - Changing the offline geocoder to not return any country at all if the number
56     could belong to multiple countries
57   - Removing obsolete code that treated countries with no metadata as valid.
58 * Metadata changes:
59  - New alternate formatting data for country calling code(s): 54, 91
60  - Updated phone metadata for region code(s):
61    AM, AR, BR, CA, CL, IL, IN, IR, IS, KE, NI, PF, SB, SN, TH, TN, US
62  - New geocoding data for country calling code(s):
63    1782 (en), 1929 (en), 1930 (en), 1938 (en)
64  - Updated geocoding data for country calling code(s): 98 (en, fa)
65  - New carrier data for country calling code(s): 354 (en)
66  - Updated carrier data for country calling code(s):
67    27 (en), 56 (en), 66 (en), 91 (en), 92 (en), 98 (en), 216 (en), 221 (en),
68    254 (en), 374 (en), 505 (en), 677 (en), 972 (en)
69
70 Aug 21, 2014: libphonenumber-6.2.2
71 * Metadata changes:
72  - Updated phone metadata for region code(s): BN, CL, CO, DK, IN, SB, SO
73  - Updated short number metadata for region code(s): FR, SA, US
74  - Updated carrier data for country calling code(s):
75    27 (en), 57 (en), 91 (en), 252 (en), 677 (en)
76
77 Jul 28, 2014: libphonenumber-6.2.1
78 * Metadata changes:
79  - Updated phone metadata for region code(s): BW, LB, MD, PA, PF, VI, ZM
80  - New carrier data for country calling code(s): 507 (en), 961 (en)
81  - Updated carrier data for country calling code(s): 267 (en), 373 (en)
82
83 Jun 30, 2014: libphonenumber-6.2
84 * Code changes:
85  - Better exclusion of dates when matching phone numbers from text.
86  - Handle phone input in RFC3966 with missing tel: prefix
87
88 * Metadata changes:
89  - New alternate formatting data for country calling code(s): 95
90  - Updated phone metadata for region code(s):
91    AF, CN, EH, FJ, IN, JP, KE, KG, KW, MA, MM, PG, PK, SN, SO
92  - New short number metadata for region code(s): SN
93  - Updated short number metadata for region code(s): FR, KE
94  - Updated geocoding data for country calling code(s): 254 (en)
95  - New carrier data for country calling code(s): 95 (en)
96  - Updated carrier data for country calling code(s):
97    92 (en), 93 (en), 212 (en), 221 (en), 254 (en), 675 (en), 679 (en), 965 (en),
98    996 (en)
99
100 Jun 06, 2014: libphonenumber-6.1.1
101 * Metadata changes:
102  - Updated phone metadata for region code(s):
103    AF, AG, AI, AS, BB, BF, BM, BS, CA, CN, CR, DM, DO, DZ, FR, GD, GU, IN, JM,
104    KH, KN, KW, KY, LC, MN, MP, MS, NG, NI, PH, PR, SX, TC, TT, US, VC, VG, VI
105  - Updated short number metadata for region code(s): AL
106  - New geocoding data for country calling code(s): 1346 (en), 1959 (en)
107  - Updated geocoding data for country calling code(s):
108    33 (en, fr), 352 (de, en, fr), 355 (en)
109  - New carrier data for country calling code(s): 505 (en)
110  - Updated carrier data for country calling code(s):
111    63 (en), 91 (en), 93 (en), 234 (en)
112
113 May 08, 2014: libphonenumber-6.1
114 * Code changes:
115  - Adding MetadataLoader support to allow custom metadata loading from
116    alternative sources (should have no visible impact to users).
117  - Fixing bug where digits could be lost in as-you-type formatting and
118    formatting patterns incorrectly applied.
119
120 * Metadata changes:
121  - Updated phone metadata for region code(s):
122    AR, BF, BR, BS, CL, CN, CO, CR, DE, DM, EC, EG, FR, GA, GD, GH, HU, ID, IL,
123    IN, JP, KH, KI, KN, LA, LC, LR, ML, MU, MX, MZ, NA, NE, PF, PL, RU, SM, TH,
124    TW, UZ, VA, VC
125  - Updated short number metadata for region code(s): BI, CR, PL, TH
126  - New geocoding data for country calling code(s): 32 (de), 1242 (en)
127  - Updated geocoding data for country calling code(s):
128    32 (en, nl), 55 (en), 56 (en, es), 86 (en, zh)
129  - New carrier data for country calling code(s):
130    1758 (en), 1784 (en), 1869 (en)
131  - Updated carrier data for country calling code(s):
132    66 (en), 86 (en), 227 (en), 231 (en), 233 (en), 258 (en), 1473 (en),
133    1767 (en)
134
135 Feb 25, 2014: libphonenumber-6.0
136 * Code changes:
137  - Better support for detecting phone numbers in text that are beside each other
138  - Change to how Japanese numbers beginning with "00" are modelled, with the
139    side-effect that the maximum possible number length has been extended by 1.
140  - Handle StringIndexOutOfBoundsException in the AsYouTypeFormatter when the
141    national prefix that was extracted was not found in the prefix. This affected
142    countries with very long carrier codes, such as Korea.
143  - Removal of some of the author attributions - contributions to be tracked in
144    CONTRIBUTORS file.
145 * Metadata changes:
146  - Updated phone metadata for region code(s): AS, BR, KW, LU
147  - New carrier data for country calling code(s): 1684 (en)
148  - Updated carrier data for country calling code(s): 352 (en)
149
150 Feb 07, 2014: libphonenumber-5.9.4
151 * Metadata changes:
152  - Updated phone metadata for region code(s):
153    883, BF, BJ, BW, CL, CR, DZ, FR, GD, IN, JP, MD, NG, NZ, PK, PL, SY, UY, VU
154  - Updated short number metadata for region code(s): LV, MD
155  - New carrier data for country calling code(s): 373 (en), 1473 (en)
156  - Updated carrier data for country calling code(s):
157    48 (en), 49 (en), 91 (en), 92 (en), 213 (en), 226 (en), 229 (en), 234 (en),
158    267 (en), 389 (en), 506 (en), 598 (en)
159
160 Jan 21, 2014: libphonenumber-5.9.3
161 * Metadata changes:
162  - Updated phone metadata for region code(s):
163    BF, BH, BR, CN, GR, IN, MY, PA, TN, US
164  - Updated short number metadata for region code(s): CN
165  - New geocoding data for country calling code(s): 1364 (en), 1725 (en)
166  - Updated geocoding data for country calling code(s): 86 (en)
167  - Updated carrier data for country calling code(s):
168    55 (en), 226 (en), 973 (en)
169
170 Dec 20, 2013: libphonenumber-5.9.2
171 * Metadata changes:
172  - New alternate formatting data for country calling code(s): 255, 27, 381, 506
173  - Updated alternate formatting data for country calling code(s): 43
174  - Updated phone metadata for region code(s):
175    AG, AI, AS, BB, BF, BM, BS, CA, CR, DM, DO, EC, GD, GU, JM, KN, KY, LC, MP,
176    MS, PR, SO, SX, TC, TT, US, VC, VG, VI
177  - Updated carrier data for country calling code(s): 226 (en)
178
179 Dec 13, 2013: libphonenumber-5.9.1
180 * Metadata changes:
181  - New alternate formatting data for country calling code(s): 505, 679
182  - Updated phone metadata for region code(s):
183    BF, CI, EG, EH, FJ, IN, KI, MA, MT, NG, NI, SI, SN, SR, TT
184  - Updated short number metadata for region code(s): KI
185  - Updated geocoding data for country calling code(s):
186    27 (en), 226 (en), 1 (en)
187  - New carrier data for country calling code(s): 356 (en), 677 (en)
188  - Updated carrier data for country calling code(s):
189    212 (en), 221 (en), 225 (en), 226 (en), 234 (en), 597 (en), 1 (en)
190
191 Nov 12, 2013: libphonenumber-5.9
192 * Code changes:
193  - Adding support for numbers with multiple Italian leading zeros, by adding a field
194    to the phone number proto to allow an arbitrary number of leading zeros, and
195    supporting this when parsing, validating and formatting.
196  - Adding more functionality to ShortNumberInfo -> such as getExpectedCostForRegion.
197  - Fix for parsing short numbers that start with the national prefix.
198  - Updating formatNumberForMobileDialing to work with short numbers.
199  - Stop finding Israeli 4-digit "star" numbers in text when no star is in fact present.
200  - Bug fix for finding phone numbers where the area code was also part of the country
201    calling code.
202
203 * Metadata changes:
204  - Updated phone metadata for region code(s):
205    AU, BQ, BY, CI, CO, CW, GN, HN, IN, JO, KI, KW, MG, MK, MM, NA, PK, TC, TM,
206    UG
207  - New short number metadata for region code(s): CD, GN
208  - Updated short number metadata for region code(s):
209    AF, AG, AI, AM, AR, AS, AW, AZ, BD, BH, BI, BM, BO, BQ, BT, BW, BY, CA, CH,
210    CI, CM, CO, CW, DZ, FJ, GD, GE, GH, GT, GY, HN, HT, ID, IE, IM, IN, IQ, JM,
211    JO, KE, KG, KH, KI, KW, KZ, LR, SV
212  - New geocoding data for country calling code(s):
213    257 (en), 389 (en), 599 (en), 686 (en), 962 (en)
214  - Updated geocoding data for country calling code(s):
215    264 (en), 375 (be, en, ru)
216  - New carrier data for country calling code(s):
217    375 (be, ru), 389 (en), 599 (en), 965 (ar)
218  - Updated carrier data for country calling code(s):
219    57 (en), 61 (en), 92 (en), 225 (en), 256 (en), 257 (en), 261 (en), 375 (en),
220    686 (en), 962 (en), 965 (en)
221
222 Oct 10, 2013: libphonenumber-5.8.8
223 * Metadata changes:
224  - New alternate formatting data for country calling code(s):
225    350, 358, 36, 66, 84, 94, 995
226  - Updated alternate formatting data for country calling code(s):
227    31, 359, 372, 49, 62, 7
228  - Updated phone metadata for region code(s):
229    AR, BD, BE, BF, BR, CO, CR, FI, GI, GM, IS, MU
230  - Updated short number metadata for region code(s): AR, BE, ES, GI, PG, US
231  - Updated geocoding data for country calling code(s): 220 (en)
232  - Updated carrier data for country calling code(s):
233    20 (en), 220 (en), 224 (en), 230 (en), 852 (en)
234
235 Oct 8, 2013: libphonenumber-5.8.7
236 * Code changes:
237   - New method in the PhoneNumberUtil API - isMobileNumberPortableRegion.
238   - Carrier mapper: Updated API and added a getSafeDisplayName method that only returns the carrier
239                     if it's safe to display to the user.
240
241 Oct 7, 2013:
242 * Code changes:
243   - Added PhoneNumberToTimeZonesMapper including unittests to the geocoder maven project.
244   - Added build rules for generating the binary time zones mapping file from the text file.
245   - Modified PhoneNumberParserServlet.java (the appengine demo) to incorporate time zone mapping.
246 * Metadata changes:
247   - Added the time zone mapping file.
248
249 Sep 30, 2013:
250 * Code changes:
251   - Added PhoneNumberToCarrierMapper including unittests.
252   - Added build rules for generating binary carrier mapping files from text files.
253   - Modified PhoneNumberParserServlet.java (the appengine demo) to incorporate carrier mapping.
254 * Metadata changes:
255   - Added carrier mapping files for some NANPA countries, EG, SS, MA, DZ, TN, GM, SN, MR, ML, GN,
256     CI, BF, NE, TG, BJ, MU, LR, SL, GH, NG, TD, CF, CM, CV, ST, GQ, GA, CG, CD, AO, GW, SC, SD, RW,
257     ET, SO, DJ, KE, TZ, UG, BI, MZ, ZM, MG, ZW, MW, BW, SZ, ZA, AW, FO, GL, GR, NL, BE, FR, GI, PT,
258     LU, IE, AL, CY, FI, BG, HU, LT, EE, AM, BY, AD, UA, RS, HR, SI, BA, IT, RO, CH, CZ, SK, AT, DK,
259     NO, PL, DE, BZ, CR, PE, CU, AR, BR, CL, CO, VE, BO, PY, SR, UY, MY, AU, ID, PH, NZ, SG, TH, TL,
260     BN, PG, TO, VU, FJ, WS, KI, RU, VN, HK, KH, LA, CN, BD, TR, IN, PK, AF, LK, MV, JO, IQ, KW, SA,
261     YE, OM, PS, AE, IL, BH, QA, BT, NP, IR, TJ, TM, AZ, GE, KG and UZ in English.
262
263 Sep 23, 2013: libphonenumber-5.8.6
264 * Code changes:
265   - Restructured the geocoder binary generation code, moving the classes under tools/ from
266     geocoding/ to buildtools/ and renaming AreaCode to PhonePrefix.
267
268 Sep 23, 2013: libphonenumber-5.8.5
269 * Code changes:
270   - Restructured the geocoder, moving the utility classes to a new module internal/prefixmapper.
271
272 Sep 20, 2013: libphonenumber-5.8.4
273 * Metadata changes:
274  - Adding a token to indicate which countries have mobile portability.
275
276 Sep 20, 2013: libphonenumber-5.8.3
277 * Code changes:
278   - PhoneNumberOfflineGeocoder: Moved utility functionality to PrefixFileReader.
279   - Bug fix: Argentinian (and other countries with mobile tokens) mobile numbers now geocode
280              correctly.
281
282 Sep 19, 2013: libphonenumber-5.8.2
283 * Code changes:
284   - New method in the PhoneNumberUtil API - getCountryMobileToken.
285
286 Sep 19, 2013: libphonenumber-5.8.1
287 * Metadata changes:
288  - New alternate formatting data for country calling code(s): 675
289  - Updated phone metadata for region code(s):
290    AO, AU, BF, BW, CA, CH, CI, CN, DE, FR, MA, MR, MU, NI, PG, SA, SE, US, VI
291  - New short number metadata for region code(s): IQ
292  - Updated short number metadata for region code(s):
293    AU, BR, DO, EG, FR, GH, ID, IL, JM, KE, KZ, LR, MW, NG, NI, SA, SE, SL, TZ, US, UZ
294  - New geocoding data for country calling code(s):
295    966 (ar, en), 1 (en)
296
297 Sep 2, 2013: libphonenumber-5.8
298 * Code changes:
299  - Renamed ShortNumberUtil to ShortNumberInfo -> the former class is now deprecated and will be
300    deleted in a later release. At the moment it just delegates to ShortNumberInfo.
301  - New methods in the ShortNumberInfo API - isCarrierSpecific, singleton interface,
302    isPossibleShortNumber, isValidShortNumber, getShortNumberCost. Note this is an experimental API
303    at the moment and subject to change.
304  - Bug fixes:
305     -- AsYouTypeFormatting: 3-digit numbers can be formatted as a group where appropriate
306     -- AsYouTypeFormatting: Countries with an optional national prefix were considered before to
307        have always entered it, resulting in bugs where numbers without the national prefix were
308        not properly formatted.
309     -- Numbers in Chile that overlap with emergency numbers are no longer marked as connecting to
310        them
311     -- Not requiring the NDC to be alone for countries where there is no national prefix in strict
312        grouping when extracting phone numbers
313 * Metadata changes:
314  - New alternate formatting data for country calling code(s):
315    30, 31, 385, 58, 62, 63, 971, 972
316  - Updated alternate formatting data for country calling code(s): 43, 44, 49
317  - Moved emergency phone number data to the ShortNumberMetadata.xml file
318  - Updated phone metadata for region code(s):
319    AT, EG, ML, NC, NL, SA
320  - New short number metadata for region code(s):
321    AR, CL, CO, ES, MX, NC
322  - Emergency metadata fixes for region code(s):
323    GA, JM, MH, VE
324
325 Aug 09, 2013: libphonenumber-5.7.2
326 * Metadata changes:
327  - New alternate formatting data for country calling code(s):
328    352, 359, 372, 373, 375, 595, 7, 855
329  - Updated phone metadata for region code(s):
330    AR, BF, BH, BR, BY, CH, CM, CN, GE, GW, HN, JM, KH, LT, LU, MU, NP, RO, SO
331  - New short number metadata for region code(s): BR
332  - Updated short number metadata for region code(s):
333    CH, FJ, GB, GG, IM, IT, JE, SH
334
335 Aug 8, 2013: libphonenumber-5.7.1
336 * Metadata/code changes:
337  - Change to the way the metadata is built; now only parts of the proto that are relevant will be
338    generated. This means short-code data won't be generated for the normal protos, and fixed-line
339    data won't be generated for short-number protos. This cuts the metadata binary size approximately
340    in half.
341
342 Jul 17, 2013: libphonenumber-5.7
343 * Code changes:
344  - Improve phone number extraction recall.
345  - Add support for loading short number metadata.
346
347 Jul 16, 2013: libphonenumber-5.6.2
348 * Metadata changes:
349  - Updated alternate formatting data for country calling code(s): 49, 61
350  - New metadata for region code(s): TA
351  - Updated metadata for region code(s):
352    BF, BH, BI, BJ, BR, CR, EH, GA, GE, GN, GU, IL, IN, IR, KH, KW, KZ, MA, MT,
353    NA, NE, NL, PH, RO, SH, SO, TK
354  - New geocoding data for country calling code(s): 47 (en), 82 (ar)
355  - Updated geocoding data for country calling code(s):
356    49 (en), 98 (en, fa), 241 (en)
357
358 Jul 12, 2013: libphonenumber-5.6.1
359 * Code changes:
360  - Rename all instances of PhoneNumberMetadata to PhoneNumberMetadata for consistency.
361
362 Jun 05, 2013: libphonenumber-5.6
363 * Code changes:
364  - Fix for as-you-type-formatting bug affecting countries with no national prefix
365    formatting rule, such as China.
366 * Metadata changes:
367  - New alternate formatting data for country calling code(s): 351
368  - Updated alternate formatting data for country calling code(s): 49
369  - Updated metadata for region code(s):
370    AS, BG, BH, BJ, BL, CD, CI, DE, DZ, EH, FJ, GF, GP, IN, KH, KZ, MA, MD, MF,
371    ML, MY, NG, PT, PY, TC, TJ, TT
372
373 May 08, 2013: libphonenumber-5.5
374 * Code changes:
375  - Changed internal initialization code and made more fields final.
376    Note that we now throw an exception if an attempt is made to set the
377    metadata more than once (which should only happen during testing).
378  - Fix problem with formatNumberForMobileDialing for HU and CL.
379 * Metadata changes:
380  - Updated alternate formatting data for country calling code(s): 49
381  - Updated metadata for region code(s):
382    AM, BF, BR, CR, DE, MA, MG, MM, SA, TL, UA
383  - Updated geocoding data for country calling code(s): 374 (am, en, ru)
384
385 Apr 19, 2013: libphonenumber-5.4.2
386 * Metadata changes:
387  - Updated metadata for region code(s): BF, GA, IN, KR, MV, PH, SO, UA, US
388
389 Mar 25, 2013: libphonenumber-5.4.1
390 * Metadata changes:
391  - Updated metadata for region code(s): BF, BH, CR, EC, IR, MG, PF, TD, TN
392  - New geocoding data for country calling code(s): 374 (am, ru)
393  - Updated geocoding data for country calling code(s):
394    98 (en, fa), 358 (en, se), 374 (en)
395
396 Mar 07, 2013: libphonenumber-5.4
397 * Code changes:
398  - Switch formatNumberForMobileDialing to prefer national format to international format when the
399    number is dialed from the same region the phone number is from.
400
401 * Metadata changes:
402  - Updated metadata for region code(s):
403    BF, CD, CN, CZ, GN, IR, JP, KR, KW, LR, NZ, TT, UG, ZW
404  - New geocoding data for country calling code(s): 82 (cs)
405  - Updated geocoding data for country calling code(s):
406    82 (en, fr, ko, zh, zh_Hant), 98 (en, fa), 263 (en)
407
408 Feb 11, 2013: libphonenumber-5.3.2
409 * Metadata changes:
410  - Updated metadata for region code(s):
411    BD, BE, BY, CA, EH, GR, IE, IN, IS, LI, MA, MU, PT, SE, SG, TL
412  - New geocoding data for country calling code(s):
413    375 (be, en, ru), 1 (en)
414
415 Jan 25, 2013: libphonenumber-5.3.1
416 * Metadata changes:
417  - Updated metadata for region code(s): CN, DK, EH, GN, KH, KW, MA, MY, PA
418
419 Jan 08, 2013: libphonenumber-5.3
420 * Code changes:
421  - Handling UAN numbers in Argentina better when dialling them locally from a
422    mobile
423 * Metadata changes:
424  - Updated metadata for region code(s):
425    BE, BW, CL, CN, CO, EH, KW, MA, ML, NG, PL, SY, ZA, ZM
426  - New geocoding data for country calling code(s): 32 (en, fr, nl)
427  - Updated geocoding data for country calling code(s): 27 (en), 86 (en, zh)
428
429 Dec 06, 2012: libphonenumber-5.2.2
430 * Metadata changes:
431  - New metadata for region code(s): EH
432  - Updated metadata for region code(s): BR, CL, CR, IN, MA, PG, PK, RO
433  - New geocoding data for country calling code(s): 241 (en)
434
435 Nov 26, 2012: libphonenumber-5.2.1
436 * Metadata changes:
437  - Updated metadata for region code(s):
438    AE, AW, BF, CN, DE, JO, KE, KH, LT, MM, MU, NG, RW, SR, TR, VU
439  - New geocoding data for country calling code(s): 359 (bg, en)
440
441 Oct 10, 2012: libphonenumber-5.2
442 * Code changes:
443  - Adds isNumberGeographical() method.
444  - Adds getRegionCodesForCountryCode() method.
445  - Fixing issue with getSupportedGlobalNetworkCallingCodes()
446    [https://github.com/googlei18n/libphonenumber/issues/202]
447  - Ensures that returned collections are unmodifiable where necessary
448    [there is a very slight risk that this may break existing users who were relying on being able
449    to modify these collections, but doing so would be breaking lots of other assumptions that this
450    library makes - if you need to modify any affected collections you must copy them first]
451 * Metadata changes:
452  - Updated metadata for region code(s): DE, GR, HR, OM, SB, ZA
453  - Removed metadata for region code: AN (Netherlands Antilles)
454  - Updated geocoding data for country calling code(s): 30 (el, en)
455
456 Sep 27, 2012: libphonenumber-5.1.4
457 * Metadata changes:
458  - Updated metadata for region code(s): AU, EC, KH, LB, TN, US
459
460 Sep 17, 2012: libphonenumber-5.1.3
461 * Metadata changes:
462  - Updated metadata for region code(s): EG, LA, LB, LI, PY
463  - Updated metadata for non-geographical calling codes: 800, 808, 888, 979
464  - Updated geocoding data for country calling code(s): 98 (en), 1 (en)
465
466 Sep 11, 2010: libphonenumber-5.1.2
467 * Bug fix:
468  - Fixing regression in AsYouTypeFormatter where it no longer worked for numbers entered in national
469    format for countries with no national prefix, e.g. Spain.
470
471 Sep 5, 2010: libphonenumber-5.1.1
472 * Code changes:
473   - Added better logging/exception handling for catching cases where metadata is invalid/missing.
474
475 Sep 3, 2012: libphonenumber-5.1
476 * Code changes:
477  - Inserting a space after the national prefix in the AsYouTypeFormatter when formatting numbers in
478    national format, if the formatting rules for that country dictate that a space is appropriate.
479  - Format emergency numbers and short-codes as a block in the AsYouTypeFormatter.
480 * Metadata changes:
481  - Updated metadata for region code(s): BF, BG, DZ, GA, IT, JP, KW, PF
482
483 Aug 20, 2012: libphonenumber-5.0.3
484 * Metadata changes:
485  - New alternate formatting data for country calling code(s): 43
486  - Updated metadata for region code(s): AT, BF, JO, NG, RU, SL
487  - New geocoding data for country calling code(s): 62 (en, id), 98 (fa)
488
489 Aug 07, 2012: libphonenumber-5.0.2
490 * Metadata changes:
491  - Updated metadata for region code(s):
492    BF, CN, DJ, IL, JO, KH, KZ, MA, MT, MV, MY, NC, NG, SD, SK, SN, TL, UZ
493  - New geocoding data for country calling code(s): 7 (ru), 98 (en)
494  - Updated geocoding data for country calling code(s): 7 (en)
495
496 July 26th, 2012: libphonenumber-5.0.1
497 * Metadata changes
498  - CL, DE ,IN, KR, US
499  - New geocoding data for country calling codes 40, 57, 66, 82, 91.
500  - Fixed comments for 353 (IE).
501
502 July 12th, 2012: libphonenumber-5.0
503 * Code changes:
504  - Support for alternate formats when finding phone numbers.
505  - Allowing two-digit numbers to be parsed if they are entered in national-format with no
506    punctuation
507 * Metadata changes
508  - IL, GA
509 * Other
510  - Reflowed this file to 100 char width to make it unambiguous as to what the standard should be.
511
512 July 6th, 2012: libphonenumber-4.9.1
513 * Metadata changes
514  - AR, BA, BF, CR, DE, EC, ES, KZ, MK, NC, NG, PF, SB, UZ, non-geo entity 882
515  - Geocoding data updates for country calling codes 54 (AR) and 81 (JP), new data for 234 (NG)
516
517 June 21st, 2012: libphonenumber-4.9
518 * Bug fix
519  - formatInOriginalFormat fixed not to add a star sign if it was not present originally.
520 * Metadata changes
521  - BF, CZ, ES, KW
522  - Non-geographical entities with calling code 882 (BebbiCell, Maritime Communications, Oration
523    Technologies, Telespazio and Thuraya)
524  - Geocoding data updates for country calling codes 221, 224, 226, 242, 244, 245
525 * Functionality changes:
526  - Minimum allowed length for a national significant number (NSN) when parsing changed from 3 to 2.
527  - Support parsing of RFC3966-formatted strings with an isdn-subaddress or extra parameters
528    specified.
529  - Allow soft hyphen to appear in phone numbers (\u00AD)
530 * Testing changes:
531  - Add extra unit tests for non-geographical phone number entities
532  - ExampleNumbersTest testEmergency tests now uses ShortNumberUtil
533
534 June 14th, 2012: libphonenumber-4.8.5
535 * Metadata update only:
536  - AC, CR, DE, DK, IL, IN, IS, KH, LI, LR, MA, MD, MK, PA, SA, SG, SS
537
538 June 6th, 2012: libphonenumber-4.8.4
539 * Metadata update only:
540  - AE, RO
541  - Non-geographical entity with calling code 881 (Iridium)
542
543 May 30th, 2012: libphonenumber-4.8.3
544 * Metadata update only:
545  - AN, ET, KW, MN, SX, TC, TL
546
547 May 16th, 2012: libphonenumber-4.8.2
548 * Metadata update only:
549  - BH, CR, EE, JO, KW, LA, QA, SI, TH
550  - Non-geographical entity with calling code 878 (VISIONng)
551
552 May 8th, 2012: libphonenumber-4.8.1
553 * Metadata update only:
554  - CA, CI, EG, HK, IN, IR, LB, MA, ME, MM
555  - Non-geographical entity with calling code 870 (Inmarsat)
556  - Geocoding updates for country calling codes 1 for new area codes
557
558 April 24th, 2012: libphonenumber-4.8
559 * Functionality changes
560  - RFC format now outputs a number starting with "tel:"
561  - Parsing support for numbers in RFC format that contain the country info in the "phone-context"
562    part
563  - Support for obtaining area codes for Italy, Vatican City, San Marino
564 * Metadata changes
565  - AM, AO, AR, BE, BF, CD, EG, GH, GM, GN, IN, IR, IT, JO, LA, LC, MD, MS, NO, PA, PK, SI, SJ, SO,
566    SY, TC, TN, UZ, VN, ZW
567  - Geocoding updates for country calling codes 1, 20, 233, 31, 33, 352, 374, 54, 56, 86
568 * Refactoring of matching functions, including moving them to PhoneNumberMatcher.
569
570 March 16th, 2012: libphonenumber-4.7
571 * Bug fixes
572  - Now return "too long" for input that is longer than 250 chars when parsing
573 * Metadata changes
574  - AC,AM,AT,AZ,BF,BR,BY,BZ,CR,CU,DE,DJ,EE,EG,ET,GA,GH,HK,HN,ID,IN,JP,KE,KG,KH,KR,KW,KY,LB,LU,MA,MD,
575    MK,NA,NE,NZ,SA,SB,SC,SE,SL,SN,UZ
576 * Refactoring of test classes so that tests requiring the test metadata to be loaded have a common
577   base class which handles this.
578
579 February 9th, 2012: libphonenumber-4.6
580 * Bug fixes
581  - Fix for formatByPattern to enable RFC formatting to work
582  - Fix for RFC formatting to work even when the international formatting rule starts with
583    punctuation
584  - Logging consistency changes - some warnings are no longer printed, others have become only
585    WARNINGS
586  - Fix for isValidNumberForRegion potentially throwing a NPE
587  - Parsing Israeli * numbers written in international format now works
588  - PhoneNumberMatcher doesn't match timestamps as phone-numbers
589 * Metadata changes
590  - Updates for AN, AX, BF, BJ, BR, BS, DJ, FI, IN, LV, MW, RS, SC, VN
591  - New countries supported: SS (South Sudan), CW (Curaçao) and BQ (Bonaire, Sint Eustatius and Saba)
592 * Refactoring of the private formatting functions in PhoneNumberUtil to ensure names are more
593   descriptive and to reduce code duplication.
594
595 January 19th, 2012: libphonenumber-4.5
596 * Code changes
597  - Support for non-geographical country calling codes (e.g. +800).
598  - Modify formatInOriginalFormat to not insert/remove/modify digits in the original number passed
599    in.
600  - Fix formatOutOfCountryKeepingAlphaChars to not throw a NPE.
601
602 * Metadata changes
603  - Updates for AR, BH, CI, CN, CR, DE, GA, IL, JO, JP, KE, KZ, LB, LK, LT, MV, MW, MZ, NA, NL, NZ,
604    PL, RO, SA, SV, TM, UG, US
605  - New country calling codes: 800, 808, 883, 888, 979
606  - Geocoding data updates: AR, US
607
608 December 9th, 2011: libphonenumber-4.4
609 * Code changes
610  - Support for Voicemail numbers
611  - Support prefixes "xt" and "xtn" to indicate extensions of phone numbers
612  - Change formatInOriginalFormat to use raw_input for numbers with incorrect leading zeroes, instead
613    of all invalid numbers.
614
615 * Metadata changes
616  - Updates for AR, BD, CH, CI, IL, IR, IS, IT, JP, KW, LR, MM, NG, SA, SC, UZ
617
618 November 24th, 2011: libphonenumber-4.3
619 * Code changes
620  - Fix the problems with AYTF crashing for longer numbers entered with +CountryCode, and incorrectly
621    removing national prefix for some numbers.
622  - Improve PhoneNumberMatcher to not match numbers ending with '%'.
623  - Fix formatNumberForMobileDialing to handle Israeli star numbers, Peruvian and Colombian numbers.
624  - Modify formatInOriginalFormat to use the raw input if we don't have a formatting pattern for a
625    number.
626  - Simple offline geocoding function which takes into account the user's region.
627
628 * Metadata changes
629  - Updates for CR, GN, JP, KE, PL, SG, SR, SX, TH, TK
630
631 November 10th, 2011: libphonenumber-4.2
632 * Code changes
633  - Providing an "exact match" isEmergencyNumber method
634  - Improvement to PhoneNumberMatcher: requires national prefix to be present when matching
635    national-format numbers, unless matching for a region where it is explicitly marked in the
636    metadata that they may be omitted. Applies to leniency level VALID and higher.
637  - Change formatNumberForMobileDialing not to modify the phoneNumber passed in.
638
639 * Metadata changes
640  - Emergency numbers added for all remaining countries
641  - Collected data on which numbers we format with a national prefix are commonly written without one
642    and added this
643  - Updates for AR, AT, BH, CZ, GR, IR, KM, LT, MX, PT, SE, SO, UG
644  - Addition of SX (Sint Maarten)
645
646 October 19th, 2011: libphonenumber-4.1
647 * Code changes
648  - Update code and metadata for countries with IDD "8~10" to accept phone numbers where the "~" is
649    omitted.
650  - Modify formatInOriginalFormat to use raw_input (when present) when the number is considered as
651    invalid by the library.
652  - Add ShortNumberUtil to deal with international short phone numbers, such as short codes and
653    emergency numbers.
654  - Increase the maximum phone-number length accepted when parsing (now set to
655    16).
656
657 * Metadata changes
658  - Updates: BF, BN, CN, DE, DK, DO, FR, IN, KI, KW, MC, MD, ML, PA, QA, SB, UK, WS
659  - Emergency number information also added to: AE, AF, AL, AM, AR, AT, AU, BA,
660    BB, BD, BE, BG, BH, BO, BR, BY, CA, CH, CL, CN, CO, CR, CY, CZ, DE, DJ, DK,
661    DO, DZ, EC, EE, EG, ES, FI, FJ, FO, FR, GB, GE, GF, GH, GI, GL, GR, GT, GY,
662    HK, HN, HR, HU, ID, IE, IL, IN, IR, IS, IT, JM, JO, JP, KR, KW, KY, KZ, LB,
663    LK, LT, LU, LV, MA, MC, MD, ME, MK, ML, MM, MN, MO, MT, MU, MV, MX, MY, NG,
664    NI, NL, NO, NP, OM, PA, PE, PH, PK, PL, PM, PT, PY, QA, RO, RS, RU, RW, SA,
665    SB, SD, SE, SG, SI, SK, SL, SM, SR, SV, SY, TD, TH, TJ, TM, TN, TR, TT, TW,
666    UA, UG, US, UY, UZ, VA, VE, VN, VU, ZA, ZM, ZW
667
668 October 6th, 2011: libphonenumber-4.0
669 * Code changes
670  - New function formatNumberForMobileDialing, which attempts to format a number in such a way that
671    the call can be connected from a mobile phone. If this is impossible, for example for numbers
672    that cannot be internationally dialled, then an empty string is returned.
673  - Fallback functionality to English for non-CJK languages for geocoding
674
675 * Metadata changes
676  - Collecting data for emergency numbers
677  - Updates: AR, AU, BR, CN, CZ, EG, GD, IE, IL, JM, KW, KH, SD, SO, TR, UG, UZ
678  - Geocoding data changes: AO, AR, AT, BJ, BR, CD, CG, CI, CL, CN, CV, DE, ES,
679    FR, GR, GW, HU, KM, MR, MZ, NL, PL, PT, SE, ST, SZ
680
681 September 13th, 2011: libphonenumber-3.9
682 * Code changes
683  - Enable AsYouTypeFormatter to handle long IDD and NDD.
684  - Allow the presence of an IDD following a +.
685  - Fix formatting of phone numbers which contain only 0s in the national number.
686  - Refactored some code in geocoding including AreaCodeMap and the storage strategies.
687
688 * Metadata changes
689  - Updates: AM, BE, BH, BJ, BR, BT, BZ, CI, CL, CN, DE, DK, DM, DZ, EC, EG, FJ,
690    GR, HR, HT, IN, IQ, IS, JM, KE, KG, KH, KR, LA, LB, LR, MA, MD, ML, MO, MX,
691    MY, NE, NG, PG, PH, PK, PY, QA, SA, SD, SG, SN, TD, TG, TH, TN, TT, UG, YE,
692    ZA, ZM
693  - New geocoding data for: AC, CG, CU, CV, EG, ET, FI, FI, FI, GL, JP, KM, MA,
694    MA, MU, MU, MU, MZ, RS, SH, SH, SL, SO, ST, TG, TG, TG, UG, ZM
695  - Updated geocoding data for: AR, DE
696
697 August 11th, 2011: libphonenumber-3.8
698 * Code changes
699  - Fix to demo to not throw null-ptr exceptions for invalid NANPA numbers
700  - Fixed AYTF to not accept plus signs in the middle of input
701  - PhoneNumberMatcher improvements - added STRICT_GROUPING and EXACT_GROUPING levels, numbers
702    followed/preceded by a currency symbol will not match, multiple numbers separated by phone-number
703    punctuation will now match. ", " is no longer accepted as an extension symbol when matching, only
704    when parsing. "x" is only accepted as a carrier code or extension marker, not otherwise.
705  - Changes to handling of leading zeroes - these will not be silently ignored anymore, but will be
706    stored as part of the number.
707  - PhoneNumberOfflineGeocoder - new method to get the description of a number that assumes the
708    validity of the number has already been checked and will not re-verify it.
709  - Split geocoding US binary data into multiple files.
710
711 * Metadata changes
712  - Updates: AR, AT, AU, AZ, BE, BF, BH, BY, CA, CN, CO, CR, HT, HU, IT, KG, KH,
713    LB, LI, ME, NC, RS, SE, TT, US, VG, ZA
714  - New geocoding data for: AL, AM, AO, BF, BJ, BW, CD, CI, CZ, DZ, EE, GH, GM,
715    GN, GR, GW, HU, IS, KE, LK, LS, LT, LU, LV, MD, MG, MR, NA, PE, QN, SD, SK,
716    SN, SZ, TN, VE, VN, ZA, ZW
717  - Updated geocoding data for: GB, PT, US
718  - Revised sorting of geocoding data
719
720 July 5th, 2011
721 * Code changes
722  - Refactored AreaCodeMap to minimize binary and memory footprint by using 2 different strategies.
723  - Refactored BuildMetadataFromXml.java and added unittests.
724
725 * Metadata changes
726  - Regenerate binaries for all existing area code mapping data with smaller sizes.
727  - Added city-level area code data mapping for US and Canada.
728
729 June 29th, 2011
730 * Code changes
731  - Fixed issue 38, issue 39, issue 41 and issue 43
732
733 * Metadata changes
734  - Added phone number area mapping files for
735    - JP in Japanese
736    - FR in French
737    - TW in English, Simplified and Traditional Chinese
738    - RU in English
739    - IT in English and Italian
740    - PT in Portuguese
741    - TR in English and Turkish
742    - CH in English, German, French and Italian
743  - Updates: CR, GE, IT, JP, KW, MH, MP, MU, PE, PM, RW, TG, TJ, TK
744
745 June 14th, 2011
746 * Code changes
747  - Added PhoneNumberOfflineGeocoder, supporting classes and their unittests.
748  - Added GenerateAreaCodeData to transform phone number area mapping files from text files to binary
749    files.
750  - Modified PhoneNumberParserServlet.java and phonenumberparser.jsp to incorporate
751    PhoneNumberOfflineGeocoding in the appengine demo.
752
753 * Metadata changes
754  - Added phone number area mapping files for NANPA countries and GB in English, NL in Dutch, AR, CL
755    and ES in Spanish, AT and DE in German, SE in Swedish, BR in Portuguese, KR in English, Korean,
756    Simplified and Traditional Chinese, and CN in Simplified Chinese.
757
758 June 10th, 2011
759 * Code changes:
760  - Fixes for PhoneNumberMatcher to be more restrictive in valid mode and not match numbers
761    surrounded by Latin characters. This ensures, for example, the string abc123456789acg will not be
762    marked as a phone numbers.
763  - Enable PhoneNumberUtil to handle all digits, rather than a subset
764  - Fix for AYTF issue36 and improvement for US AYTF behaviour.
765 * Metadata changes:
766  - Updates: BG, EG, ES, GH, PF, SC, SY, VA
767
768 May 24th, 2011
769 * Code changes:
770  - Phonenumber now implements Serializable.
771  - findNumbers doesn't accept numbers with mis-matched brackets as phone-numbers
772  - An offline phone number geocoder has been added. The current implementation just returns the
773    region name for the phone number; more detailed geocoding will be added later.
774 * Metadata changes:
775  - New countries: GF, KP, NC, PA, PF, PW, PY, SB, SR, TO, UY, VU
776  - Updates: CY, CZ, ES, GB, GQ, JM, MQ, TN, VI
777
778 May 9th, 2011
779 * Code changes:
780  - Fixed potential for a null-ptr exception in getExampleNumber
781  - Potential speed improvement with replacement of StringBuffer with StringBuilder
782 * Metadata changes
783  - Changed way that international formats are specified to make it easier to do so
784  - New countries: AX, CC, CX, WF
785  - Updates: AM, AR, AU, AW, CN, CO, CR, DM, EC, ET, FI, FJ, GH, IN, JP, KE, KM,
786    KN, LR, MD, MQ, MX, NP, PH, SC, SE, SM, SN, SY, UG, US, VC, VI, ZM
787
788 Apr 26th, 2011
789 * Code changes:
790  - Improved PhoneNumberMatcher for cases with other numbers before or after the phone number.
791  - Improved AsYouTypeFormatter not to use formatting rules containing non-formatting characters
792    (e.g. '*' in Israeli star numbers).
793 * Metadata changes:
794  - New countries: FJ, FM, GY, NF, NI, NR, TV.
795  - Updates: AM, AZ, BF, BW, BZ, CI, CR, GB, GP, HK, JM, KH, LB, LY, MV, PE, PK, SZ, TJ, US.
796 * Minor documentation updates
797
798 Apr 11th, 2011
799 * Bug fixes:
800  - Adding date exclusion pattern in PhoneNumberMatcher.
801  - Fixing bug with selecting a suitable region for numbers with leading zeros where mutiple regions
802    for that country code are possible.
803 * Metadata changes:
804  - Updates: AG, AI, AS, BB, BM, BS, CA, DM, DO, ET, FO, GD, GE, GU, IN, JM, KN, KY, LC, MN, MP, MR,
805    MS, NO, PR, TC, TR, TT, US, VC, VG, VI
806  - New countries: CK, FK, GT, IO, KI, SJ, SV
807 * Documentation updates and some small refactoring to AsYouTypeFormatter
808
809 Mar 31st, 2011
810 * New functionality:
811  - Can parse and format numbers in RFC-3966 format.
812  - Added isAlphaNumber to check to see if a number is a "vanity" or "alpha" number
813  - Can format a number made up of alpha-characters in an "out-of-country" format (e.g. 0011 1
814    800-SIX-FLAG to dial an American alpha-number from Australia).
815 * Code changes:
816  - Renamed private vars, private methods and fixed comments to try and differentiate between country
817    (calling) codes and region codes.
818  == Non-backwards-compatible API changes: ==
819  - Renamed getSupportedCountries to getSupportedRegions, as this more accurately reflects that the
820    library is based around region codes.
821  - getNationalSignificantNumber is no longer a static method, but is instead an instance method.
822 * Metadata changes:
823  - Bug-fixes and updates for AU, AZ, EE, FI, IN, JO, KW, KZ, MV, RU, RR, VA
824  - New country: ME
825
826 Mar 22nd, 2011
827 * Metadata changes:
828  - New mobile-number pattern for AU
829
830 Mar 10th, 2011
831 * New functionality:
832  - New function to format a number with the preferred domestic carrier code used when parsing,
833    falling back to a default calling code otherwise (formatNationalNumberWithPreferredCarrierCode).
834  - We now store the preferred domestic carrier code used when the user calls parseAndKeepRawInput
835  - New functionality to extract phone-numbers from text (findNumbers). This is just the first
836    version - it does not extract ALPHA numbers such as 0800 CALL ME, or numbers where alternate
837    endings are specified (such as 03-331 6005/6006).
838 * Code changes:
839  - Tidying up the test file to use several pre-defined phone number constants
840  - Fixing several lint errors
841  - Added javadoc to formatNationalNumberWithCarrierCode
842  - Fixed bug where a null pointer exception was thrown when getAsYouTypeFormatter was called with an
843    invalid region code
844  - Improved AsYouTypeFormatter to deal with countries with variable-length patterns such as LU
845 * Metadata changes:
846  - Bug-fixes and updates for the following countries: BF, BO, BR, CL, CO, CR, DK, FO, GE, KR, KW,
847    LA, LU, MU, SC, SH, TR, VE
848  - New country: SH
849
850 Mar 10th, 2011
851 * Code changes:
852   - releasing the code to run the demo on localhost or appengine.
853
854 Mar 7th, 2011
855 * Metadata changes:
856  - Adding support for AC
857
858 Feb 11th, 2011
859 * Metadata changes:
860  - Update UAN number ranges for IM and JE.
861
862 Feb 9th, 2011
863 * Code changes:
864   - Better isNumberMatch method. This will now recognise numbers starting with a national prefix as
865     an NSN_MATCH, instead of SHORT_NSN_MATCH.
866     == Note Non-backwards-compatible API change here! ==
867       This will no longer throw a NumberParseException - instead we will return NOT_A_NUMBER if one
868       or other of the numbers provided do not match.
869   - New number-type UAN now supported in the code. This represents Company Numbers or Universally
870     Accessible Numbers.
871 * Metadata changes:
872   - Bug-fixes and updates for the following countries: AG, AZ, BA, BE, CA, CU, ES, FI, GB, GD, GG,
873     IE, IL, IM, IN, IR, IT, JE, JP, KR, KW, NG, NZ, PK, PS, PT, RU, SE, SG, SY, US
874   - New countries: CO, LU, LY, MC, SM
875   - Addition of "Personal Number" ranges to all NANPA countries
876
877 Jan 31st, 2011
878 * Code changes:
879   - Introducing equals() and hashCode() methods for the Phonenumber.PhoneNumber class
880
881 Jan 28th, 2011
882 * Code changes:
883   - Fixing critical bug with non-Android-compatible code. isEmpty() was being used and CANON_EQ in
884     reg-ex matches.
885
886 Jan 20th, 2011
887 * Code improvements:
888   - Handle null phone-numbers when parsing by throwing a NumberParseException.
889   - Handle extension written with an accented "o", as per Spanish, when parsing.
890   - Handle U+30FC dashes as phone-number punctuation.
891   - Allow "ZZ" or null regions to be specified for numbers starting with a full-width "+" symbol, or
892     with other characters (such as whitespace) before the leading +.
893   - new getLengthOfNationalDestinationCode function
894 * Metadata changes:
895   - New types of numbers introduced: UAN (universal or "company" numbers) and short codes. Note that
896     "generalDesc" patterns do not encompass short-codes.  No code-support for these has been
897     introduced as of yet. We are also now enabling the collection of data for information such as
898     area-code-optional, and no-international-dialling ranges.
899   - Data updates as per ITU notifications/bug fixes for the following countries: AM, BH, CD, CG, CR,
900     DE, DJ, EE, GB, GN, HU, IE, JO, JP, LB, LR, MA, MK, MN, MR, NA, PG, SC, SG, SO, SZ, VN, ZA, ZW
901   - Data added for the following countries: BZ, CU, EC, FO, GI, HN, HT, LK, MT, MV, NU, PS, SD
902   - Indentation fixes in reg-exes for the following countries: BG, GB
903   - Allow nationalPrefixForParsing to be specified for countries with no national prefix, to handle
904     possible carrier prefixes
905
906 Jan 3rd, 2011
907 * Metadata changes:
908   - Updates to JE
909   - Updated comments for GB/GG/IM/JE
910
911 November 25th, 2010
912 * Metadata changes:
913   - Updates to existing countries: AD, AG, AI, AN, AS, BB, BG, BM, BS, BW, CA, DM, DO, GD, GH, GM,
914     GU, IN, JM, KN, KY, KZ, LB, LC, MP, MS, PR, SY, TC, TT, TZ, US, VC, VG, VI.
915   - Reorganize reg-exes for better readability.
916   - Updated comments.
917
918 October 22nd, 2010
919 * Metadata changes:
920   - Updates to existing countries: AE, GB, GG, IM, JE
921
922 October 15th, 2010
923 * Code improvements:
924   - Allowed parsing of numbers that start with "++" or a full-width "+" symbol
925   - Allowed reg-exes for national and possible number patterns to have white space in them in the
926     source XML file
927   - Added a more useful toString method for the phone number proto class
928 * Metadata changes:
929   - Updates to existing countries: AF, BF, BO, ES, GB, GG, IM, IS, JE, JE, JP, KR, PE, PT, RU, SE,
930     TT, ZW
931 * Bug fixes:
932   - Parsing empty strings with invalid region codes no longer throws a null pointer exception
933
934 September 4th, 2010
935 * Code improvement:
936   - Added new phone number type: pager
937 * Metadata change:
938   - update to existing country: GG, IM, JE, RS, RU
939 * Bug fixes:
940   - ArrayOutOfBoundException in AsYouTypeFormatter.getRememberedPosition()
941   - AsYouTypeFormatter for UK childline number
942
943 September 1st, 2010
944 * Bug fix on KZ metadata.
945
946 August 17th, 2010
947 * Code improvement:
948   - Refactored BuildMetadataProtoFromXml.java into BuildMetadataFromXml.java and
949     BuildMetadataProtoFromXml.java
950   - Added BuildMetadataProtoFromXml.java and JSArrayBuilder.java
951   - Refactored CountryCodeToRegionCodeMap and CountryCodeToRegionCodeMapForTesting into separate
952     files.
953
954 August 16th, 2010
955 * Bug fixes
956   - AsYouTypeFormatter for formatting Chinese geographical numbers entered in national format.
957   - AsYouTypeFormatter for formatting Chinese 400/800 numbers entered in national format.
958 * Metadata change:
959   - new countries: AM, AN, BH, GL, IS
960   - adding national prefix 1 to all NANPA countries.
961   - update to existing countries: BF, FR, UK, PK, RE
962
963 August 4th, 2010
964 * Further improve startup performance
965   - Preload no country specific metadata at startup.
966   - Stop creating the file containing mapping from country calling code to region code and loading
967     it at startup; instead, do the initialization in PhoneNumberUtil.
968
969 July 31th, 2010
970
971 * Improve startup performance
972   - Separate generated metadata binary file to one file per region
973   - Preload US at start up, and load other region at the time when needed
974   - Create a file containing mapping from country calling code to region code, and load it at
975     startup
976   - Same change also applied to unittests
977
978 July 30th, 2010
979 * Metadata change:
980   - new country: TL
981   - update to existing country: AZ, CN, FR, GH, JO, LA, PG, PK, QA, SZ, UA, VN
982
983 * Code improvement
984   - China local number formatting for AsYouTypeFormatter
985   - improve extension parsing to handle number in the form of +1 (645) 123 1234 ext. 910#