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