JAVA: Update to v3.4. Fixes issues 32 and 15.
[platform/upstream/libphonenumber.git] / java / release_notes.txt
1 May 9th, 2011
2 * Code changes:
3  - Fixed potential for a null-ptr exception in getExampleNumber
4  - Potential speed improvement with replacement of StringBuffer with StringBuilder
5 * Metadata changes
6  - Changed way that international formats are specified to make it easier to do so
7  - New countries: AX, CC, CX, WF
8  - Updates: AM, AR, AU, AW, CN, CO, CR, DM, EC, ET, FI, FJ, GH, IN, JP, KE, KM,
9    KN, LR, MD, MQ, MX, NP, PH, SC, SE, SM, SN, SY, UG, US, VC, VI, ZM
10
11 Apr 26th, 2011
12 * Code changes:
13  - Improved PhoneNumberMatcher for cases with other numbers before or after the phone number.
14  - Improved AsYouTypeFormatter not to use formatting rules containing non-formatting characters
15    (e.g. '*' in Israeli star numbers).
16 * Metadata changes:
17  - New countries: FJ, FM, GY, NF, NI, NR, TV.
18  - Updates: AM, AZ, BF, BW, BZ, CI, CR, GB, GP, HK, JM, KH, LB, LY, MV, PE, PK, SZ, TJ, US.
19 * Minor documentation updates
20
21 Apr 11th, 2011
22 * Bug fixes:
23  - Adding date exclusion pattern in PhoneNumberMatcher.
24  - Fixing bug with selecting a suitable region for numbers with leading zeros where mutiple regions
25    for that country code are possible.
26 * Metadata changes:
27  - Updates: AG, AI, AS, BB, BM, BS, CA, DM, DO, ET, FO, GD, GE, GU, IN, JM, KN, KY, LC, MN, MP, MR,
28    MS, NO, PR, TC, TR, TT, US, VC, VG, VI
29  - New countries: CK, FK, GT, IO, KI, SJ, SV
30 * Documentation updates and some small refactoring to AsYouTypeFormatter
31
32 Mar 31st, 2011
33 * New functionality:
34  - Can parse and format numbers in RFC-3966 format.
35  - Added isAlphaNumber to check to see if a number is a "vanity" or "alpha" number
36  - Can format a number made up of alpha-characters in an "out-of-country" format (e.g. 0011 1
37    800-SIX-FLAG to dial an American alpha-number from Australia).
38 * Code changes:
39  - Renamed private vars, private methods and fixed comments to try and differentiate between country
40    (calling) codes and region codes.
41  == Non-backwards-compatible API changes: ==
42  - Renamed getSupportedCountries to getSupportedRegions, as this more accurately reflects that the
43    library is based around region codes.
44  - getNationalSignificantNumber is no longer a static method, but is instead an instance method.
45 * Metadata changes:
46  - Bug-fixes and updates for AU, AZ, EE, FI, IN, JO, KW, KZ, MV, RU, RR, VA
47  - New country: ME
48
49 Mar 22nd, 2011
50 * Metadata changes:
51  - New mobile-number pattern for AU
52
53 Mar 10th, 2011
54 * New functionality:
55  - New function to format a number with the preferred domestic carrier code used when parsing,
56    falling back to a default calling code otherwise (formatNationalNumberWithPreferredCarrierCode).
57  - We now store the preferred domestic carrier code used when the user calls parseAndKeepRawInput
58  - New functionality to extract phone-numbers from text (findNumbers). This is just the first
59    version - it does not extract ALPHA numbers such as 0800 CALL ME, or numbers where alternate
60    endings are specified (such as 03-331 6005/6006).
61 * Code changes:
62  - Tidying up the test file to use several pre-defined phone number constants
63  - Fixing several lint errors
64  - Added javadoc to formatNationalNumberWithCarrierCode
65  - Fixed bug where a null pointer exception was thrown when getAsYouTypeFormatter was called with an
66    invalid region code
67  - Improved AsYouTypeFormatter to deal with countries with variable-length patterns such as LU
68 * Metadata changes:
69  - Bug-fixes and updates for the following countries: BF, BO, BR, CL, CO, CR, DK, FO, GE, KR, KW,
70    LA, LU, MU, SC, SH, TR, VE
71  - New country: SH
72
73 Mar 10th, 2011
74 * Code changes:
75   - releasing the code to run the demo on localhost or appengine.
76
77 Mar 7th, 2011
78 * Metadata changes:
79  - Adding support for AC
80
81 Feb 11th, 2011
82 * Metadata changes:
83  - Update UAN number ranges for IM and JE.
84
85 Feb 9th, 2011
86 * Code changes:
87   - Better isNumberMatch method. This will now recognise numbers starting with a national prefix as
88     an NSN_MATCH, instead of SHORT_NSN_MATCH.
89     == Note Non-backwards-compatible API change here! ==
90       This will no longer throw a NumberParseException - instead we will return NOT_A_NUMBER if one
91       or other of the numbers provided do not match.
92   - New number-type UAN now supported in the code. This represents Company Numbers or Universally
93     Accessible Numbers.
94 * Metadata changes:
95   - Bug-fixes and updates for the following countries: AG, AZ, BA, BE, CA, CU, ES, FI, GB, GD, GG,
96     IE, IL, IM, IN, IR, IT, JE, JP, KR, KW, NG, NZ, PK, PS, PT, RU, SE, SG, SY, US
97   - New countries: CO, LU, LY, MC, SM
98   - Addition of "Personal Number" ranges to all NANPA countries
99
100 Jan 31st, 2011
101 * Code changes:
102   - Introducing equals() and hashCode() methods for the Phonenumber.PhoneNumber class
103
104 Jan 28th, 2011
105 * Code changes:
106   - Fixing critical bug with non-Android-compatible code. isEmpty() was being used and CANON_EQ in
107     reg-ex matches.
108
109 Jan 20th, 2011
110 * Code improvements:
111   - Handle null phone-numbers when parsing by throwing a NumberParseException.
112   - Handle extension written with an accented "o", as per Spanish, when parsing.
113   - Handle U+30FC dashes as phone-number punctuation.
114   - Allow "ZZ" or null regions to be specified for numbers starting with a full-width "+" symbol, or
115     with other characters (such as whitespace) before the leading +.
116   - new getLengthOfNationalDestinationCode function
117 * Metadata changes:
118   - New types of numbers introduced: UAN (universal or "company" numbers) and short codes. Note that
119     "generalDesc" patterns do not encompass short-codes.  No code-support for these has been
120     introduced as of yet. We are also now enabling the collection of data for information such as
121     area-code-optional, and no-international-dialling ranges.
122   - Data updates as per ITU notifications/bug fixes for the following countries: AM, BH, CD, CG, CR,
123     DE, DJ, EE, GB, GN, HU, IE, JO, JP, LB, LR, MA, MK, MN, MR, NA, PG, SC, SG, SO, SZ, VN, ZA, ZW
124   - Data added for the following countries: BZ, CU, EC, FO, GI, HN, HT, LK, MT, MV, NU, PS, SD
125   - Indentation fixes in reg-exes for the following countries: BG, GB
126   - Allow nationalPrefixForParsing to be specified for countries with no national prefix, to handle
127     possible carrier prefixes
128
129 Jan 3rd, 2011
130 * Metadata changes:
131   - Updates to JE
132   - Updated comments for GB/GG/IM/JE
133
134 November 25th, 2010
135 * Metadata changes:
136   - Updates to existing countries: AD, AG, AI, AN, AS, BB, BG, BM, BS, BW, CA, DM, DO, GD, GH, GM,
137     GU, IN, JM, KN, KY, KZ, LB, LC, MP, MS, PR, SY, TC, TT, TZ, US, VC, VG, VI.
138   - Reorganize reg-exes for better readability.
139   - Updated comments.
140
141 October 22nd, 2010
142 * Metadata changes:
143   - Updates to existing countries: AE, GB, GG, IM, JE
144
145 October 15th, 2010
146 * Code improvements:
147   - Allowed parsing of numbers that start with "++" or a full-width "+" symbol
148   - Allowed reg-exes for national and possible number patterns to have white space in them in the
149     source XML file
150   - Added a more useful toString method for the phone number proto class
151 * Metadata changes:
152   - Updates to existing countries: AF, BF, BO, ES, GB, GG, IM, IS, JE, JE, JP, KR, PE, PT, RU, SE,
153     TT, ZW
154 * Bug fixes:
155   - Parsing empty strings with invalid region codes no longer throws a null pointer exception
156
157 September 4th, 2010
158 * Code improvement:
159   - Added new phone number type: pager
160 * Metadata change:
161   - update to existing country: GG, IM, JE, RS, RU
162 * Bug fixes:
163   - ArrayOutOfBoundException in AsYouTypeFormatter.getRememberedPosition()
164   - AsYouTypeFormatter for UK childline number
165
166 September 1st, 2010
167 * Bug fix on KZ metadata.
168
169 August 17th, 2010
170 * Code improvement:
171   - Refactored BuildMetadataProtoFromXml.java into BuildMetadataFromXml.java and
172     BuildMetadataProtoFromXml.java
173   - Added BuildMetadataProtoFromXml.java and JSArrayBuilder.java
174   - Refactored CountryCodeToRegionCodeMap and CountryCodeToRegionCodeMapForTesting into separate
175     files.
176
177 August 16th, 2010
178 * Bug fixes
179   - AsYouTypeFormatter for formatting Chinese geographical numbers entered in national format.
180   - AsYouTypeFormatter for formatting Chinese 400/800 numbers entered in national format.
181 * Metadata change:
182   - new countries: AM, AN, BH, GL, IS
183   - adding national prefix 1 to all NANPA countries.
184   - update to existing countries: BF, FR, UK, PK, RE
185
186 August 4th, 2010
187 * Further improve startup performance
188   - Preload no country specific metadata at startup.
189   - Stop creating the file containing mapping from country calling code to region code
190     and loading it at startup; instead, do the initialization in PhoneNumberUtil.
191
192 July 31th, 2010
193
194 * Improve startup performance
195   - Separate generated metadata binary file to one file per region
196   - Preload US at start up, and load other region at the time when needed
197   - Create a file containing mapping from country calling code to region code,
198     and load it at startup
199   - Same change also applied to unittests
200
201 July 30th, 2010
202 * Metadata change:
203   - new country: TL
204   - update to existing country: AZ, CN, FR, GH, JO, LA, PG, PK, QA, SZ, UA, VN
205
206 * Code improvement
207   - China local number formatting for AsYouTypeFormatter
208   - improve extension parsing to handle number in the form of +1 (645) 123 1234 ext. 910#