blob: 3aa751b7ac58ff8a370b81e95e1d648dbdc35184 [file] [log] [blame]
Shaopeng Jiaca1e43d2011-10-25 20:38:42 +02001October 19th, 2011: libphonenumber-4.1
2* Code changes
3 - Update code and metadata for countries with IDD "8~10" to accept phone
4 numbers where the "~" is omitted.
5 - Modify formatInOriginalFormat to use raw_input (when present) when the number
6 is considered as invalid by the library.
7 - Add ShortNumberUtil to deal with international short phone numbers, such as
8 short codes and emergency numbers.
9 - Increase the maximum phone-number length accepted when parsing (now set to
10 16).
11
12* Metadata changes
13 - Updates: BF, BN, CN, DE, DK, DO, FR, IN, KI, KW, MC, MD, ML, PA, QA, SB, UK,
14 WS
15 - Emergency number information also added to: AE, AF, AL, AM, AR, AT, AU, BA,
16 BB, BD, BE, BG, BH, BO, BR, BY, CA, CH, CL, CN, CO, CR, CY, CZ, DE, DJ, DK,
17 DO, DZ, EC, EE, EG, ES, FI, FJ, FO, FR, GB, GE, GF, GH, GI, GL, GR, GT, GY,
18 HK, HN, HR, HU, ID, IE, IL, IN, IR, IS, IT, JM, JO, JP, KR, KW, KY, KZ, LB,
19 LK, LT, LU, LV, MA, MC, MD, ME, MK, ML, MM, MN, MO, MT, MU, MV, MX, MY, NG,
20 NI, NL, NO, NP, OM, PA, PE, PH, PK, PL, PM, PT, PY, QA, RO, RS, RU, RW, SA,
21 SB, SD, SE, SG, SI, SK, SL, SM, SR, SV, SY, TD, TH, TJ, TM, TN, TR, TT, TW,
22 UA, UG, US, UY, UZ, VA, VE, VN, VU, ZA, ZM, ZW
23
24October 6th, 2011: libphonenumber-4.0
25* Code changes
26 - New function formatNumberForMobileDialing, which attempts to format a number in
27 such a way that the call can be connected from a mobile phone. If this is
28 impossible, for example for numbers that cannot be internationally dialled,
29 then an empty string is returned.
30 - Fallback functionality to English for non-CJK languages for geocoding
31
32* Metadata changes
33 - Collecting data for emergency numbers
34 - Updates: AR, AU, BR, CN, CZ, EG, GD, IE, IL, JM, KW, KH, SD, SO, TR, UG, UZ
35 - Geocoding data changes: AO, AR, AT, BJ, BR, CD, CG, CI, CL, CN, CV, DE, ES,
36 FR, GR, GW, HU, KM, MR, MZ, NL, PL, PT, SE, ST, SZ
37
38September 13th, 2011: libphonenumber-3.9
39* Code changes
40 - Enable AsYouTypeFormatter to handle long IDD and NDD.
41 - Allow the presence of an IDD following a +.
42 - Fix formatting of phone numbers which contain only 0s in the national number.
43 - Refactored some code in geocoding including AreaCodeMap and the storage
44 strategies.
45
46* Metadata changes
47 - Updates: AM, BE, BH, BJ, BR, BT, BZ, CI, CL, CN, DE, DK, DM, DZ, EC, EG, FJ,
48 GR, HR, HT, IN, IQ, IS, JM, KE, KG, KH, KR, LA, LB, LR, MA, MD, ML, MO, MX,
49 MY, NE, NG, PG, PH, PK, PY, QA, SA, SD, SG, SN, TD, TG, TH, TN, TT, UG, YE,
50 ZA, ZM
51 - New geocoding data for: AC, CG, CU, CV, EG, ET, FI, FI, FI, GL, JP, KM, MA,
52 MA, MU, MU, MU, MZ, RS, SH, SH, SL, SO, ST, TG, TG, TG, UG, ZM
53 - Updated geocoding data for: AR, DE
54
Shaopeng Jiaf7e02242011-08-15 17:03:30 +020055August 11th, 2011: libphonenumber-3.8
56* Code changes
57 - Fix to demo to not throw null-ptr exceptions for invalid NANPA numbers
58 - Fixed AYTF to not accept plus signs in the middle of input
59 - PhoneNumberMatcher improvements - added STRICT_GROUPING and EXACT_GROUPING
60 levels, numbers followed/preceded by a currency symbol will not match,
61 multiple numbers separated by phone-number punctuation will now match. ", "
62 is no longer accepted as an extension symbol when matching, only when
63 parsing. "x" is only accepted as a carrier code or extension marker, not
64 otherwise.
65 - Changes to handling of leading zeroes - these will not be silently ignored
66 anymore, but will be stored as part of the number.
67 - PhoneNumberOfflineGeocoder - new method to get the description of a number that assumes
68 the validity of the number has already been checked and will not re-verify it.
69 - Split geocoding US binary data into multiple files.
70
71* Metadata changes
72 - Updates: AR, AT, AU, AZ, BE, BF, BH, BY, CA, CN, CO, CR, HT, HU, IT, KG, KH,
73 LB, LI, ME, NC, RS, SE, TT, US, VG, ZA
74 - New geocoding data for: AL, AM, AO, BF, BJ, BW, CD, CI, CZ, DZ, EE, GH, GM,
75 GN, GR, GW, HU, IS, KE, LK, LS, LT, LU, LV, MD, MG, MR, NA, PE, QN, SD, SK,
76 SN, SZ, TN, VE, VN, ZA, ZW
77 - Updated geocoding data for: GB, PT, US
78 - Revised sorting of geocoding data
79
Shaopeng Jia9651f4d2011-07-05 11:50:58 +020080July 5th, 2011
81* Code changes
82 - Refactored AreaCodeMap to minimize binary and memory footprint by using 2 different strategies.
83 - Refactored BuildMetadataFromXml.java and added unittests.
84
85* Metadata changes
86 - Regenerate binaries for all existing area code mapping data with smaller sizes.
87 - Added city-level area code data mapping for US and Canada.
88
Shaopeng Jia249f28f2011-06-29 16:01:24 +020089June 29th, 2011
90* Code changes
91 - Fixed issue 38, issue 39, issue 41 and issue 43
92
93* Metadata changes
94 - Added phone number area mapping files for
95 - JP in Japanese
96 - FR in French
97 - TW in English, Simplified and Traditional Chinese
98 - RU in English
99 - IT in English and Italian
100 - PT in Portuguese
101 - TR in English and Turkish
102 - CH in English, German, French and Italian
103 - Updates: CR, GE, IT, JP, KW, MH, MP, MU, PE, PM, RW, TG, TJ, TK
104
Shaopeng Jiad1db4c52011-06-23 09:54:42 +0200105June 14th, 2011
106* Code changes
107 - Added PhoneNumberOfflineGeocoder, supporting classes and their unittests.
108 - Added GenerateAreaCodeData to transform phone number area mapping files from text files to binary
109 files.
110 - Modified PhoneNumberParserServlet.java and phonenumberparser.jsp to incorporate
111 PhoneNumberOfflineGeocoding in the appengine demo.
112
113* Metadata changes
114 - Added phone number area mapping files for NANPA countries and GB in English, NL in Dutch, AR, CL
115 and ES in Spanish, AT and DE in German, SE in Swedish, BR in Portuguese, KR in English, Korean,
116 Simplified and Traditional Chinese, and CN in Simplified Chinese.
117
118June 10th, 2011
119* Code changes:
120 - Fixes for PhoneNumberMatcher to be more restrictive in valid mode and not match numbers
121 surrounded by Latin characters. This ensures, for example, the string abc123456789acg will not be
122 marked as a phone numbers.
123 - Enable PhoneNumberUtil to handle all digits, rather than a subset
124 - Fix for AYTF issue36 and improvement for US AYTF behaviour.
125* Metadata changes:
126 - Updates: BG, EG, ES, GH, PF, SC, SY, VA
127
Shaopeng Jia372bff82011-05-24 10:47:15 +0200128May 24th, 2011
129* Code changes:
130 - Phonenumber now implements Serializable.
131 - findNumbers doesn't accept numbers with mis-matched brackets as phone-numbers
132 - An offline phone number geocoder has been added. The current implementation just returns the
133 region name for the phone number; more detailed geocoding will be added later.
134* Metadata changes:
135 - New countries: GF, KP, NC, PA, PF, PW, PY, SB, SR, TO, UY, VU
136 - Updates: CY, CZ, ES, GB, GQ, JM, MQ, TN, VI
137
138May 9th, 2011
139* Code changes:
140 - Fixed potential for a null-ptr exception in getExampleNumber
141 - Potential speed improvement with replacement of StringBuffer with StringBuilder
142* Metadata changes
143 - Changed way that international formats are specified to make it easier to do so
144 - New countries: AX, CC, CX, WF
145 - Updates: AM, AR, AU, AW, CN, CO, CR, DM, EC, ET, FI, FJ, GH, IN, JP, KE, KM,
146 KN, LR, MD, MQ, MX, NP, PH, SC, SE, SM, SN, SY, UG, US, VC, VI, ZM
147
148Apr 26th, 2011
149* Code changes:
150 - Improved PhoneNumberMatcher for cases with other numbers before or after the phone number.
151 - Improved AsYouTypeFormatter not to use formatting rules containing non-formatting characters
152 (e.g. '*' in Israeli star numbers).
153* Metadata changes:
154 - New countries: FJ, FM, GY, NF, NI, NR, TV.
155 - Updates: AM, AZ, BF, BW, BZ, CI, CR, GB, GP, HK, JM, KH, LB, LY, MV, PE, PK, SZ, TJ, US.
156* Minor documentation updates
157
158Apr 11th, 2011
159* Bug fixes:
160 - Adding date exclusion pattern in PhoneNumberMatcher.
161 - Fixing bug with selecting a suitable region for numbers with leading zeros where mutiple regions
162 for that country code are possible.
163* Metadata changes:
164 - Updates: AG, AI, AS, BB, BM, BS, CA, DM, DO, ET, FO, GD, GE, GU, IN, JM, KN, KY, LC, MN, MP, MR,
165 MS, NO, PR, TC, TR, TT, US, VC, VG, VI
166 - New countries: CK, FK, GT, IO, KI, SJ, SV
167* Documentation updates and some small refactoring to AsYouTypeFormatter
168
169Mar 31st, 2011
170* New functionality:
171 - Can parse and format numbers in RFC-3966 format.
172 - Added isAlphaNumber to check to see if a number is a "vanity" or "alpha" number
173 - Can format a number made up of alpha-characters in an "out-of-country" format (e.g. 0011 1
174 800-SIX-FLAG to dial an American alpha-number from Australia).
175* Code changes:
176 - Renamed private vars, private methods and fixed comments to try and differentiate between country
177 (calling) codes and region codes.
178 == Non-backwards-compatible API changes: ==
179 - Renamed getSupportedCountries to getSupportedRegions, as this more accurately reflects that the
180 library is based around region codes.
181 - getNationalSignificantNumber is no longer a static method, but is instead an instance method.
182* Metadata changes:
183 - Bug-fixes and updates for AU, AZ, EE, FI, IN, JO, KW, KZ, MV, RU, RR, VA
184 - New country: ME
185
186Mar 22nd, 2011
187* Metadata changes:
188 - New mobile-number pattern for AU
189
Shaopeng Jia52699e02011-03-22 14:22:53 +0100190Mar 10th, 2011
191* New functionality:
192 - New function to format a number with the preferred domestic carrier code used when parsing,
193 falling back to a default calling code otherwise (formatNationalNumberWithPreferredCarrierCode).
194 - We now store the preferred domestic carrier code used when the user calls parseAndKeepRawInput
195 - New functionality to extract phone-numbers from text (findNumbers). This is just the first
196 version - it does not extract ALPHA numbers such as 0800 CALL ME, or numbers where alternate
197 endings are specified (such as 03-331 6005/6006).
198* Code changes:
199 - Tidying up the test file to use several pre-defined phone number constants
200 - Fixing several lint errors
201 - Added javadoc to formatNationalNumberWithCarrierCode
202 - Fixed bug where a null pointer exception was thrown when getAsYouTypeFormatter was called with an
203 invalid region code
204 - Improved AsYouTypeFormatter to deal with countries with variable-length patterns such as LU
205* Metadata changes:
206 - Bug-fixes and updates for the following countries: BF, BO, BR, CL, CO, CR, DK, FO, GE, KR, KW,
207 LA, LU, MU, SC, SH, TR, VE
208 - New country: SH
209
210Mar 10th, 2011
211* Code changes:
212 - releasing the code to run the demo on localhost or appengine.
213
214Mar 7th, 2011
215* Metadata changes:
216 - Adding support for AC
217
Shaopeng Jia74aa8622011-02-11 16:11:35 +0100218Feb 11th, 2011
219* Metadata changes:
220 - Update UAN number ranges for IM and JE.
221
222Feb 9th, 2011
223* Code changes:
224 - Better isNumberMatch method. This will now recognise numbers starting with a national prefix as
225 an NSN_MATCH, instead of SHORT_NSN_MATCH.
226 == Note Non-backwards-compatible API change here! ==
227 This will no longer throw a NumberParseException - instead we will return NOT_A_NUMBER if one
228 or other of the numbers provided do not match.
229 - New number-type UAN now supported in the code. This represents Company Numbers or Universally
230 Accessible Numbers.
231* Metadata changes:
232 - Bug-fixes and updates for the following countries: AG, AZ, BA, BE, CA, CU, ES, FI, GB, GD, GG,
233 IE, IL, IM, IN, IR, IT, JE, JP, KR, KW, NG, NZ, PK, PS, PT, RU, SE, SG, SY, US
234 - New countries: CO, LU, LY, MC, SM
235 - Addition of "Personal Number" ranges to all NANPA countries
236
237Jan 31st, 2011
238* Code changes:
239 - Introducing equals() and hashCode() methods for the Phonenumber.PhoneNumber class
240
241Jan 28th, 2011
242* Code changes:
243 - Fixing critical bug with non-Android-compatible code. isEmpty() was being used and CANON_EQ in
244 reg-ex matches.
245
246Jan 20th, 2011
247* Code improvements:
248 - Handle null phone-numbers when parsing by throwing a NumberParseException.
249 - Handle extension written with an accented "o", as per Spanish, when parsing.
250 - Handle U+30FC dashes as phone-number punctuation.
251 - Allow "ZZ" or null regions to be specified for numbers starting with a full-width "+" symbol, or
252 with other characters (such as whitespace) before the leading +.
253 - new getLengthOfNationalDestinationCode function
254* Metadata changes:
255 - New types of numbers introduced: UAN (universal or "company" numbers) and short codes. Note that
256 "generalDesc" patterns do not encompass short-codes. No code-support for these has been
257 introduced as of yet. We are also now enabling the collection of data for information such as
258 area-code-optional, and no-international-dialling ranges.
259 - Data updates as per ITU notifications/bug fixes for the following countries: AM, BH, CD, CG, CR,
260 DE, DJ, EE, GB, GN, HU, IE, JO, JP, LB, LR, MA, MK, MN, MR, NA, PG, SC, SG, SO, SZ, VN, ZA, ZW
261 - Data added for the following countries: BZ, CU, EC, FO, GI, HN, HT, LK, MT, MV, NU, PS, SD
262 - Indentation fixes in reg-exes for the following countries: BG, GB
263 - Allow nationalPrefixForParsing to be specified for countries with no national prefix, to handle
264 possible carrier prefixes
265
266Jan 3rd, 2011
267* Metadata changes:
268 - Updates to JE
269 - Updated comments for GB/GG/IM/JE
270
271November 25th, 2010
272* Metadata changes:
273 - Updates to existing countries: AD, AG, AI, AN, AS, BB, BG, BM, BS, BW, CA, DM, DO, GD, GH, GM,
274 GU, IN, JM, KN, KY, KZ, LB, LC, MP, MS, PR, SY, TC, TT, TZ, US, VC, VG, VI.
275 - Reorganize reg-exes for better readability.
276 - Updated comments.
277
Lara Rennie256a5f72010-10-25 21:38:42 +0200278October 22nd, 2010
Shaopeng Jia74aa8622011-02-11 16:11:35 +0100279* Metadata changes:
280 - Updates to existing countries: AE, GB, GG, IM, JE
281
282October 15th, 2010
Lara Rennie256a5f72010-10-25 21:38:42 +0200283* Code improvements:
284 - Allowed parsing of numbers that start with "++" or a full-width "+" symbol
Shaopeng Jia74aa8622011-02-11 16:11:35 +0100285 - Allowed reg-exes for national and possible number patterns to have white space in them in the
Lara Rennie256a5f72010-10-25 21:38:42 +0200286 source XML file
287 - Added a more useful toString method for the phone number proto class
288* Metadata changes:
Shaopeng Jia74aa8622011-02-11 16:11:35 +0100289 - Updates to existing countries: AF, BF, BO, ES, GB, GG, IM, IS, JE, JE, JP, KR, PE, PT, RU, SE,
290 TT, ZW
Lara Rennie256a5f72010-10-25 21:38:42 +0200291* Bug fixes:
292 - Parsing empty strings with invalid region codes no longer throws a null pointer exception
293
Shaopeng Jiab2697412010-09-06 08:55:10 +0200294September 4th, 2010
295* Code improvement:
296 - Added new phone number type: pager
297* Metadata change:
298 - update to existing country: GG, IM, JE, RS, RU
299* Bug fixes:
300 - ArrayOutOfBoundException in AsYouTypeFormatter.getRememberedPosition()
301 - AsYouTypeFormatter for UK childline number
302
303September 1st, 2010
304* Bug fix on KZ metadata.
305
306August 17th, 2010
307* Code improvement:
308 - Refactored BuildMetadataProtoFromXml.java into BuildMetadataFromXml.java and
309 BuildMetadataProtoFromXml.java
310 - Added BuildMetadataProtoFromXml.java and JSArrayBuilder.java
311 - Refactored CountryCodeToRegionCodeMap and CountryCodeToRegionCodeMapForTesting into separate
312 files.
313
Shaopeng Jiaf59ccfc2010-08-17 09:58:47 +0200314August 16th, 2010
315* Bug fixes
316 - AsYouTypeFormatter for formatting Chinese geographical numbers entered in national format.
317 - AsYouTypeFormatter for formatting Chinese 400/800 numbers entered in national format.
318* Metadata change:
319 - new countries: AM, AN, BH, GL, IS
320 - adding national prefix 1 to all NANPA countries.
321 - update to existing countries: BF, FR, UK, PK, RE
322
323August 4th, 2010
Shaopeng Jiaf59ccfc2010-08-17 09:58:47 +0200324* Further improve startup performance
325 - Preload no country specific metadata at startup.
326 - Stop creating the file containing mapping from country calling code to region code
327 and loading it at startup; instead, do the initialization in PhoneNumberUtil.
328
Shaopeng Jiafa421402010-07-31 13:00:06 +0200329July 31th, 2010
330
331* Improve startup performance
332 - Separate generated metadata binary file to one file per region
333 - Preload US at start up, and load other region at the time when needed
334 - Create a file containing mapping from country calling code to region code,
335 and load it at startup
336 - Same change also applied to unittests
337
338July 30th, 2010
Shaopeng Jiafa421402010-07-31 13:00:06 +0200339* Metadata change:
340 - new country: TL
341 - update to existing country: AZ, CN, FR, GH, JO, LA, PG, PK, QA, SZ, UA, VN
342
343* Code improvement
344 - China local number formatting for AsYouTypeFormatter
Lara Rennie256a5f72010-10-25 21:38:42 +0200345 - improve extension parsing to handle number in the form of +1 (645) 123 1234 ext. 910#