ab720e898da79da444df0a2dd318bd65b4a9988b
[platform/upstream/libphonenumber.git] / java / release_notes.txt
1 Sep 5, 2010: libphonenumber-5.1.1
2 * Code changes:
3   - Added better logging/exception handling for catching cases where metadata is invalid/missing.
4
5 Sep 3, 2012: libphonenumber-5.1
6 * Code changes:
7  - Inserting a space after the national prefix in the AsYouTypeFormatter when formatting numbers in
8    national format, if the formatting rules for that country dictate that a space is appropriate.
9  - Format emergency numbers and short-codes as a block in the AsYouTypeFormatter.
10 * Metadata changes:
11  - Updated metadata for region code(s): BF, BG, DZ, GA, IT, JP, KW, PF
12
13 Aug 20, 2012: libphonenumber-5.0.3
14 * Metadata changes:
15  - New alternate formatting data for country calling code(s): 43
16  - Updated metadata for region code(s): AT, BF, JO, NG, RU, SL
17  - New geocoding data for country calling code(s): 62 (en, id), 98 (fa)
18
19 Aug 07, 2012: libphonenumber-5.0.2
20 * Metadata changes:
21  - Updated metadata for region code(s):
22    BF, CN, DJ, IL, JO, KH, KZ, MA, MT, MV, MY, NC, NG, SD, SK, SN, TL, UZ
23  - New geocoding data for country calling code(s): 7 (ru), 98 (en)
24  - Updated geocoding data for country calling code(s): 7 (en)
25
26 July 26th, 2012: libphonenumber-5.0.1
27 * Metadata changes
28  - CL, DE ,IN, KR, US
29  - New geocoding data for country calling codes 40, 57, 66, 82, 91.
30  - Fixed comments for 353 (IE).
31
32 July 12th, 2012: libphonenumber-5.0
33 * Code changes:
34  - Support for alternate formats when finding phone numbers.
35  - Allowing two-digit numbers to be parsed if they are entered in national-format with no
36    punctuation
37 * Metadata changes
38  - IL, GA
39 * Other
40  - Reflowed this file to 100 char width to make it unambiguous as to what the standard should be.
41
42 July 6th, 2012: libphonenumber-4.9.1
43 * Metadata changes
44  - AR, BA, BF, CR, DE, EC, ES, KZ, MK, NC, NG, PF, SB, UZ, non-geo entity 882
45  - Geocoding data updates for country calling codes 54 (AR) and 81 (JP), new data for 234 (NG)
46
47 June 21st, 2012: libphonenumber-4.9
48 * Bug fix
49  - formatInOriginalFormat fixed not to add a star sign if it was not present originally.
50 * Metadata changes
51  - BF, CZ, ES, KW
52  - Non-geographical entities with calling code 882 (BebbiCell, Maritime Communications, Oration
53    Technologies, Telespazio and Thuraya)
54  - Geocoding data updates for country calling codes 221, 224, 226, 242, 244, 245
55 * Functionality changes:
56  - Minimum allowed length for a national significant number (NSN) when parsing changed from 3 to 2.
57  - Support parsing of RFC3966-formatted strings with an isdn-subaddress or extra parameters
58    specified.
59  - Allow soft hyphen to appear in phone numbers (\u00AD)
60 * Testing changes:
61  - Add extra unit tests for non-geographical phone number entities
62  - ExampleNumbersTest testEmergency tests now uses ShortNumberUtil
63
64 June 14th, 2012: libphonenumber-4.8.5
65 * Metadata update only:
66  - AC, CR, DE, DK, IL, IN, IS, KH, LI, LR, MA, MD, MK, PA, SA, SG, SS
67
68 June 6th, 2012: libphonenumber-4.8.4
69 * Metadata update only:
70  - AE, RO
71  - Non-geographical entity with calling code 881 (Iridium)
72
73 May 30th, 2012: libphonenumber-4.8.3
74 * Metadata update only:
75  - AN, ET, KW, MN, SX, TC, TL
76
77 May 16th, 2012: libphonenumber-4.8.2
78 * Metadata update only:
79  - BH, CR, EE, JO, KW, LA, QA, SI, TH
80  - Non-geographical entity with calling code 878 (VISIONng)
81
82 May 8th, 2012: libphonenumber-4.8.1
83 * Metadata update only:
84  - CA, CI, EG, HK, IN, IR, LB, MA, ME, MM
85  - Non-geographical entity with calling code 870 (Inmarsat)
86  - Geocoding updates for country calling codes 1 for new area codes
87
88 April 24th, 2012: libphonenumber-4.8
89 * Functionality changes
90  - RFC format now outputs a number starting with "tel:"
91  - Parsing support for numbers in RFC format that contain the country info in the "phone-context"
92    part
93  - Support for obtaining area codes for Italy, Vatican City, San Marino
94 * Metadata changes
95  - AM, AO, AR, BE, BF, CD, EG, GH, GM, GN, IN, IR, IT, JO, LA, LC, MD, MS, NO, PA, PK, SI, SJ, SO,
96    SY, TC, TN, UZ, VN, ZW
97  - Geocoding updates for country calling codes 1, 20, 233, 31, 33, 352, 374, 54, 56, 86
98 * Refactoring of matching functions, including moving them to PhoneNumberMatcher.
99
100 March 16th, 2012: libphonenumber-4.7
101 * Bug fixes
102  - Now return "too long" for input that is longer than 250 chars when parsing
103 * Metadata changes
104  - 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,
105    MK,NA,NE,NZ,SA,SB,SC,SE,SL,SN,UZ
106 * Refactoring of test classes so that tests requiring the test metadata to be loaded have a common
107   base class which handles this.
108
109 February 9th, 2012: libphonenumber-4.6
110 * Bug fixes
111  - Fix for formatByPattern to enable RFC formatting to work
112  - Fix for RFC formatting to work even when the international formatting rule starts with
113    punctuation
114  - Logging consistency changes - some warnings are no longer printed, others have become only
115    WARNINGS
116  - Fix for isValidNumberForRegion potentially throwing a NPE
117  - Parsing Israeli * numbers written in international format now works
118  - PhoneNumberMatcher doesn't match timestamps as phone-numbers
119 * Metadata changes
120  - Updates for AN, AX, BF, BJ, BR, BS, DJ, FI, IN, LV, MW, RS, SC, VN
121  - New countries supported: SS (South Sudan), CW (CuraƧao) and BQ (Bonaire, Sint Eustatius and Saba)
122 * Refactoring of the private formatting functions in PhoneNumberUtil to ensure names are more
123   descriptive and to reduce code duplication.
124
125 January 19th, 2012: libphonenumber-4.5
126 * Code changes
127  - Support for non-geographical country calling codes (e.g. +800).
128  - Modify formatInOriginalFormat to not insert/remove/modify digits in the original number passed
129    in.
130  - Fix formatOutOfCountryKeepingAlphaChars to not throw a NPE.
131
132 * Metadata changes
133  - Updates for AR, BH, CI, CN, CR, DE, GA, IL, JO, JP, KE, KZ, LB, LK, LT, MV, MW, MZ, NA, NL, NZ,
134    PL, RO, SA, SV, TM, UG, US
135  - New country calling codes: 800, 808, 883, 888, 979
136  - Geocoding data updates: AR, US
137
138 December 9th, 2011: libphonenumber-4.4
139 * Code changes
140  - Support for Voicemail numbers
141  - Support prefixes "xt" and "xtn" to indicate extensions of phone numbers
142  - Change formatInOriginalFormat to use raw_input for numbers with incorrect leading zeroes, instead
143    of all invalid numbers.
144
145 * Metadata changes
146  - Updates for AR, BD, CH, CI, IL, IR, IS, IT, JP, KW, LR, MM, NG, SA, SC, UZ
147
148 November 24th, 2011: libphonenumber-4.3
149 * Code changes
150  - Fix the problems with AYTF crashing for longer numbers entered with +CountryCode, and incorrectly
151    removing national prefix for some numbers.
152  - Improve PhoneNumberMatcher to not match numbers ending with '%'.
153  - Fix formatNumberForMobileDialing to handle Israeli star numbers, Peruvian and Colombian numbers.
154  - Modify formatInOriginalFormat to use the raw input if we don't have a formatting pattern for a
155    number.
156  - Simple offline geocoding function which takes into account the user's region.
157
158 * Metadata changes
159  - Updates for CR, GN, JP, KE, PL, SG, SR, SX, TH, TK
160
161 November 10th, 2011: libphonenumber-4.2
162 * Code changes
163  - Providing an "exact match" isEmergencyNumber method
164  - Improvement to PhoneNumberMatcher: requires national prefix to be present when matching
165    national-format numbers, unless matching for a region where it is explicitly marked in the
166    metadata that they may be omitted. Applies to leniency level VALID and higher.
167  - Change formatNumberForMobileDialing not to modify the phoneNumber passed in.
168
169 * Metadata changes
170  - Emergency numbers added for all remaining countries
171  - Collected data on which numbers we format with a national prefix are commonly written without one
172    and added this
173  - Updates for AR, AT, BH, CZ, GR, IR, KM, LT, MX, PT, SE, SO, UG
174  - Addition of SX (Sint Maarten)
175
176 October 19th, 2011: libphonenumber-4.1
177 * Code changes
178  - Update code and metadata for countries with IDD "8~10" to accept phone numbers where the "~" is
179    omitted.
180  - Modify formatInOriginalFormat to use raw_input (when present) when the number is considered as
181    invalid by the library.
182  - Add ShortNumberUtil to deal with international short phone numbers, such as short codes and
183    emergency numbers.
184  - Increase the maximum phone-number length accepted when parsing (now set to
185    16).
186
187 * Metadata changes
188  - Updates: BF, BN, CN, DE, DK, DO, FR, IN, KI, KW, MC, MD, ML, PA, QA, SB, UK, WS
189  - Emergency number information also added to: AE, AF, AL, AM, AR, AT, AU, BA,
190    BB, BD, BE, BG, BH, BO, BR, BY, CA, CH, CL, CN, CO, CR, CY, CZ, DE, DJ, DK,
191    DO, DZ, EC, EE, EG, ES, FI, FJ, FO, FR, GB, GE, GF, GH, GI, GL, GR, GT, GY,
192    HK, HN, HR, HU, ID, IE, IL, IN, IR, IS, IT, JM, JO, JP, KR, KW, KY, KZ, LB,
193    LK, LT, LU, LV, MA, MC, MD, ME, MK, ML, MM, MN, MO, MT, MU, MV, MX, MY, NG,
194    NI, NL, NO, NP, OM, PA, PE, PH, PK, PL, PM, PT, PY, QA, RO, RS, RU, RW, SA,
195    SB, SD, SE, SG, SI, SK, SL, SM, SR, SV, SY, TD, TH, TJ, TM, TN, TR, TT, TW,
196    UA, UG, US, UY, UZ, VA, VE, VN, VU, ZA, ZM, ZW
197
198 October 6th, 2011: libphonenumber-4.0
199 * Code changes
200  - New function formatNumberForMobileDialing, which attempts to format a number in such a way that
201    the call can be connected from a mobile phone. If this is impossible, for example for numbers
202    that cannot be internationally dialled, then an empty string is returned.
203  - Fallback functionality to English for non-CJK languages for geocoding
204
205 * Metadata changes
206  - Collecting data for emergency numbers
207  - Updates: AR, AU, BR, CN, CZ, EG, GD, IE, IL, JM, KW, KH, SD, SO, TR, UG, UZ
208  - Geocoding data changes: AO, AR, AT, BJ, BR, CD, CG, CI, CL, CN, CV, DE, ES,
209    FR, GR, GW, HU, KM, MR, MZ, NL, PL, PT, SE, ST, SZ
210
211 September 13th, 2011: libphonenumber-3.9
212 * Code changes
213  - Enable AsYouTypeFormatter to handle long IDD and NDD.
214  - Allow the presence of an IDD following a +.
215  - Fix formatting of phone numbers which contain only 0s in the national number.
216  - Refactored some code in geocoding including AreaCodeMap and the storage strategies.
217
218 * Metadata changes
219  - Updates: AM, BE, BH, BJ, BR, BT, BZ, CI, CL, CN, DE, DK, DM, DZ, EC, EG, FJ,
220    GR, HR, HT, IN, IQ, IS, JM, KE, KG, KH, KR, LA, LB, LR, MA, MD, ML, MO, MX,
221    MY, NE, NG, PG, PH, PK, PY, QA, SA, SD, SG, SN, TD, TG, TH, TN, TT, UG, YE,
222    ZA, ZM
223  - New geocoding data for: AC, CG, CU, CV, EG, ET, FI, FI, FI, GL, JP, KM, MA,
224    MA, MU, MU, MU, MZ, RS, SH, SH, SL, SO, ST, TG, TG, TG, UG, ZM
225  - Updated geocoding data for: AR, DE
226
227 August 11th, 2011: libphonenumber-3.8
228 * Code changes
229  - Fix to demo to not throw null-ptr exceptions for invalid NANPA numbers
230  - Fixed AYTF to not accept plus signs in the middle of input
231  - PhoneNumberMatcher improvements - added STRICT_GROUPING and EXACT_GROUPING levels, numbers
232    followed/preceded by a currency symbol will not match, multiple numbers separated by phone-number
233    punctuation will now match. ", " is no longer accepted as an extension symbol when matching, only
234    when parsing. "x" is only accepted as a carrier code or extension marker, not otherwise.
235  - Changes to handling of leading zeroes - these will not be silently ignored anymore, but will be
236    stored as part of the number.
237  - PhoneNumberOfflineGeocoder - new method to get the description of a number that assumes the
238    validity of the number has already been checked and will not re-verify it.
239  - Split geocoding US binary data into multiple files.
240
241 * Metadata changes
242  - Updates: AR, AT, AU, AZ, BE, BF, BH, BY, CA, CN, CO, CR, HT, HU, IT, KG, KH,
243    LB, LI, ME, NC, RS, SE, TT, US, VG, ZA
244  - New geocoding data for: AL, AM, AO, BF, BJ, BW, CD, CI, CZ, DZ, EE, GH, GM,
245    GN, GR, GW, HU, IS, KE, LK, LS, LT, LU, LV, MD, MG, MR, NA, PE, QN, SD, SK,
246    SN, SZ, TN, VE, VN, ZA, ZW
247  - Updated geocoding data for: GB, PT, US
248  - Revised sorting of geocoding data
249
250 July 5th, 2011
251 * Code changes
252  - Refactored AreaCodeMap to minimize binary and memory footprint by using 2 different strategies.
253  - Refactored BuildMetadataFromXml.java and added unittests.
254
255 * Metadata changes
256  - Regenerate binaries for all existing area code mapping data with smaller sizes.
257  - Added city-level area code data mapping for US and Canada.
258
259 June 29th, 2011
260 * Code changes
261  - Fixed issue 38, issue 39, issue 41 and issue 43
262
263 * Metadata changes
264  - Added phone number area mapping files for
265    - JP in Japanese
266    - FR in French
267    - TW in English, Simplified and Traditional Chinese
268    - RU in English
269    - IT in English and Italian
270    - PT in Portuguese
271    - TR in English and Turkish
272    - CH in English, German, French and Italian
273  - Updates: CR, GE, IT, JP, KW, MH, MP, MU, PE, PM, RW, TG, TJ, TK
274
275 June 14th, 2011
276 * Code changes
277  - Added PhoneNumberOfflineGeocoder, supporting classes and their unittests.
278  - Added GenerateAreaCodeData to transform phone number area mapping files from text files to binary
279    files.
280  - Modified PhoneNumberParserServlet.java and phonenumberparser.jsp to incorporate
281    PhoneNumberOfflineGeocoding in the appengine demo.
282
283 * Metadata changes
284  - Added phone number area mapping files for NANPA countries and GB in English, NL in Dutch, AR, CL
285    and ES in Spanish, AT and DE in German, SE in Swedish, BR in Portuguese, KR in English, Korean,
286    Simplified and Traditional Chinese, and CN in Simplified Chinese.
287
288 June 10th, 2011
289 * Code changes:
290  - Fixes for PhoneNumberMatcher to be more restrictive in valid mode and not match numbers
291    surrounded by Latin characters. This ensures, for example, the string abc123456789acg will not be
292    marked as a phone numbers.
293  - Enable PhoneNumberUtil to handle all digits, rather than a subset
294  - Fix for AYTF issue36 and improvement for US AYTF behaviour.
295 * Metadata changes:
296  - Updates: BG, EG, ES, GH, PF, SC, SY, VA
297
298 May 24th, 2011
299 * Code changes:
300  - Phonenumber now implements Serializable.
301  - findNumbers doesn't accept numbers with mis-matched brackets as phone-numbers
302  - An offline phone number geocoder has been added. The current implementation just returns the
303    region name for the phone number; more detailed geocoding will be added later.
304 * Metadata changes:
305  - New countries: GF, KP, NC, PA, PF, PW, PY, SB, SR, TO, UY, VU
306  - Updates: CY, CZ, ES, GB, GQ, JM, MQ, TN, VI
307
308 May 9th, 2011
309 * Code changes:
310  - Fixed potential for a null-ptr exception in getExampleNumber
311  - Potential speed improvement with replacement of StringBuffer with StringBuilder
312 * Metadata changes
313  - Changed way that international formats are specified to make it easier to do so
314  - New countries: AX, CC, CX, WF
315  - Updates: AM, AR, AU, AW, CN, CO, CR, DM, EC, ET, FI, FJ, GH, IN, JP, KE, KM,
316    KN, LR, MD, MQ, MX, NP, PH, SC, SE, SM, SN, SY, UG, US, VC, VI, ZM
317
318 Apr 26th, 2011
319 * Code changes:
320  - Improved PhoneNumberMatcher for cases with other numbers before or after the phone number.
321  - Improved AsYouTypeFormatter not to use formatting rules containing non-formatting characters
322    (e.g. '*' in Israeli star numbers).
323 * Metadata changes:
324  - New countries: FJ, FM, GY, NF, NI, NR, TV.
325  - Updates: AM, AZ, BF, BW, BZ, CI, CR, GB, GP, HK, JM, KH, LB, LY, MV, PE, PK, SZ, TJ, US.
326 * Minor documentation updates
327
328 Apr 11th, 2011
329 * Bug fixes:
330  - Adding date exclusion pattern in PhoneNumberMatcher.
331  - Fixing bug with selecting a suitable region for numbers with leading zeros where mutiple regions
332    for that country code are possible.
333 * Metadata changes:
334  - Updates: AG, AI, AS, BB, BM, BS, CA, DM, DO, ET, FO, GD, GE, GU, IN, JM, KN, KY, LC, MN, MP, MR,
335    MS, NO, PR, TC, TR, TT, US, VC, VG, VI
336  - New countries: CK, FK, GT, IO, KI, SJ, SV
337 * Documentation updates and some small refactoring to AsYouTypeFormatter
338
339 Mar 31st, 2011
340 * New functionality:
341  - Can parse and format numbers in RFC-3966 format.
342  - Added isAlphaNumber to check to see if a number is a "vanity" or "alpha" number
343  - Can format a number made up of alpha-characters in an "out-of-country" format (e.g. 0011 1
344    800-SIX-FLAG to dial an American alpha-number from Australia).
345 * Code changes:
346  - Renamed private vars, private methods and fixed comments to try and differentiate between country
347    (calling) codes and region codes.
348  == Non-backwards-compatible API changes: ==
349  - Renamed getSupportedCountries to getSupportedRegions, as this more accurately reflects that the
350    library is based around region codes.
351  - getNationalSignificantNumber is no longer a static method, but is instead an instance method.
352 * Metadata changes:
353  - Bug-fixes and updates for AU, AZ, EE, FI, IN, JO, KW, KZ, MV, RU, RR, VA
354  - New country: ME
355
356 Mar 22nd, 2011
357 * Metadata changes:
358  - New mobile-number pattern for AU
359
360 Mar 10th, 2011
361 * New functionality:
362  - New function to format a number with the preferred domestic carrier code used when parsing,
363    falling back to a default calling code otherwise (formatNationalNumberWithPreferredCarrierCode).
364  - We now store the preferred domestic carrier code used when the user calls parseAndKeepRawInput
365  - New functionality to extract phone-numbers from text (findNumbers). This is just the first
366    version - it does not extract ALPHA numbers such as 0800 CALL ME, or numbers where alternate
367    endings are specified (such as 03-331 6005/6006).
368 * Code changes:
369  - Tidying up the test file to use several pre-defined phone number constants
370  - Fixing several lint errors
371  - Added javadoc to formatNationalNumberWithCarrierCode
372  - Fixed bug where a null pointer exception was thrown when getAsYouTypeFormatter was called with an
373    invalid region code
374  - Improved AsYouTypeFormatter to deal with countries with variable-length patterns such as LU
375 * Metadata changes:
376  - Bug-fixes and updates for the following countries: BF, BO, BR, CL, CO, CR, DK, FO, GE, KR, KW,
377    LA, LU, MU, SC, SH, TR, VE
378  - New country: SH
379
380 Mar 10th, 2011
381 * Code changes:
382   - releasing the code to run the demo on localhost or appengine.
383
384 Mar 7th, 2011
385 * Metadata changes:
386  - Adding support for AC
387
388 Feb 11th, 2011
389 * Metadata changes:
390  - Update UAN number ranges for IM and JE.
391
392 Feb 9th, 2011
393 * Code changes:
394   - Better isNumberMatch method. This will now recognise numbers starting with a national prefix as
395     an NSN_MATCH, instead of SHORT_NSN_MATCH.
396     == Note Non-backwards-compatible API change here! ==
397       This will no longer throw a NumberParseException - instead we will return NOT_A_NUMBER if one
398       or other of the numbers provided do not match.
399   - New number-type UAN now supported in the code. This represents Company Numbers or Universally
400     Accessible Numbers.
401 * Metadata changes:
402   - Bug-fixes and updates for the following countries: AG, AZ, BA, BE, CA, CU, ES, FI, GB, GD, GG,
403     IE, IL, IM, IN, IR, IT, JE, JP, KR, KW, NG, NZ, PK, PS, PT, RU, SE, SG, SY, US
404   - New countries: CO, LU, LY, MC, SM
405   - Addition of "Personal Number" ranges to all NANPA countries
406
407 Jan 31st, 2011
408 * Code changes:
409   - Introducing equals() and hashCode() methods for the Phonenumber.PhoneNumber class
410
411 Jan 28th, 2011
412 * Code changes:
413   - Fixing critical bug with non-Android-compatible code. isEmpty() was being used and CANON_EQ in
414     reg-ex matches.
415
416 Jan 20th, 2011
417 * Code improvements:
418   - Handle null phone-numbers when parsing by throwing a NumberParseException.
419   - Handle extension written with an accented "o", as per Spanish, when parsing.
420   - Handle U+30FC dashes as phone-number punctuation.
421   - Allow "ZZ" or null regions to be specified for numbers starting with a full-width "+" symbol, or
422     with other characters (such as whitespace) before the leading +.
423   - new getLengthOfNationalDestinationCode function
424 * Metadata changes:
425   - New types of numbers introduced: UAN (universal or "company" numbers) and short codes. Note that
426     "generalDesc" patterns do not encompass short-codes.  No code-support for these has been
427     introduced as of yet. We are also now enabling the collection of data for information such as
428     area-code-optional, and no-international-dialling ranges.
429   - Data updates as per ITU notifications/bug fixes for the following countries: AM, BH, CD, CG, CR,
430     DE, DJ, EE, GB, GN, HU, IE, JO, JP, LB, LR, MA, MK, MN, MR, NA, PG, SC, SG, SO, SZ, VN, ZA, ZW
431   - Data added for the following countries: BZ, CU, EC, FO, GI, HN, HT, LK, MT, MV, NU, PS, SD
432   - Indentation fixes in reg-exes for the following countries: BG, GB
433   - Allow nationalPrefixForParsing to be specified for countries with no national prefix, to handle
434     possible carrier prefixes
435
436 Jan 3rd, 2011
437 * Metadata changes:
438   - Updates to JE
439   - Updated comments for GB/GG/IM/JE
440
441 November 25th, 2010
442 * Metadata changes:
443   - Updates to existing countries: AD, AG, AI, AN, AS, BB, BG, BM, BS, BW, CA, DM, DO, GD, GH, GM,
444     GU, IN, JM, KN, KY, KZ, LB, LC, MP, MS, PR, SY, TC, TT, TZ, US, VC, VG, VI.
445   - Reorganize reg-exes for better readability.
446   - Updated comments.
447
448 October 22nd, 2010
449 * Metadata changes:
450   - Updates to existing countries: AE, GB, GG, IM, JE
451
452 October 15th, 2010
453 * Code improvements:
454   - Allowed parsing of numbers that start with "++" or a full-width "+" symbol
455   - Allowed reg-exes for national and possible number patterns to have white space in them in the
456     source XML file
457   - Added a more useful toString method for the phone number proto class
458 * Metadata changes:
459   - Updates to existing countries: AF, BF, BO, ES, GB, GG, IM, IS, JE, JE, JP, KR, PE, PT, RU, SE,
460     TT, ZW
461 * Bug fixes:
462   - Parsing empty strings with invalid region codes no longer throws a null pointer exception
463
464 September 4th, 2010
465 * Code improvement:
466   - Added new phone number type: pager
467 * Metadata change:
468   - update to existing country: GG, IM, JE, RS, RU
469 * Bug fixes:
470   - ArrayOutOfBoundException in AsYouTypeFormatter.getRememberedPosition()
471   - AsYouTypeFormatter for UK childline number
472
473 September 1st, 2010
474 * Bug fix on KZ metadata.
475
476 August 17th, 2010
477 * Code improvement:
478   - Refactored BuildMetadataProtoFromXml.java into BuildMetadataFromXml.java and
479     BuildMetadataProtoFromXml.java
480   - Added BuildMetadataProtoFromXml.java and JSArrayBuilder.java
481   - Refactored CountryCodeToRegionCodeMap and CountryCodeToRegionCodeMapForTesting into separate
482     files.
483
484 August 16th, 2010
485 * Bug fixes
486   - AsYouTypeFormatter for formatting Chinese geographical numbers entered in national format.
487   - AsYouTypeFormatter for formatting Chinese 400/800 numbers entered in national format.
488 * Metadata change:
489   - new countries: AM, AN, BH, GL, IS
490   - adding national prefix 1 to all NANPA countries.
491   - update to existing countries: BF, FR, UK, PK, RE
492
493 August 4th, 2010
494 * Further improve startup performance
495   - Preload no country specific metadata at startup.
496   - Stop creating the file containing mapping from country calling code to region code and loading
497     it at startup; instead, do the initialization in PhoneNumberUtil.
498
499 July 31th, 2010
500
501 * Improve startup performance
502   - Separate generated metadata binary file to one file per region
503   - Preload US at start up, and load other region at the time when needed
504   - Create a file containing mapping from country calling code to region code, and load it at
505     startup
506   - Same change also applied to unittests
507
508 July 30th, 2010
509 * Metadata change:
510   - new country: TL
511   - update to existing country: AZ, CN, FR, GH, JO, LA, PG, PK, QA, SZ, UA, VN
512
513 * Code improvement
514   - China local number formatting for AsYouTypeFormatter
515   - improve extension parsing to handle number in the form of +1 (645) 123 1234 ext. 910#