1Revision history for Perl CPAN module Locale::SubCountry
2
32.07 23 Oct 2021
4    Added Kosovo https://laendercode.net/en/2-letter-code/xk, RT bug #139734
5    Updated to latest codes from: https://salsa.debian.org/iso-codes-team/
6
72.06 12 Jul 2019
8    Used latest iso-codes package from Debian Salsa
92.05 6 Apr 2019
10    Used latest iso-codes package from Debian Salsa
11
122.04 29 Dec 2017
13    Added strict and warnings pragmas to Codes.pm as per github request by manwar
14
152.03 27 Dec 2017
16    Updated to alioth.debian.org codes 3.77 (Dec 2017)
17
182.02 7 Mar 2017
19    Fixed RT bug #120002, name space pollution
20    Updated to alioth.debian.org codes 3.74 (Jan 2017)
21
222.01 15 Aug 2016
23
24    Added country's numeric code, accessed from the country_number method
25    Added 'levels' method, return all level types and their totals in a sub country
26    Added JSON to dependency, fix for RT bug #116926,
27
282.00 11 Aug 2016
29    Sourced ISO codes from alioth.debian.org in JSON format,
30    Many French Metropolitan departments and Italian provinces added
31    Renamed SubCountry/Data.pm to Codes.pm
32    'category' method renamed to 'level', as it reflects a sub country's size
33    removed  FIPS10_4_code and ISO3166_2_code methods as FIPS is deprecated
34    removed regional_division method, info no longer available from new source data
35    Improved documentation
36
371.66 23 Jul 2016
38    Github integration
39    Improved documentation
40    Updated France, all regions reorganised in January 2016
41    Updated Italy, all regions reorganised in January 2015
42    Distrito Federal renamed to Ciudad de M�xico, in Mexico
43
441.65 25 Apr 2016
45    Fixed #110905, wrong code for Sulawesi Barat
46
471.64 7 Apr 2015
48    Suppressed warnings on printing wide characters in demo.pl
49    removed indirect object notation for 'new' method
50    Fixed #100617, several typos
51
521.63 9 Apr 2014
53    Check that a country has sub countries before searching for code and full name, fix for RT bug 89706
54    Remove minuimum versions for utf8 and strict modules, fix for RT bug 92587
55
561.62 23 Jul 2013
57    Removed POD utf encoding directive from SubCountry.pm again and removed utf8
58    characters from the POD section. They are still causing errors on selected
59    platforms and versions of Perl. Replaced with ASCII text. Fix for RT bug 71228
60
611.61 15 Feb 2013
62    Small correction for German data
63    Replaced POD utf encoding directive in SubCountry.pm as some accented characters occur in the POD
64
651.60 13 Feb 2013
66
67    NOTE: On September 2, 2008, FIPS 10-4 was one of ten standards withdrawn by NIST as a
68    Federal Information Processing Standard. FIPS data will remain in this module for now.
69    I may need to withdraw it if it becomes too difficult to align FIPS data with updates to ISO data
70
71    Added FIPS data to several countries
72    Added Communities to Spain
73    Added Italian regions
74    Allowed for blank lines within subcountry XML data
75    Added FIPS codes to many countries
76    Removed POD utf encoding directive from SubCountry.pm (only needed in Data.pm), fix for RT bug 82933
77
781.59 22 Jan 2013
79    Added $VERSION variable into the Locale::SubCountry::World package
80
811.58 22 Jan 2013
82    Added '=encoding utf8' to Data.pm to allow POD formatters to work
83    Changed minimimum required version of Test::Pod and Test::Pod::Coverage to 1.04, fix for RT bug 82717
84
851.57 14 Jan 2013
86    Moved declaration of $VERSION into the Locale::SubCountry package, fix for RT bug 79734
87
88
891.56 7 July 2012
90    Removed use of $ENV{AUTHOR_TESTING} for running POD tests, caused problems for CPAN testers
91
921.55 5 July 2012
93    Fixed xml tagging in Macedonian data,  fix for RT bug 78157
94    Minor updates to data
95    Use $ENV{AUTHOR_TESTING} for running POD tests, fix for RT bug 78123
96    Print message to STDERR (via call to die) on badly formed country and sub country data
97
98    Thanks to Ron Savage for the following:
99    Use Test::More everywhere rather than Test::Simple sometimes.
100    Add t/test.t.
101    Clean up pre-reqs in Makefile.PL
102    Add Build.PL.
103    Add encoding to POD in Locale::SubCountry
104
1051.51 2 July 2012
106    Many new countries added, thanks to Ron Savage
107    Sub countries added to existing countries
108    Many corrections to sub country data
109    Changed to all lower case for the spelling of 'and', 'of' 'the' etc that may occur in names
110    Added 'use utf8' to main.t
111
112
1131.50 18 Apr 2012
114    Added Makefile.PL  back to the distribution set
115
1161.49 18 Apr 2012
117    Fixed errors in XML coding
118    Fixed the Brazilian state Rond�nia, fix for RT bug 73830
119    Added 3 new Indonesian provinces, fix for RT bug 74763
120    Added 'use utf8' to Data.pm, fix for RT bug 73829
121    Added Metro Manila in Philippines, fixed some other provinces, fix for RT bug 69678
122
1231.48 17 Apr 2012
124    Added South Sudan as a new country
125    Removed states from Sudan
126    Added New Caledonia, Palau, San Marino, Guernsey, Jersey, Saint Martin,
127      Saint Barth�lemy, Sint Maarten, Isle Of Man
128
1291.47 29 Apr 2011
130    Converted tests to use Test::Simple in main.t
131    Added test for regional_division
132    Added test for initialising with 2 letter country code
133    Improved synopsis
134
135    Fixed typo in 'new' method that was stopping the use of 2 letter country codes
136    being used as a parameter. Note, this also caused a faliure in the tests for
137    the dependant module, Lingua::EN::AddressParse
138
139
1401.46 6 Apr 2011
141    Fixed main.t so tests now use title cased country names.
142    Corrected typos in Changes, README, SubCountry.pm demo.pl, thanks to Glenn Fowler
143
1441.45 5 Apr 2011
145    Corrected FIPS codes for Repbulic or Ireland and other countries, thanks to Michele Ongaro
146    Added data for Montenegro as a separate country
147    Added data for Serbia as a separate country
148    Added Hong Kong and it's districts (it also appears as a region of China)
149    Corrections to documentation
150
151    Country names are now stored in title case, not all capitals, as in Fiji and not FIJI.
152    This was done to improve readability (original ISO date used upper case)
153    NOTE, this means that when calling the new method with a country name, you need
154    to specify the name in title case. It will not work if you use upper case. This
155    could cause some backward compatibility issues from your calling code.
156
1571.44 20 Jan 2011
158    Moved Locale::SubCountryData to Locale::SubCountry::Data name space
159    Added use struct and use warnings
160    Moved all global variables to the Locale::SubCountry name space
161
1621.43 14 Jan 2011
163    Fixed the number of tests in main.t, should be 17, not 15
164
1651.42 13 Jan 2011
166    Changed name of UK region St. Helens to Saint Helens, fix for RT bug 38599
167    Fixed FIPS codes for UK regions Stafforshire and Saint Helens
168    Removed trailing blanks, fix for RT bug 38597
169    Changed encoding of XML data to UTF-8,  thanks to Benjamin Erhart. Fix for RT bug 38559
170    Moved XML data to separate package, Locale::SubCountry::Data and encoded this file as UTF-8
171    Added additional tests for unknown sub country codes and names
172
1731.41 20 Apr 2008
174    Added FIPS codes for UK, thanks to TJMATHER for patch, RT bug #32899
175
1761.40 12 Jan 2008
177    Changed  regexp match on XML country field to account for both Unix and MSDOS line endings
178    Converted files to Unix line endings
179
1801.39 6 Jan 2008
181    Allowed for sub countries with no ISO code, such as Shariff Kabunsuan in the Phillipines
182    Thanks to Matt Loschert for pointing this out.
183
184
1851.38 26 Nov 2006
186    Changed sub country names in Sudan and Phillipines
187    Added examples/demo.pl
188
1891.37 02 Apr 2006
190    Removed invalid characters in data for Iran, United Arab Emirates and Oman
191    Removed alternate names (appended to end of main names in brackets) from many sub countries
192
193    NOTE: new method now issues warning and returns undef if invalid country code or
194    name parameter is passed. Previous versions died inside the new method.
195
1961.36 11 Jul 2005
197    Added regions for Andorra
198    Added regions for Grenada
199    Updated distribution to current CPAN requirements
200
201
2021.35 04 Jul 2005
203    Fixed problem with name space pollution for $VERSION variable
204
205    Added data for the following countries
206        Antigua and Barbuda
207        Andorra
208        Aruba
209        Bhutan
210        Nauru
211        Seychelles
212
213    For Cape Verde, changed Calheta de S�o Miguel to S�o Miguel
214    For Venezuela, changed Distrito Federal to Distrito Capital
215    Added districts for Honduras
216
2171.34 17 Apr 2004
218    Fixed typo in XML data for American Samoa
219
220    Added 'has_sub_countries' method to determine if a country has any sub countries
221    (some such a Singapore do not). Updated synopsis to show it's use.
222
2231.33 13 Feb 2004
224    Fixed pattern matching in data loader to allow for accented characters
225
2261.32 13 Feb 2004
227    Added 'use locale' to main.t to stop 'make test' errors
228
2291.31 12 Feb 2004
230    Moved XML data back into main module.
231    Corrected documentation
232
2331.30 8 Feb 2004
234
235    Completely updated data, many new countries and sub countries added
236    Added countries without sub countries, such as Singapore
237    Stored data in separate file in XML format
238
239    Added method 'category' to return the type of subcountry such as state, city etc
240    NOTE: this replaces the 'sub_country_type' method
241
242    Added method 'regional_division' to return the regional_division of subcountry
243    such as SCT (Scotland) for Edinburgh
244
2451.23 16 Jul 2003
246
247    Added data for Finland and Singapore, thanks to Chris McKay
248
2491.22 18 Jan 2003
250    Removed use of $_ in initialization code, as suggested by Ilya Martynov
251    Corrected country code for Iran, thanks to Todd A. Green
252    Removed Exporter references, as suggested by TJ Mather
253    Added Timor-Leste as a new country (East Timor)
254    Changed Canadian province of Newfoundland to Newfoundland and Labrador
255
256
2571.21 9 Sep 2002
258    Fixed bug in test script main.t
259
2601.20 7 Sep 2002
261
262    Added methods to new Locale::SubCountry::World package
263    - new
264    - all_full_names
265    - all_codes
266    - full_name_code_hash
267    - code_full_name_hash
268
269    NOTE!
270    all_full_names method replaces the stand alone all_country_names function
271    all_codes method replaces the stand alone all_country_codes function
272    The above method names duplicate existing method names (polymorphism),
273        so make sure you are working with the right type of object first.
274
275    These changes were necessary because of user requests for country name
276    and code look ups prior to sub-country lookups. Previous versions would not
277    work with Locale::Country because of a clash in exported names. Thanks to
278    Todd Green for this suggestion.
279
280    Added the FIPS 10-4 (US standard) for many sub countries
281    Added FIPS10_4_code method
282    Added ISO3166_2_code method
283    Added many corrections to sub country names
284    Thanks to TJ Mather for adding FIPS codes and fixing other data errors
285
286    Added extra tests to main.t
287    Prefixed internal data structure elements with a dash, to follow OO convention
288
2891.11 23 Mar 2002
290    Corrected codes for Corsica, France, thanks to Mathias Herberts
291
2921.10 04 Jan 2002
293    Replaced INIT block with anonymous subroutine. This removed problems
294    that occurred when mod_perl or eval statements were used.
295
2961.09 25 Jul 2001
297    Added code for US, West Virginia (WV), thanks to Michelle Agnew
298
2991.08 16 Mar 2001
300    Made many corrections to country data to align it with ISO:3166-2 standard
301    Defined sub country types for all countries
302    Added information for Israel and Albania
303    Removed some MS-DOS line terminators that were generating warnings
304    Added two more tests to main.t
305
306
3071.07 12 Mar 2001
308    Corrected errors in German sub countries thanks to Lars Steubesand
309
310    Corrected errors in data for Austria, Poland, Romania, Turkey, Germany and
311    Columbia. Thanks to Philip Newton.
312
3131.06 20 Feb 2001
314    Allowed countries to be specified by either full name or two letter code
315    Made country names compatible with ISO 3166-1 standard
316    Added country_code method to retrieve ISO code for current object
317    Added all_country_codes method to retrieve ISO codes for all countries
318    Corrected abbreviation for Canadian province of Nunavut
319    Thanks to Trevor Schellhorn for these suggestions
320
321    Corrected two Belgium sub countries. Thanks to Wim Verhaegen
322
323
3241.05 15 Oct 2000
325    sub_country_type method returns 'unknown' when no data defined
326    Fixed bug in mismatch count in main.t test module
327
3281.04 04 Oct 2000
329    Added all remaining countries, thanks to Alastair McKinstry
330    Included sub country type (state, county etc) in lookup data
331    Added country and sub_country_type methods
332    Accounted for sub country codes of 0
333
3341.03 20 Aug 2000
335    Added many more countries, thanks to Alastair McKinstry
336    Now account for any incorrect capitalization of sub country names
337    _clean subroutine only removes dots and spaces, dashes are now allowed
338    Added subroutine to return array of countries that have lookup data
339    Added test in main.t to convert all codes to names and back again
340    Allowed for leading or trailing white space in __DATA__ entries
341
3421.02 14 May 2000
343    Added Canadian province of Nunavut, thanks to Steve Taylor
344
3451.01 25 Apr 2000
346    To follow the approach of ISO 3166-2
347    - renamed module from RegionAbbrev to SubCountry
348    - replaced all references to 'abbreviation' with 'code'
349
350    Improved regexes in _clean, thanks to Mark Summerfield
351    Replaced regexp with hash lookup for valid countries
352    Accepted all forms of upper/lower case in country name
353
3541.00  8 Apr 2000
355     First Release
356