The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
2021-03-09      3.7002  Data updates

2021-02-04      3.7001  Data from OFCOM/CNAC/NPA/localcallingguide.com squirreled
                          away during builds for greater reproducibility;
                        Data updates

2020-12-04      3.7000  Bugfixes in dial_to for stubs and unallocated UK numbers;
                        Windows doesn't properly support fork() so skip the tests for it;
                        Minor documentation clarification re constructor;
                        Stub classes shrunk by de-duping areanames;
                        Kosovo appears to have fully switched to using its own country code;
                        Option to build --without_uk and save disk space
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/95);
                        Correctly identify UK 04, 05[01234789], and 06 numbers as invalid,
                          instead of valid but unallocated (fix arising from
                          https://github.com/DrHyde/perl-modules-Number-Phone/issues/98);
                        Use data from a tagged release of libphonenumber instead of whatever
                          is in master, so builds are more reproducible, and expose that
                          tag in libphonenumber_tag method;
                        Expose OFCOM, CNAC, NPA and localcallingguide.com data update
                          date/time in N::P::{UK,NANP::CA,NANP::US,NANP}->data_source;
                        Data updates

2020-09-04      3.6006  Data updates

2020-06-06      3.6005  Data updates

2020-05-11      3.6004  Data updates;
                        Improved doco on the data update policy :-)

2020-04-27      3.6003  Testing improvements for fork()ing code;
                        Data updates

2020-03-09      3.6002  Data updates

2019-12-11      3.6001  Inmarsat +871 to +874 have been de-commissioned;
                        Added some US overlay codes (not all are in use yet);
                        Data updates

2019-09-12      3.6000  Data updates;
                        UK is_drama() numbers now all respond appropriately
                          to is_mobile, is_tollfree etc, and the mobile range
                          is correctly identified as being UK-wide and not Jersey
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/67);
                        Areaname() sensitive to your locale

2019-06-11      3.5001  Corrected international dialling data for Antarctic
                          research stations;
                        Cleaned up Unicode-spoor in some US operators' names;
                        Numerous new area codes in the US;
                        Doco clarification re incomplete numbers;
                        Data updates

2019-03-03      3.5000  Added operator data for almost all of the NANP;
                        Data updates

2018-12-05      3.4006  Expose libphonenumber's IDD prefix regexes
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/pull/89);
                        New NANP area codes for Jamaica and Canada;
                        Data updates

2018-06-19      3.4005  Improved formatting of UK mobile and pager numbers
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/75);
                        Reinstate Kosovo squatting on +377, +381, and +386, as the change-
                          over is apparently not yet complete;
                        Data updates

2018-04-10      3.4004  We now have some data from libphonenumber for Kosovo
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/66);
                        Kosovo has migrated to +383 so get rid of the special cases in +377 etc;
                        Bug-fix for when national prefix transforms apply
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/pull/87);
                        N::P::Country::Data is now mostly built from libphonenumber
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/34);
                        Corrected the Vatican's area code within the Italian numbering plan;
                        Added a special case for San Marino within the Italian numbering plan;
                        Data updates

2018-02-03      3.4003  UK "protected" numbers should have false is_allocated();
                        Bugfix for countries that don't have area names (see
                          https://github.com/DrHyde/perl-modules-Number-Phone/issues/64);
                        Match libphonenumber's behaviour when countries have identical
                          validators for fixed_line and mobile (see
                          https://github.com/DrHyde/perl-modules-Number-Phone/issues/84);
                        Accept numbers in some more unusual national dialling formats (see
                          https://github.com/DrHyde/perl-modules-Number-Phone/issues/77);
                        Recognise some more special rate numbers in Barbados and Bahamas (see
                          https://github.com/DrHyde/perl-modules-Number-Phone/pull/86);
                        Add format_for_country method;
                        Data updates

2017-09-05      3.4002  Add new US and CA area codes;
                        UK data is now in a normal data file instead of a humungous binary
                          module;
                        Re-open the UK database in children after forking
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/72);
                        UK data can be slurped into memory for faster access (but slow startup);
                        Data updates

2017-07-02      3.4001  Added some nominally redundant dependencies (see
                          https://github.com/DrHyde/perl-modules-Number-Phone/pull/68);
                        UK "protected" numbers are now included;
                        Data updates

2017-03-14      3.4000  Changed Kosovo's placeholder country-code from KOS to XK;
                        +383 (Kosovo) is now a special-case for validation
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/66);
                        Data updates

2016-12-06      3.3000  Implemented is_drama
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/pull/61);
                        NANP modules now know about is_tollfree, is_specialrate and
                          is_personal;
                        Number::Phone::Country will now warn that exporting is deprecated;
                        Stubs and dial_to are no longer experimental;
                        Minor doco improvements, including some from the Debian project
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/60);
                        Minor coverage improvements by getting rid of some redundant
                          code paths;
                        More comprehensive testing of stubs, and resulting bug-fixes for
                          territories that appear as part of another's number plan, such
                          as enormous Kazakhstan and tiny Tristan da Cunha;
                        Data updates

2016-09-07      3.2001  Data updates

2016-06-05      3.2000  Bump version number because rpm is stupid and thinks
                          3.1 < 3.0014;
                        Recognize Isle of Man (IM) free/special-rate
                          numbers;
                        Data updates

2016-03-04      3.1     Added the format_using() method and the ability to
                          use third-party formatters, thanks to Michael
                          Schout for the suggestion;
                        Data updates

2015-12-08      3.0014  Deprecated APIs of being able to call most methods as
                          class methods or functions instead of object methods
                          have now been deleted;
                        Remove unnecessary N::P::NANP->country method - the
                          implementation in the superclass is sufficient;
                        Data updates

2015-11-04      3.0013  Fix another bug in the tests which threw up
                          misleading failures if a country-specific subclass
                          was installed

2015-10-26      3.0012  Updated dialing prefixes in N::P::Country
                          from Michael Gray;
                        Fix broken code for is_specialrate in stubs,
                          which previously always returned undef (ie
                          unknown) even when libphonenumber knew it was
                          eg premium rate (bug found by Gerhard Poul's
                          PR 46);
                        +44 3 numbers have is_specialrate set;
                        Fix bug where Number::Phone::Country would get
                          re-set to 'UK' mode instead of the ISO-ly
                          correct 'GB' mode;
                        Data updates.

2015-09-09      3.0011  Data updates

2015-07-20      3.0010  Fix a minor bug in the tests which were throiwing up
                          misleading failures if a country-specific subclass
                          was installed

2015-07-18      3.0009  Data updates;
                        Heard Island has nothing to do with the Marshall Islands!
                        Don't create stub objects when given just a country code
                          (see https://github.com/DrHyde/perl-modules-Number-Phone/issues/40)

2015-06-05      3.0008  Turn on the utf-8 flag on areacode names;
                        Data updates

2015-03-13      3.0007  Mostly just updated data from Google and OFCOM;
                        Announced approximately quarterly release schedule

2014-12-03      3.0006  Updated country codes and access codes for some
                          French overseas departments and ex-Soviet countries;
                        Fix bug confusing Georgia (GE) and South Georgia (GS);

2014-11-25      3.0005  Bugfix for stubs of countries with no national dialing
                          code.

2014-11-24      3.0004  Mailing list for users created;
                        Bugfixes for Curacao, Svalbard;
                        Bugfixes for stubs of countries where numbers can
                          begin with the national dialling prefix, eg Russia,
                          where the prefix is 8 but area codes like 812 exist;
                        New UK allocations

2014-09-04      3.0003  Bugfix: N::P->new("CC", 0...") now works
                          (where 0 is the national dialling prefix);
                        New UK allocations

2014-08-22      3.0002  Be more consistent when formatting UK numbers
                          for which we have incomplete data from OFCOM,,
                          no matter how they're instantiated;
                        New UK allocations

2014-06-17      3.0001  Make N::P::UK->format() cope better when OFCOM
                          don't tell us how long 08 numbers are;
                        New UK allocations

2014-04-25      3.0     Add Number::Phone::Lib, a libphonenumber-compatible
                          subclass. This lacks some functionality but is
                          considerably faster (for UK numbers) and compatible
                          (for non-geographic NANP numbers);
                        Add some new CA/US area codes;
                        Add more GMSS codes;
                        Use libphonenumber data for some NANP countries (some
                          have dodgy data*) for is_mobile, is_fixed_line

* Some countries have duplicate regexes for fixed_line/mobile in libphonenumber,
  and others have regexes that match the same data

2014-04-15      2.2003  Bugfix to tighten up length checking for
                          unallocated UK numbers;
                        New UK allocations

2013-07-04      2.2002  New UK allocations

2012-11-29      2.2001  Bugfix to avoid using broken third-party
                          Number::Phone::* modules that aren't proper
                          sub-classes;
                        New UK allocations

2012-11-21      2.2     Bugfix stub countries to not have random \ in
                          area names;
                        Minor doco fix "from Number::Phone::UK, it would
                          return DE" is obviously wrong;
                        Some stuff in stubs for the breakup of the
                          Dutch colonies in the Caribbean;
                        New UK allocations;
                        Documentation (and stub implementation in superclass)
                          for new operator_ported() method;
                        New dial_to() method;
                        Much doco improvement;
                        Switch to DBM::Deep 2 for UK data, to fix Windows
                          test failures, see eg http://tinyurl.com/n-p2-1fail;

2012-10-30      2.1     Fix so we don't die trying to parse Inmarsat
                          and other non-country entities, see
                          https://github.com/DrHyde/perl-modules-Number-Phone/issues/8

2012-10-30      2.0002  Fixed how we extract patterns of leading digits
                          for number formats from libphonenumber, see
                          https://github.com/DrHyde/perl-modules-Number-Phone/issues/7;
                        Added some minimal tests for this;
                        Import from libphonenumber

2012-10-27      2.0001  New UK allocations, import from libphonenumber
                          and OFCOM

2012-01-29      2.0     Fix nasty bug in formatting unallocated UK numbers;
                        Sint Maarten (SX) moved from +599 5 to +1 721;
                        UK formatting improved for 3+7 and 2+8 formats;
                        Isle of Man (IM), Guernsey (GG) and Jersey (JE)
                          now sort-of treated as countries;
                        The minimal objects returned when there's no detailed
                          country-specific module available are far more
                          intelligent, thanks to libphonenumber's data;
                        New UK allocations;
                        Deprecated ridiculous ways of calling most methods;

2011-10-29      1.9     New UK allocations;
                        Use libphonenumber's data for N::P::Country;
                        Use libphonenumber's data for N::P::NANP areanames

2011-08-18      1.8006  Add South Sudan (SS, +211) to N::P::Country;
                        New UK allocations

2011-08-05      1.8005  Include tests for bugfix in distro

2011-08-05      1.8004  Bugfix for divining country code from subclasses;
                        New UK allocations

2011-07-19      1.8003  UK parser made a teensy bit more robust;
                        UK parser bugfixed for 01768 88 mixed length stupidity
                        New UK allocations

2011-07-08      1.8002  New UK allocations;
                        Numerous small changes in Number::Phone::Country
                          Tidying number ranges in Mayotte;
                          Minor bugfix for Mayotte;
                          Gibraltar can't be called in the Spanish
                            numbering scheme any more;
                          Ellipsos satcomms have gone away;
                          Kazakhstan has +76 and +77 instead of random
                            bits all over +7;
                          Western Sahara number ranges identified;
                          Kosovo (no ISO3166 country code yet, so I'm
                            temporarily using KOS, as used by the UN
                            Development Programme, see
                            wikipedia://List_of_UNDP_country_codes);
                          Canada and the US have some new codes;
                          Netherlands Antilles are splitting up;
                          Dominican Republic now has +1 849;

2011-05-20      1.8001  New UK allocations

2010-09-12      1.8     INCOMPATIBLE CHANGE: constructor will now return
                          a minimal object instead of undef if there's no
                          country-specific module available
                        New UK allocations

2010-07-05      1.7101  Bugfix for N::P->new('CC', '+NN12345');

2010-07-02      1.7100  Bugfix for N::P->new('CC', '12345');
                        New UK allocations

2010-02-17      1.7004  New UK allocations;
                        UK geographic numbers are no longer assumed to
                          be fixed lines - damn those VoIP providers!

2009-10-18      1.7003  Minor bugfix, see https://rt.cpan.org/ ticket 48581;
                        New UK allocations

2009-04-22      1.7002  Fix minor bug (...::UK constructor returning 0
                          instead of undef for (some?) invalid numbers,
                          reported by Tomasz Chomiuk;
                        New UK allocations

2009-03-04      1.7001  Kill warnings about GE being deprecated;
                        Add missing dep on Digest::MD5

2009-02-26      1.7     Fix formatting for valid but unallocated UK numbers;
                        One of the UK telcos whose name we check for in
                          tests renamed itself;
                        New UK allocations;
                        Added country-to-code and national/international
                          prefix data to N::P::C, thanks to Michael Schout

2008-05-27      1.6     Magic country detection now works (thanks to
                          Jos Boumans for reporting the bug);
                        New UK allocations

2008-02-27      1.581   Added dependency on perl 5.006 (DBM::Deep uses 'our');
                        Removed docs from N::P::UK::DBM::Deep and
                          replaced with note about its status;
                        New UK allocations;
                        Removed t/pod* temporarily
2007-06-01      1.58    Number::Phone::Country updated to reflect KM/YT split
                          Mayotte moved into parts of +262, so now shares with
                          Reunion instead of Comoros
                        New UK allocations (in particular 03 range)
2007-03-13      1.57    New UK allocations;
                        Bundle DBM::Deep cos old version is incompatible
2007-02-24      1.5601  New UK allocations
2006-12-08      1.56    New UK allocations; 
                        Updated OFCOM parser;
                        Loads of Number::Phone::Country updates -
                          +1: NANP overlays: 226, 438, 762, 769, 829;
                          +269: Split Mayotte/Comores;
                          +381/2: Yugoslavia's *still* breaking up! (RS and ME);
                          +61 89162/4: Cocos and Christmas islands
                          +672 3: Norfolk Island
                          +672 1 0/1/2/3: Australian Antarctic bases
                          +681: Wallace and Futuna (corrected CCTLD)
                          +881 0: ICO Global
                          +881 3: Ellipso
                          +881 6: Iridium
                          +881 7: Iridium
                          +881 8: Globalstar
2006-08-25      1.55    Damnit, 1.54's ...UK->location() was wrong
2006-08-24      1.54    And again!
2006-08-23      1.53    Doh!  How we loaded location data was buggy
2006-08-23      1.52    Documentation patches;
                        Corrected CHANGELOG entry for v1.51;
                        Added location data for the UK
2006-08-22      1.51    Updated UK data to access DATA filehandle directly,
                          which depends on DBM::Deep 0.97 and above.  This
                          saves even more memory and makes the module load
                          a lot faster;
                        New UK allocations;
                        Some improvements and fixes in OFCOM data parser;
                        Bug fixes :-( for UK numbers with a significant F digit
2005-10-16      1.5     UK data moved into an embedded DBM::Deep structure
                          to save memory (NB: this adds dependencies)
                        Added location() method
2005-10-11      1.4004  New UK allocations
                        Removed 'use warnings' and 'use diagnostics' because
                          they pointlessly require a later version of perl;
                        re the above, tests now all use -w instead
2005-08-23      1.4003  Updated N::P::Country to use CS instead of YU for
                          Yugoslavia (ISO 3166 has been updated)
                        Fixed non-US and non-CA countries in N::P::Country's
                          phone2country_and_idd function (BUGFIX)
                        New UK allocations
2005-08-02      1.4002  New UK allocations
2005-06-27      1.4001  Added phone2country_and_idd to N::P::Country
                        new UK allocations etc
2005-05-18      1.4     updated Number::Phone::Country to remove American
                          Samoa's +684 code, it has migrated to +1 684 in
                          the NANP
                        N::P::C now correctly identifies US numbers
                          doesn't just assume a NANP number is US if it's
                          not assigned to another country
                        N::P::C no longer uses <DATA>
                        N::P::C added missing countries
                        some tidying in N::P::C's tests
                        N::P->country now defaults to returning current country
                        some tidying in N::P base class
                        new UK number allocations
                        UK data file now has version number (autogen from date)
                        UK data fixed for numbers "Allocated for Migration only"
                        Added NANP class and NANP::XX subclasses
2005-04-12      1.3004  new UK number allocations
                        removed 'use diagnostics'
2004-12-05      1.3003  new UK number allocations
2004-11-26      1.3002  OFCOM's UK data had some spurious spaces in numeric
                          fields, which broke some 070 numbers, these are now
                          filtered out
2004-11-10      1.3001  new UK number allocations
2004-10-20      1.3     Added note about number portability in UK module.
                        Added areaname() method to interface definition
                          and an implementation in the UK module.
                        Defined translates_to() method in superclass.
                        Added Number::Phone::Country to distribution.  This
                          was previously maintained by T.J.Mather.
2004-10-13      1.2001  No code changes, just new UK number allocations
2004-09-22      1.2     Oops, forgot to add is_ipphone to docs for N::P::UK
                          last time.
                        Updated N::P::UK::Data with some new number ranges.
2004-09-15      1.1     Number::Phone::UK now implements is_ipphone, and
                          N::P::UK::Data has appropriate data in it, as
                          OFCOM have this week publishedthe allocations they
                          made a few weeks ago.
                        Removed is_voip() alias, it didn't work properly
                          under all the possible ways of invoking it.