Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-phonenumbers for
openSUSE:Factory checked in at 2025-11-12 21:14:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-phonenumbers (Old)
and /work/SRC/openSUSE:Factory/.python-phonenumbers.new.1980 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-phonenumbers"
Wed Nov 12 21:14:26 2025 rev:44 rq:1317215 version:9.0.18
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-phonenumbers/python-phonenumbers.changes
2025-10-17 17:26:41.956309474 +0200
+++
/work/SRC/openSUSE:Factory/.python-phonenumbers.new.1980/python-phonenumbers.changes
2025-11-12 21:14:40.530858501 +0100
@@ -1,0 +2,6 @@
+Tue Nov 11 23:43:22 UTC 2025 - Dirk Müller <[email protected]>
+
+- update to 9.0.18
+ * Merge upstream 9.0.18 phonenumber updates
+
+-------------------------------------------------------------------
Old:
----
phonenumbers-9.0.16.tar.gz
New:
----
phonenumbers-9.0.18.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-phonenumbers.spec ++++++
--- /var/tmp/diff_new_pack.6wsaSz/_old 2025-11-12 21:14:42.494940829 +0100
+++ /var/tmp/diff_new_pack.6wsaSz/_new 2025-11-12 21:14:42.514941667 +0100
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-phonenumbers
-Version: 9.0.16
+Version: 9.0.18
Release: 0
Summary: Python version of Google's common library for international
phone numbers
License: Apache-2.0
++++++ phonenumbers-9.0.16.tar.gz -> phonenumbers-9.0.18.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/PKG-INFO
new/phonenumbers-9.0.18/PKG-INFO
--- old/phonenumbers-9.0.16/PKG-INFO 2025-10-10 14:04:06.693221600 +0200
+++ new/phonenumbers-9.0.18/PKG-INFO 2025-11-07 08:36:53.778277600 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: phonenumbers
-Version: 9.0.16
+Version: 9.0.18
Summary: Python version of Google's common library for parsing, formatting,
storing and validating international phone numbers.
Home-page: https://github.com/daviddrysdale/python-phonenumbers
Author: David Drysdale
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/__init__.py
new/phonenumbers-9.0.18/phonenumbers/__init__.py
--- old/phonenumbers-9.0.16/phonenumbers/__init__.py 2025-10-10
13:56:16.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/__init__.py 2025-11-07
08:07:55.000000000 +0100
@@ -146,7 +146,7 @@
# Version number is taken from the upstream libphonenumber version
# together with an indication of the version of the Python-specific code.
-__version__ = "9.0.16"
+__version__ = "9.0.18"
__all__ = ['PhoneNumber', 'CountryCodeSource', 'FrozenPhoneNumber',
'REGION_CODE_FOR_NON_GEO_ENTITY', 'NumberFormat',
'PhoneNumberDesc', 'PhoneMetadata',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonenumbers-9.0.16/phonenumbers/carrierdata/data0.py
new/phonenumbers-9.0.18/phonenumbers/carrierdata/data0.py
--- old/phonenumbers-9.0.16/phonenumbers/carrierdata/data0.py 2025-10-10
13:56:15.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/carrierdata/data0.py 2025-11-07
08:07:54.000000000 +0100
@@ -826,10 +826,6 @@
'22171':{'en': 'Orange'},
'22172':{'en': 'HAYO'},
'22175':{'en': 'Promobile'},
- '2217535':{'en': 'Orange'},
- '2217536':{'en': 'Orange'},
- '221757':{'en': 'Origines'},
- '2217585':{'en': 'Orange'},
'22176':{'en': 'Free'},
'22177':{'en': 'Orange'},
'22178':{'en': 'Orange'},
@@ -991,30 +987,6 @@
'2290197':{'en': 'MTN'},
'2290198':{'en': 'Moov'},
'2290199':{'en': 'Moov'},
- '2294':{'en': 'Celtiis'},
- '22942':{'en': 'MTN'},
- '22946':{'en': 'MTN'},
- '2295':{'en': 'MTN'},
- '22955':{'en': 'Moov'},
- '22960':{'en': 'Moov'},
- '22961':{'en': 'MTN'},
- '22962':{'en': 'MTN'},
- '22963':{'en': 'Moov'},
- '22964':{'en': 'Moov'},
- '22965':{'en': 'Moov'},
- '22966':{'en': 'MTN'},
- '22967':{'en': 'MTN'},
- '22968':{'en': 'Moov'},
- '22969':{'en': 'MTN'},
- '22990':{'en': 'MTN'},
- '22991':{'en': 'MTN'},
- '22993':{'en': 'BLK'},
- '22994':{'en': 'Moov'},
- '22995':{'en': 'Moov'},
- '22996':{'en': 'MTN'},
- '22997':{'en': 'MTN'},
- '22998':{'en': 'Moov'},
- '22999':{'en': 'Moov'},
'230525':{'en': 'Cellplus'},
'230526':{'en': 'Cellplus'},
'230527':{'en': 'MTML'},
@@ -1341,25 +1313,26 @@
'25479':{'en': 'Safaricom'},
'25561':{'en': 'Viettel'},
'25562':{'en': 'Viettel'},
- '25565':{'en': 'tiGO'},
+ '25565':{'en': 'Yas'},
'25566':{'en': 'SMILE'},
- '25567':{'en': 'tiGO'},
+ '25567':{'en': 'Yas'},
'25568':{'en': 'Airtel'},
'25569':{'en': 'Airtel'},
- '25571':{'en': 'tiGO'},
+ '25571':{'en': 'Yas'},
'25573':{'en': 'Tanzania Telecom'},
'25574':{'en': 'Vodacom'},
'25575':{'en': 'Vodacom'},
'25576':{'en': 'Vodacom'},
- '25577':{'en': 'tiGO'},
+ '25577':{'en': 'Yas'},
'25578':{'en': 'Airtel'},
'25579':{'en': 'Vodacom'},
'25670':{'en': 'Airtel'},
'25671':{'en': 'UTL'},
'256720':{'en': 'Smile'},
+ '256721':{'en': 'LycaMobile'},
'256724':{'en': 'Hamilton Telecom'},
- '256726':{'en': 'Tangerine'},
- '256727':{'en': 'Tangerine'},
+ '256726':{'en': 'LycaMobile'},
+ '256727':{'en': 'LycaMobile'},
'256728':{'en': 'Talkio'},
'25673':{'en': 'Hamilton Telecom'},
'25674':{'en': 'Airtel'},
@@ -1402,9 +1375,10 @@
'26098':{'en': 'Beeline Telecoms'},
'26132':{'en': 'Orange'},
'26133':{'en': 'Airtel'},
- '26134':{'en': 'Telma'},
+ '26134':{'en': 'Yas'},
+ '26136':{'en': 'Yas'},
'26137':{'en': 'Orange'},
- '26138':{'en': 'Telma'},
+ '26138':{'en': 'Yas'},
'26139':{'en': 'Blueline'},
'26263900':{'en': 'Orange'},
'26263901':{'en': 'Orange'},
@@ -3249,13 +3223,7 @@
'37250':{'en': 'Telia Eesti AS'},
'37251':{'en': 'Telia Eesti AS'},
'37252':{'en': 'Telia Eesti AS'},
- '372530':{'en': 'Telia Eesti AS'},
- '372533':{'en': 'Telia Eesti AS'},
- '372534':{'en': 'Telia Eesti AS'},
- '372536':{'en': 'Telia Eesti AS'},
- '372537':{'en': 'Telia Eesti AS'},
- '372538':{'en': 'Telia Eesti AS'},
- '372539':{'en': 'Telia Eesti AS'},
+ '37253':{'en': 'Telia Eesti AS'},
'37254':{'en': 'Telia Eesti AS'},
'372545':{'en': 'Elisa'},
'3725461':{'en': 'Elisa'},
@@ -3363,6 +3331,7 @@
'3773':{'en': 'Monaco Telecom'},
'3774':{'en': 'Monaco Telecom'},
'3776':{'en': 'Monaco Telecom'},
+ '3777':{'en': 'Monaco Telecom'},
'37861':{'en': 'TELENET'},
'37866':{'en': 'Telecom Italia San Marino'},
'38039':{'en': 'Kyivstar', 'uk':
u('\u041a\u0438\u0457\u0432\u0441\u0442\u0430\u0440')},
@@ -6984,6 +6953,7 @@
'5025919':{'en': 'Tigo'},
'502599':{'en': 'Tigo'},
'5028':{'en': 'Tigo'},
+ '5035':{'en': 'Claro'},
'503600':{'en': 'Tigo'},
'503601':{'en': 'Tigo'},
'503602':{'en': 'Tigo'},
@@ -10019,4 +9989,34 @@
'553199781':{'en': 'Telemig Celular'},
'553199782':{'en': 'Telemig Celular'},
'553199783':{'en': 'Telemig Celular'},
+ '553199784':{'en': 'Telemig Celular'},
+ '553199785':{'en': 'Telemig Celular'},
+ '553199786':{'en': 'Telemig Celular'},
+ '553199787':{'en': 'Telemig Celular'},
+ '553199788':{'en': 'Telemig Celular'},
+ '553199789':{'en': 'Telemig Celular'},
+ '553199791':{'en': 'Telemig Celular'},
+ '553199792':{'en': 'Telemig Celular'},
+ '553199793':{'en': 'Telemig Celular'},
+ '553199794':{'en': 'Telemig Celular'},
+ '553199795':{'en': 'Telemig Celular'},
+ '553199796':{'en': 'Telemig Celular'},
+ '553199797':{'en': 'Telemig Celular'},
+ '553199798':{'en': 'Telemig Celular'},
+ '553199799':{'en': 'Telemig Celular'},
+ '5531998':{'en': 'Telemig Celular'},
+ '553199800':{'en': 'TIM'},
+ '553199810':{'en': 'TIM'},
+ '553199820':{'en': 'TIM'},
+ '553199830':{'en': 'TIM'},
+ '553199840':{'en': 'TIM'},
+ '553199850':{'en': 'TIM'},
+ '553199860':{'en': 'TIM'},
+ '553199870':{'en': 'TIM'},
+ '553199880':{'en': 'TIM'},
+ '553199890':{'en': 'TIM'},
+ '553199901':{'en': 'Telemig Celular'},
+ '553199902':{'en': 'Telemig Celular'},
+ '553199903':{'en': 'Telemig Celular'},
+ '553199904':{'en': 'Telemig Celular'},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonenumbers-9.0.16/phonenumbers/carrierdata/data1.py
new/phonenumbers-9.0.18/phonenumbers/carrierdata/data1.py
--- old/phonenumbers-9.0.16/phonenumbers/carrierdata/data1.py 2025-10-10
13:56:15.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/carrierdata/data1.py 2025-11-07
08:07:54.000000000 +0100
@@ -19,36 +19,6 @@
# limitations under the License.
data = {
- '553199784':{'en': 'Telemig Celular'},
- '553199785':{'en': 'Telemig Celular'},
- '553199786':{'en': 'Telemig Celular'},
- '553199787':{'en': 'Telemig Celular'},
- '553199788':{'en': 'Telemig Celular'},
- '553199789':{'en': 'Telemig Celular'},
- '553199791':{'en': 'Telemig Celular'},
- '553199792':{'en': 'Telemig Celular'},
- '553199793':{'en': 'Telemig Celular'},
- '553199794':{'en': 'Telemig Celular'},
- '553199795':{'en': 'Telemig Celular'},
- '553199796':{'en': 'Telemig Celular'},
- '553199797':{'en': 'Telemig Celular'},
- '553199798':{'en': 'Telemig Celular'},
- '553199799':{'en': 'Telemig Celular'},
- '5531998':{'en': 'Telemig Celular'},
- '553199800':{'en': 'TIM'},
- '553199810':{'en': 'TIM'},
- '553199820':{'en': 'TIM'},
- '553199830':{'en': 'TIM'},
- '553199840':{'en': 'TIM'},
- '553199850':{'en': 'TIM'},
- '553199860':{'en': 'TIM'},
- '553199870':{'en': 'TIM'},
- '553199880':{'en': 'TIM'},
- '553199890':{'en': 'TIM'},
- '553199901':{'en': 'Telemig Celular'},
- '553199902':{'en': 'Telemig Celular'},
- '553199903':{'en': 'Telemig Celular'},
- '553199904':{'en': 'Telemig Celular'},
'553199905':{'en': 'Telemig Celular'},
'553199906':{'en': 'Telemig Celular'},
'553199907':{'en': 'Telemig Celular'},
@@ -9885,6 +9855,7 @@
'569998':{'en': 'Claro'},
'569999':{'en': 'Entel'},
'5699990':{'en': 'Tesacom'},
+ '573000':{'en': 'Tigo'},
'573002':{'en': 'Tigo'},
'573003':{'en': 'Tigo'},
'573004':{'en': 'Tigo'},
@@ -9893,12 +9864,14 @@
'573007':{'en': 'Tigo'},
'573008':{'en': 'Tigo'},
'573009':{'en': 'Tigo'},
+ '573010':{'en': 'Tigo'},
'573012':{'en': 'Tigo'},
'573013':{'en': 'Tigo'},
'573014':{'en': 'Tigo'},
'573015':{'en': 'Tigo'},
'573016':{'en': 'Tigo'},
'573017':{'en': 'Tigo'},
+ '573020':{'en': 'Tigo'},
'573022':{'en': 'Tigo'},
'573023':{'en': 'Tigo'},
'573024':{'en': 'Tigo'},
@@ -9908,13 +9881,11 @@
'573025':{'en': 'Partners Telecom Colombia'},
'573026':{'en': 'Partners Telecom Colombia'},
'573027':{'en': 'Partners Telecom Colombia'},
- '5730280':{'en': 'Partners Telecom Colombia'},
- '5730281':{'en': 'Partners Telecom Colombia'},
- '5730282':{'en': 'Partners Telecom Colombia'},
- '5730283':{'en': 'Partners Telecom Colombia'},
- '5730284':{'en': 'Partners Telecom Colombia'},
- '5730285':{'en': 'Partners Telecom Colombia'},
- '5730286':{'en': 'Partners Telecom Colombia'},
+ '573028':{'en': 'Partners Telecom Colombia'},
+ '5730287':{'en': 'Tigo'},
+ '5730288':{'en': 'Tigo'},
+ '5730289':{'en': 'Tigo'},
+ '573029':{'en': 'Tigo'},
'57303':{'en': 'Uff!'},
'5730410':{'en': 'Tigo'},
'5730411':{'en': 'Tigo'},
@@ -10019,4 +9990,33 @@
'573058':{'en': 'Tigo'},
'5730590':{'en': 'Tigo'},
'5730591':{'en': 'Tigo'},
+ '5730592':{'en': 'Tigo'},
+ '5730593':{'en': 'Tigo'},
+ '5730594':{'en': 'Tigo'},
+ '5730595':{'en': 'Tigo'},
+ '573102':{'en': 'Claro'},
+ '573103':{'en': 'Claro'},
+ '573104':{'en': 'Claro'},
+ '573105':{'en': 'Claro'},
+ '573106':{'en': 'Claro'},
+ '573107':{'en': 'Claro'},
+ '573108':{'en': 'Claro'},
+ '5731091':{'en': 'Claro'},
+ '5731092':{'en': 'Claro'},
+ '5731093':{'en': 'Claro'},
+ '57310990':{'en': 'Claro'},
+ '57310991':{'en': 'Claro'},
+ '573112':{'en': 'Claro'},
+ '573113':{'en': 'Claro'},
+ '573114':{'en': 'Claro'},
+ '573115':{'en': 'Claro'},
+ '573116':{'en': 'Claro'},
+ '573117':{'en': 'Claro'},
+ '573118':{'en': 'Claro'},
+ '573122':{'en': 'Claro'},
+ '573123':{'en': 'Claro'},
+ '573124':{'en': 'Claro'},
+ '573125':{'en': 'Claro'},
+ '573126':{'en': 'Claro'},
+ '573127':{'en': 'Claro'},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonenumbers-9.0.16/phonenumbers/carrierdata/data2.py
new/phonenumbers-9.0.18/phonenumbers/carrierdata/data2.py
--- old/phonenumbers-9.0.16/phonenumbers/carrierdata/data2.py 2025-10-10
13:56:15.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/carrierdata/data2.py 2025-11-07
08:07:54.000000000 +0100
@@ -19,35 +19,6 @@
# limitations under the License.
data = {
- '5730592':{'en': 'Tigo'},
- '5730593':{'en': 'Tigo'},
- '5730594':{'en': 'Tigo'},
- '5730595':{'en': 'Tigo'},
- '573102':{'en': 'Claro'},
- '573103':{'en': 'Claro'},
- '573104':{'en': 'Claro'},
- '573105':{'en': 'Claro'},
- '573106':{'en': 'Claro'},
- '573107':{'en': 'Claro'},
- '573108':{'en': 'Claro'},
- '5731091':{'en': 'Claro'},
- '5731092':{'en': 'Claro'},
- '5731093':{'en': 'Claro'},
- '57310990':{'en': 'Claro'},
- '57310991':{'en': 'Claro'},
- '573112':{'en': 'Claro'},
- '573113':{'en': 'Claro'},
- '573114':{'en': 'Claro'},
- '573115':{'en': 'Claro'},
- '573116':{'en': 'Claro'},
- '573117':{'en': 'Claro'},
- '573118':{'en': 'Claro'},
- '573122':{'en': 'Claro'},
- '573123':{'en': 'Claro'},
- '573124':{'en': 'Claro'},
- '573125':{'en': 'Claro'},
- '573126':{'en': 'Claro'},
- '573127':{'en': 'Claro'},
'573128':{'en': 'Claro'},
'573132':{'en': 'Claro'},
'573133':{'en': 'Claro'},
@@ -924,11 +895,7 @@
'614808':{'en': 'Pivotel Satellite'},
'61481':{'en': 'Optus'},
'61482':{'en': 'Optus'},
- '614830':{'en': 'Telstra'},
- '614831':{'en': 'Telstra'},
- '614832':{'en': 'Telstra'},
- '614833':{'en': 'Telstra'},
- '614838':{'en': 'Telstra'},
+ '61483':{'en': 'Telstra'},
'614839':{'en': 'Optus'},
'61484':{'en': 'Telstra'},
'61485':{'en': 'Optus'},
@@ -946,6 +913,7 @@
'6148985':{'en': 'MessageBird'},
'614899':{'en': 'Pivotel Satellite'},
'6149':{'en': 'Telstra'},
+ '61495':{'en': 'Optus'},
'62811':{'en': 'Telkomsel'},
'62812':{'en': 'Telkomsel'},
'62813':{'en': 'Telkomsel'},
@@ -1402,6 +1370,7 @@
'658862':{'en': 'M1'},
'658865':{'en': 'Simba'},
'658866':{'en': 'M1'},
+ '658867':{'en': 'M1'},
'658868':{'en': 'M1'},
'658869':{'en': 'SingTel'},
'658876':{'en': 'SingTel'},
@@ -1478,6 +1447,7 @@
'658986':{'en': 'Simba'},
'658987':{'en': 'Simba'},
'658988':{'en': 'Simba'},
+ '658989':{'en': 'Simba'},
'659001':{'en': 'StarHub'},
'659002':{'en': 'StarHub'},
'659003':{'en': 'StarHub'},
@@ -3881,7 +3851,7 @@
'8524616':{'en': 'China Unicom', 'zh': u('\u4e2d\u56fd\u8054\u901a')},
'8524617':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'8524618':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
- '8524619':{'en': 'China Telecom Global Limited', 'zh': 'China Telecom Global
Limited'},
+ '8524619':{'en': 'China Telecom Global Limited', 'zh':
u('\u4e2d\u56fd\u7535\u4fe1\u56fd\u9645\u6709\u9650\u516c\u53f8')},
'8524620':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'8524621':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'8524622':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
@@ -3917,8 +3887,8 @@
'8524662':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'8524663':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'8524664':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
- '8524665':{'en': 'China Telecom Global Limited', 'zh': 'China Telecom Global
Limited'},
- '8524666':{'en': 'China Telecom Global Limited', 'zh': 'China Telecom Global
Limited'},
+ '8524665':{'en': 'China Telecom Global Limited', 'zh':
u('\u4e2d\u56fd\u7535\u4fe1\u56fd\u9645\u6709\u9650\u516c\u53f8')},
+ '8524666':{'en': 'China Telecom Global Limited', 'zh':
u('\u4e2d\u56fd\u7535\u4fe1\u56fd\u9645\u6709\u9650\u516c\u53f8')},
'852467':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'8524678':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf')},
'8524679':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf')},
@@ -3942,7 +3912,7 @@
'8524742':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'8524743':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf')},
'8524744':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf')},
- '8524748':{'en': 'China Telecom Global Limited', 'zh': 'China Telecom Global
Limited'},
+ '8524748':{'en': 'China Telecom Global Limited', 'zh':
u('\u4e2d\u56fd\u7535\u4fe1\u56fd\u9645\u6709\u9650\u516c\u53f8')},
'852475':{'en': 'Hutchison Telecom', 'zh':
u('\u548c\u8a18\u96fb\u8a71\u6709\u9650\u516c\u53f8')},
'852476':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8')},
'852510':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8'),
'zh_Hant': u('\u4e2d\u570b\u79fb\u52d5')},
@@ -4275,8 +4245,8 @@
'8529592':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf')},
'8529593':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf')},
'8529594':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf')},
- '8529596':{'en': 'China Telecom Global Limited', 'zh': 'China Telecom Global
Limited'},
- '8529597':{'en': 'China Telecom Global Limited', 'zh': 'China Telecom Global
Limited'},
+ '8529596':{'en': 'China Telecom Global Limited', 'zh':
u('\u4e2d\u56fd\u7535\u4fe1\u56fd\u9645\u6709\u9650\u516c\u53f8')},
+ '8529597':{'en': 'China Telecom Global Limited', 'zh':
u('\u4e2d\u56fd\u7535\u4fe1\u56fd\u9645\u6709\u9650\u516c\u53f8')},
'852960':{'en': 'China Mobile', 'zh': u('\u4e2d\u56fd\u79fb\u52a8'),
'zh_Hant': u('\u4e2d\u570b\u79fb\u52d5')},
'852961':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf'),
'zh_Hant': u('\u9999\u6e2f\u79fb\u52d5\u901a\u8a0a')},
'852962':{'en': 'HKT', 'zh': u('\u9999\u6e2f\u79fb\u52a8\u901a\u8baf'),
'zh_Hant': u('\u9999\u6e2f\u79fb\u52d5\u901a\u8a0a')},
@@ -8272,6 +8242,7 @@
'961787':{'en': 'Touch'},
'961788':{'en': 'Touch'},
'961789':{'en': 'Touch'},
+ '961790':{'en': 'Touch'},
'961791':{'en': 'Alfa'},
'961793':{'en': 'Alfa'},
'961810':{'en': 'Touch'},
@@ -8421,6 +8392,7 @@
'97255442':{'en': 'Xphone'},
'97255443':{'en': 'Yossi'},
'9725545':{'en': 'Maskyoo'},
+ '9725546':{'en': 'Xphone'},
'9725550':{'en': 'Annatel'},
'9725551':{'en': 'Annatel'},
'9725552':{'en': 'Annatel'},
@@ -8546,18 +8518,21 @@
'9892':{'en': 'Rightel', 'fa': u('\u0631\u0627\u06cc\u062a\u0644')},
'9893':{'en': 'Irancell', 'fa':
u('\u0627\u06cc\u0631\u0627\u0646\u0633\u0644')},
'98931':{'en': 'MTCE', 'fa': u('\u0627\u0633\u067e\u0627\u062f\u0627\u0646')},
- '98932':{'en': 'Taliya', 'fa': u('\u062a\u0627\u0644\u06cc\u0627')},
+ '98932':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
'98934':{'en': 'TeleKish', 'fa':
u('\u062a\u0644\u0647\u200c\u06a9\u06cc\u0634')},
'98990':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
'98991':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
+ '98992':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
+ '98993':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
'98994':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
'989955':{'en': 'Irancell', 'fa':
u('\u0627\u06cc\u0631\u0627\u0646\u0633\u0644')},
'98996':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
'989981':{'en': 'Shatel Mobile', 'fa': u('\u0634\u0627\u062a\u0644
\u0645\u0648\u0628\u0627\u06cc\u0644')},
'989982':{'en': 'Shatel Mobile', 'fa': u('\u0634\u0627\u062a\u0644
\u0645\u0648\u0628\u0627\u06cc\u0644')},
- '9899900':{'en': 'LOTUSTEL', 'fa':
u('\u0644\u0648\u062a\u0648\u0633\u200c\u062a\u0644')},
- '9899902':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
+ '989990':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
'989991':{'en': 'Irancell', 'fa':
u('\u0627\u06cc\u0631\u0627\u0646\u0633\u0644')},
+ '989995':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
+ '989996':{'en': 'IR-MCI', 'fa': u('\u0647\u0645\u0631\u0627\u0647
\u0627\u0648\u0644')},
'989998':{'en': 'Rightel', 'fa': u('\u0631\u0627\u06cc\u062a\u0644')},
'9899996':{'en': 'Rightel', 'fa': u('\u0631\u0627\u06cc\u062a\u0644')},
'9899997':{'en': 'Rightel', 'fa': u('\u0631\u0627\u06cc\u062a\u0644')},
@@ -8587,6 +8562,7 @@
'992337':{'en': 'ZET-MOBILE'},
'992338':{'en': 'ZET-MOBILE'},
'992339':{'en': 'ZET-MOBILE'},
+ '99238':{'en': 'ZET-MOBILE'},
'99240':{'en': 'ZET-MOBILE'},
'99241':{'en': 'Megafon'},
'992440':{'en': 'ZET-MOBILE'},
@@ -8597,6 +8573,7 @@
'992449':{'en': 'ZET-MOBILE'},
'99250':{'en': 'Tcell'},
'99255':{'en': 'Megafon'},
+ '9926':{'en': 'ZET-MOBILE'},
'99270':{'en': 'Tcell'},
'99271':{'en': 'Babilon-M'},
'99275':{'en': 'Babilon-M'},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_AU.py
new/phonenumbers-9.0.18/phonenumbers/data/region_AU.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_AU.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_AU.py 2025-11-07
08:07:49.000000000 +0100
@@ -3,8 +3,8 @@
PHONE_METADATA_AU = PhoneMetadata(id='AU', country_code=61,
international_prefix='001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011',
general_desc=PhoneNumberDesc(national_number_pattern='1(?:[0-79]\\d{7}(?:\\d(?:\\d{2})?)?|8[0-24-9]\\d{7})|[2-478]\\d{8}|1\\d{4,7}',
possible_length=(5, 6, 7, 8, 9, 10, 12)),
-
fixed_line=PhoneNumberDesc(national_number_pattern='(?:(?:2(?:(?:[0-26-9]\\d|3[0-8]|5[0135-9])\\d|4(?:[02-9]\\d|10))|3(?:(?:[0-3589]\\d|6[1-9]|7[0-35-9])\\d|4(?:[0-578]\\d|90))|7(?:[013-57-9]\\d|2[0-8])\\d)\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|(?:6[0-8]|[78]\\d)\\d{3}|9(?:[02-9]\\d{3}|1(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79])))))\\d{3}',
example_number='212345678', possible_length=(9,),
possible_length_local_only=(8,)),
-
mobile=PhoneNumberDesc(national_number_pattern='4(?:79[01]|83[0-389]|94[0-478])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-37-9])\\d{6}',
example_number='412345678', possible_length=(9,)),
+
fixed_line=PhoneNumberDesc(national_number_pattern='(?:(?:241|349)0\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|91(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79]))))\\d{3}|(?:2(?:[0-26-9]\\d|3[0-8]|4[02-9]|5[0135-9])|3(?:[0-3589]\\d|4[0-578]|6[1-9]|7[0-35-9])|7(?:[013-57-9]\\d|2[0-8])|8(?:55|6[0-8]|[78]\\d|9[02-9]))\\d{6}',
example_number='212345678', possible_length=(9,),
possible_length_local_only=(8,)),
+
mobile=PhoneNumberDesc(national_number_pattern='4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}',
example_number='412345678', possible_length=(9,)),
toll_free=PhoneNumberDesc(national_number_pattern='180(?:0\\d{3}|2)\\d{3}',
example_number='1800123456', possible_length=(7, 10)),
premium_rate=PhoneNumberDesc(national_number_pattern='190[0-26]\\d{6}',
example_number='1900123456', possible_length=(10,)),
shared_cost=PhoneNumberDesc(national_number_pattern='13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}',
example_number='1300123456', possible_length=(6, 8, 10, 12)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_BJ.py
new/phonenumbers-9.0.18/phonenumbers/data/region_BJ.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_BJ.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_BJ.py 2025-11-07
08:07:49.000000000 +0100
@@ -2,11 +2,11 @@
from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
PHONE_METADATA_BJ = PhoneMetadata(id='BJ', country_code=229,
international_prefix='00',
-
general_desc=PhoneNumberDesc(national_number_pattern='(?:01\\d|[24-689])\\d{7}',
possible_length=(8, 10)),
-
fixed_line=PhoneNumberDesc(national_number_pattern='2090\\d{4}|(?:012\\d\\d|2(?:02|1[037]|2[45]|3[68]|4\\d))\\d{5}',
example_number='0120211234', possible_length=(8, 10)),
-
mobile=PhoneNumberDesc(national_number_pattern='(?:01(?:2[5-9]|[4-69]\\d)|4[0-8]|[56]\\d|9[013-9])\\d{6}',
example_number='0195123456', possible_length=(8, 10)),
+ general_desc=PhoneNumberDesc(national_number_pattern='(?:01\\d|8)\\d{7}',
possible_length=(8, 10)),
+ fixed_line=PhoneNumberDesc(national_number_pattern='012\\d{7}',
example_number='0120211234', possible_length=(10,)),
+
mobile=PhoneNumberDesc(national_number_pattern='01(?:2[5-9]|[4-69]\\d)\\d{6}',
example_number='0195123456', possible_length=(10,)),
voip=PhoneNumberDesc(national_number_pattern='857[58]\\d{4}',
example_number='85751234', possible_length=(8,)),
uan=PhoneNumberDesc(national_number_pattern='81\\d{6}',
example_number='81123456', possible_length=(8,)),
- number_format=[NumberFormat(pattern='(\\d{2})(\\d{2})(\\d{2})(\\d{2})',
format='\\1 \\2 \\3 \\4', leading_digits_pattern=['[24-689]']),
+ number_format=[NumberFormat(pattern='(\\d{2})(\\d{2})(\\d{2})(\\d{2})',
format='\\1 \\2 \\3 \\4', leading_digits_pattern=['8']),
NumberFormat(pattern='(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})',
format='\\1 \\2 \\3 \\4 \\5', leading_digits_pattern=['0'])],
mobile_number_portable_region=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_CC.py
new/phonenumbers-9.0.18/phonenumbers/data/region_CC.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_CC.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_CC.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_CC = PhoneMetadata(id='CC', country_code=61,
international_prefix='001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011',
general_desc=PhoneNumberDesc(national_number_pattern='1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}',
possible_length=(6, 7, 8, 9, 10, 12)),
fixed_line=PhoneNumberDesc(national_number_pattern='8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}',
example_number='891621234', possible_length=(9,),
possible_length_local_only=(8,)),
-
mobile=PhoneNumberDesc(national_number_pattern='4(?:79[01]|83[0-389]|94[0-478])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-37-9])\\d{6}',
example_number='412345678', possible_length=(9,)),
+
mobile=PhoneNumberDesc(national_number_pattern='4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}',
example_number='412345678', possible_length=(9,)),
toll_free=PhoneNumberDesc(national_number_pattern='180(?:0\\d{3}|2)\\d{3}',
example_number='1800123456', possible_length=(7, 10)),
premium_rate=PhoneNumberDesc(national_number_pattern='190[0-26]\\d{6}',
example_number='1900123456', possible_length=(10,)),
shared_cost=PhoneNumberDesc(national_number_pattern='13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}',
example_number='1300123456', possible_length=(6, 8, 10, 12)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_CX.py
new/phonenumbers-9.0.18/phonenumbers/data/region_CX.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_CX.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_CX.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_CX = PhoneMetadata(id='CX', country_code=61,
international_prefix='001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011',
general_desc=PhoneNumberDesc(national_number_pattern='1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}',
possible_length=(6, 7, 8, 9, 10, 12)),
fixed_line=PhoneNumberDesc(national_number_pattern='8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}',
example_number='891641234', possible_length=(9,),
possible_length_local_only=(8,)),
-
mobile=PhoneNumberDesc(national_number_pattern='4(?:79[01]|83[0-389]|94[0-478])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-37-9])\\d{6}',
example_number='412345678', possible_length=(9,)),
+
mobile=PhoneNumberDesc(national_number_pattern='4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}',
example_number='412345678', possible_length=(9,)),
toll_free=PhoneNumberDesc(national_number_pattern='180(?:0\\d{3}|2)\\d{3}',
example_number='1800123456', possible_length=(7, 10)),
premium_rate=PhoneNumberDesc(national_number_pattern='190[0-26]\\d{6}',
example_number='1900123456', possible_length=(10,)),
shared_cost=PhoneNumberDesc(national_number_pattern='13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}',
example_number='1300123456', possible_length=(6, 8, 10, 12)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_ET.py
new/phonenumbers-9.0.18/phonenumbers/data/region_ET.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_ET.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_ET.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_ET = PhoneMetadata(id='ET', country_code=251,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='(?:11|[2-579]\\d)\\d{7}',
possible_length=(9,), possible_length_local_only=(7,)),
fixed_line=PhoneNumberDesc(national_number_pattern='11667[01]\\d{3}|(?:11(?:1(?:1[1-468]|2[2-7]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8]|7\\d)|5(?:1[578]|44|5[0-4])|6(?:1[578]|2[69]|39|4[5-7]|5[0-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:119|22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\d)))\\d{4}',
example_number='111112345', possible_length=(9,),
possible_length_local_only=(7,)),
-
mobile=PhoneNumberDesc(national_number_pattern='700[1-9]\\d{5}|(?:7(?:0[1-9]|1[0-8]|22|77|86|99)|9\\d\\d)\\d{6}',
example_number='911234567', possible_length=(9,)),
+
mobile=PhoneNumberDesc(national_number_pattern='700[1-9]\\d{5}|(?:7(?:0[1-9]|1[0-8]|2[1-35-79]|3\\d|77|86|99)|9\\d\\d)\\d{6}',
example_number='911234567', possible_length=(9,)),
national_prefix='0',
national_prefix_for_parsing='0',
number_format=[NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{4})',
format='\\1 \\2 \\3', leading_digits_pattern=['[1-579]'],
national_prefix_formatting_rule='0\\1')])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_GB.py
new/phonenumbers-9.0.18/phonenumbers/data/region_GB.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_GB.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_GB.py 2025-11-07
08:07:49.000000000 +0100
@@ -3,7 +3,7 @@
PHONE_METADATA_GB = PhoneMetadata(id='GB', country_code=44,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}',
possible_length=(7, 9, 10), possible_length_local_only=(4, 5, 6, 8)),
-
fixed_line=PhoneNumberDesc(national_number_pattern='(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-35])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|50))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[
2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}',
example_number='1212345678', possible_length=(9, 10),
possible_length_local_only=(4, 5, 6, 7, 8)),
+
fixed_line=PhoneNumberDesc(national_number_pattern='(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-5])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|5[01]))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|
3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}',
example_number='1212345678', possible_length=(9, 10),
possible_length_local_only=(4, 5, 6, 7, 8)),
mobile=PhoneNumberDesc(national_number_pattern='7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}',
example_number='7400123456', possible_length=(10,)),
toll_free=PhoneNumberDesc(national_number_pattern='80[08]\\d{7}|800\\d{6}|8001111',
example_number='8001234567', possible_length=(7, 9, 10)),
premium_rate=PhoneNumberDesc(national_number_pattern='(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d',
example_number='9012345678', possible_length=(7, 10)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_IL.py
new/phonenumbers-9.0.18/phonenumbers/data/region_IL.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_IL.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_IL.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_IL = PhoneMetadata(id='IL', country_code=972,
international_prefix='0(?:0|1[2-9])',
general_desc=PhoneNumberDesc(national_number_pattern='1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}',
possible_length=(7, 8, 9, 10, 11, 12)),
fixed_line=PhoneNumberDesc(national_number_pattern='153\\d{8,9}|29[1-9]\\d{5}|(?:2[0-8]|[3489]\\d)\\d{6}',
example_number='21234567', possible_length=(8, 11, 12),
possible_length_local_only=(7,)),
-
mobile=PhoneNumberDesc(national_number_pattern='55(?:4(?:0[01]|10|5[0-7])|57[0-289])\\d{4}|5(?:(?:[0-2][02-9]|[36]\\d|[49][2-9]|8[3-7])\\d|5(?:01|2\\d|3[0-3]|4[34]|5[0-25689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\d{5}',
example_number='502345678', possible_length=(9,)),
+
mobile=PhoneNumberDesc(national_number_pattern='55(?:4(?:0[0-2]|[16]0|5[0-7])|57[0-289])\\d{4}|5(?:(?:[0-2][02-9]|[36]\\d|[49][2-9]|8[3-7])\\d|5(?:01|2\\d|3[0-3]|4[34]|5[0-25689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\d{5}',
example_number='502345678', possible_length=(9,)),
toll_free=PhoneNumberDesc(national_number_pattern='1(?:255|80[019]\\d{3})\\d{3}',
example_number='1800123456', possible_length=(7, 10)),
premium_rate=PhoneNumberDesc(national_number_pattern='1212\\d{4}|1(?:200|9(?:0[0-2]|19))\\d{6}',
example_number='1919123456', possible_length=(8, 10)),
shared_cost=PhoneNumberDesc(national_number_pattern='1700\\d{6}',
example_number='1700123456', possible_length=(10,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_IR.py
new/phonenumbers-9.0.18/phonenumbers/data/region_IR.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_IR.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_IR.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_IR = PhoneMetadata(id='IR', country_code=98,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}',
possible_length=(4, 5, 6, 7, 10), possible_length_local_only=(8,)),
fixed_line=PhoneNumberDesc(national_number_pattern='(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\d{7}|[16]\\d{3}(?:\\d{4})?|[289]\\d{3}(?:\\d(?:\\d{3})?)?)|94(?:000[09]|(?:12\\d|30[0-2])\\d|2(?:121|[2689]0\\d)|4(?:111|40\\d))\\d{4}',
example_number='2123456789', possible_length=(6, 7, 10),
possible_length_local_only=(4, 5, 8)),
-
mobile=PhoneNumberDesc(national_number_pattern='9(?:(?:0[0-5]|[13]\\d|2[0-3])\\d\\d|9(?:[0-46]\\d\\d|5(?:10|5\\d)|8(?:[12]\\d|88)|9(?:0[0-3]|[19]\\d|21|69|77|8[7-9])))\\d{5}',
example_number='9123456789', possible_length=(10,)),
+
mobile=PhoneNumberDesc(national_number_pattern='9(?:(?:0[0-5]|[13]\\d|2[0-3])\\d\\d|9(?:[0-46]\\d\\d|5(?:10|5\\d)|8(?:[12]\\d|88)|9(?:[0159]\\d|21|69|77|8[7-9])))\\d{5}',
example_number='9123456789', possible_length=(10,)),
uan=PhoneNumberDesc(national_number_pattern='96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])',
example_number='9601', possible_length=(4, 5)),
no_international_dialling=PhoneNumberDesc(national_number_pattern='9(?:4440\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))',
possible_length=(4, 5, 10)),
national_prefix='0',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_LB.py
new/phonenumbers-9.0.18/phonenumbers/data/region_LB.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_LB.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_LB.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_LB = PhoneMetadata(id='LB', country_code=961,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='[27-9]\\d{7}|[13-9]\\d{6}',
possible_length=(7, 8)),
fixed_line=PhoneNumberDesc(national_number_pattern='7(?:62|8[0-6]|9[04-9])\\d{4}|(?:[14-69]\\d|2(?:[14-69]\\d|[78][1-9])|7[2-57]|8[02-9])\\d{5}',
example_number='1123456', possible_length=(7, 8)),
-
mobile=PhoneNumberDesc(national_number_pattern='(?:(?:3|81)\\d|7(?:[01]\\d|6[013-9]|8[7-9]|9[1-3]))\\d{5}',
example_number='71123456', possible_length=(7, 8)),
+
mobile=PhoneNumberDesc(national_number_pattern='(?:(?:3|81)\\d|7(?:[01]\\d|6[013-9]|8[7-9]|9[0-3]))\\d{5}',
example_number='71123456', possible_length=(7, 8)),
premium_rate=PhoneNumberDesc(national_number_pattern='9[01]\\d{6}',
example_number='90123456', possible_length=(8,)),
shared_cost=PhoneNumberDesc(national_number_pattern='80\\d{6}',
example_number='80123456', possible_length=(8,)),
national_prefix='0',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_MC.py
new/phonenumbers-9.0.18/phonenumbers/data/region_MC.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_MC.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_MC.py 2025-11-07
08:07:49.000000000 +0100
@@ -2,9 +2,9 @@
from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
PHONE_METADATA_MC = PhoneMetadata(id='MC', country_code=377,
international_prefix='00',
-
general_desc=PhoneNumberDesc(national_number_pattern='(?:[3489]|6\\d)\\d{7}',
possible_length=(8, 9)),
+
general_desc=PhoneNumberDesc(national_number_pattern='(?:[3489]|[67]\\d)\\d{7}',
possible_length=(8, 9)),
fixed_line=PhoneNumberDesc(national_number_pattern='(?:870|9[2-47-9]\\d)\\d{5}',
example_number='99123456', possible_length=(8,)),
-
mobile=PhoneNumberDesc(national_number_pattern='4(?:[469]\\d|5[1-9])\\d{5}|(?:3|6\\d)\\d{7}',
example_number='612345678', possible_length=(8, 9)),
+
mobile=PhoneNumberDesc(national_number_pattern='4(?:[469]\\d|5[1-9])\\d{5}|(?:3|[67]\\d)\\d{7}',
example_number='612345678', possible_length=(8, 9)),
toll_free=PhoneNumberDesc(national_number_pattern='(?:800|90\\d)\\d{5}',
example_number='90123456', possible_length=(8,)),
no_international_dialling=PhoneNumberDesc(national_number_pattern='8[07]0\\d{5}',
possible_length=(8,)),
national_prefix='0',
@@ -12,7 +12,7 @@
number_format=[NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2})',
format='\\1 \\2 \\3', leading_digits_pattern=['87']),
NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3})', format='\\1 \\2 \\3',
leading_digits_pattern=['4'], national_prefix_formatting_rule='0\\1'),
NumberFormat(pattern='(\\d{2})(\\d{2})(\\d{2})(\\d{2})', format='\\1
\\2 \\3 \\4', leading_digits_pattern=['[389]']),
- NumberFormat(pattern='(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})',
format='\\1 \\2 \\3 \\4 \\5', leading_digits_pattern=['6'],
national_prefix_formatting_rule='0\\1')],
+ NumberFormat(pattern='(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})',
format='\\1 \\2 \\3 \\4 \\5', leading_digits_pattern=['[67]'],
national_prefix_formatting_rule='0\\1')],
intl_number_format=[NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3})',
format='\\1 \\2 \\3', leading_digits_pattern=['4']),
NumberFormat(pattern='(\\d{2})(\\d{2})(\\d{2})(\\d{2})', format='\\1
\\2 \\3 \\4', leading_digits_pattern=['[389]']),
- NumberFormat(pattern='(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})',
format='\\1 \\2 \\3 \\4 \\5', leading_digits_pattern=['6'])])
+ NumberFormat(pattern='(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})',
format='\\1 \\2 \\3 \\4 \\5', leading_digits_pattern=['[67]'])])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_MG.py
new/phonenumbers-9.0.18/phonenumbers/data/region_MG.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_MG.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_MG.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_MG = PhoneMetadata(id='MG', country_code=261,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='[23]\\d{8}',
possible_length=(9,), possible_length_local_only=(7,)),
fixed_line=PhoneNumberDesc(national_number_pattern='2072[29]\\d{4}|20(?:2\\d|4[47]|5[3467]|6[279]|7[356]|8[268]|9[2457])\\d{5}',
example_number='202123456', possible_length=(9,),
possible_length_local_only=(7,)),
- mobile=PhoneNumberDesc(national_number_pattern='3[2-47-9]\\d{7}',
example_number='321234567', possible_length=(9,)),
+ mobile=PhoneNumberDesc(national_number_pattern='3[2-46-9]\\d{7}',
example_number='321234567', possible_length=(9,)),
voip=PhoneNumberDesc(national_number_pattern='22\\d{7}',
example_number='221234567', possible_length=(9,)),
national_prefix='0',
national_prefix_for_parsing='([24-9]\\d{6})$|0',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_PY.py
new/phonenumbers-9.0.18/phonenumbers/data/region_PY.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_PY.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_PY.py 2025-11-07
08:07:49.000000000 +0100
@@ -11,6 +11,7 @@
national_prefix='0',
national_prefix_for_parsing='0',
number_format=[NumberFormat(pattern='(\\d{3})(\\d{3,6})', format='\\1
\\2', leading_digits_pattern=['[2-9]0'],
national_prefix_formatting_rule='0\\1'),
+ NumberFormat(pattern='(\\d{7})', format='\\1',
leading_digits_pattern=['[15]']),
NumberFormat(pattern='(\\d{2})(\\d{5})', format='\\1 \\2',
leading_digits_pattern=['[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]'],
national_prefix_formatting_rule='(0\\1)'),
NumberFormat(pattern='(\\d{3})(\\d{4,5})', format='\\1 \\2',
leading_digits_pattern=['2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85'],
national_prefix_formatting_rule='(0\\1)'),
NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3,4})', format='\\1 \\2
\\3',
leading_digits_pattern=['2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]'],
national_prefix_formatting_rule='(0\\1)'),
@@ -18,4 +19,12 @@
NumberFormat(pattern='(\\d{3})(\\d{6})', format='\\1 \\2',
leading_digits_pattern=['9(?:[5-79]|8[1-7])'],
national_prefix_formatting_rule='0\\1'),
NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{3})', format='\\1 \\2 \\3',
leading_digits_pattern=['[2-8]'], national_prefix_formatting_rule='0\\1'),
NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['9'])],
+ intl_number_format=[NumberFormat(pattern='(\\d{3})(\\d{3,6})', format='\\1
\\2', leading_digits_pattern=['[2-9]0']),
+ NumberFormat(pattern='(\\d{2})(\\d{5})', format='\\1 \\2',
leading_digits_pattern=['[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]']),
+ NumberFormat(pattern='(\\d{3})(\\d{4,5})', format='\\1 \\2',
leading_digits_pattern=['2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85']),
+ NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3,4})', format='\\1 \\2
\\3',
leading_digits_pattern=['2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]']),
+ NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['87']),
+ NumberFormat(pattern='(\\d{3})(\\d{6})', format='\\1 \\2',
leading_digits_pattern=['9(?:[5-79]|8[1-7])']),
+ NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{3})', format='\\1 \\2 \\3',
leading_digits_pattern=['[2-8]']),
+ NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['9'])],
mobile_number_portable_region=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_QA.py
new/phonenumbers-9.0.18/phonenumbers/data/region_QA.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_QA.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_QA.py 2025-11-07
08:07:49.000000000 +0100
@@ -3,7 +3,7 @@
PHONE_METADATA_QA = PhoneMetadata(id='QA', country_code=974,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='800\\d{4}|(?:2|800)\\d{6}|(?:0080|[3-7])\\d{7}',
possible_length=(7, 8, 9, 11)),
-
fixed_line=PhoneNumberDesc(national_number_pattern='4(?:1111|2022)\\d{3}|4(?:[04]\\d\\d|14[0-6]|999)\\d{4}',
example_number='44123456', possible_length=(8,)),
+
fixed_line=PhoneNumberDesc(national_number_pattern='4(?:(?:[014]\\d\\d|999)\\d|2022)\\d{3}',
example_number='44123456', possible_length=(8,)),
mobile=PhoneNumberDesc(national_number_pattern='[35-7]\\d{7}',
example_number='33123456', possible_length=(8,)),
toll_free=PhoneNumberDesc(national_number_pattern='800\\d{4}|(?:0080[01]|800)\\d{6}',
example_number='8001234', possible_length=(7, 9, 11)),
pager=PhoneNumberDesc(national_number_pattern='2[136]\\d{5}',
example_number='2123456', possible_length=(7,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_SG.py
new/phonenumbers-9.0.18/phonenumbers/data/region_SG.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_SG.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_SG.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_SG = PhoneMetadata(id='SG', country_code=65,
international_prefix='0[0-3]\\d',
general_desc=PhoneNumberDesc(national_number_pattern='(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}',
possible_length=(8, 10, 11)),
fixed_line=PhoneNumberDesc(national_number_pattern='662[0-24-9]\\d{4}|6(?:[0-578]\\d|6[013-57-9]|9[0-35-9])\\d{5}',
example_number='61234567', possible_length=(8,)),
-
mobile=PhoneNumberDesc(national_number_pattern='898[02-8]\\d{4}|(?:8(?:0[1-9]|[1-8]\\d|9[0-7])|9[0-8]\\d)\\d{5}',
example_number='81234567', possible_length=(8,)),
+
mobile=PhoneNumberDesc(national_number_pattern='898[02-9]\\d{4}|(?:8(?:0[1-9]|[1-8]\\d|9[0-7])|9[0-8]\\d)\\d{5}',
example_number='81234567', possible_length=(8,)),
toll_free=PhoneNumberDesc(national_number_pattern='(?:18|8)00\\d{7}',
example_number='18001234567', possible_length=(10, 11)),
premium_rate=PhoneNumberDesc(national_number_pattern='1900\\d{7}',
example_number='19001234567', possible_length=(11,)),
voip=PhoneNumberDesc(national_number_pattern='(?:3[12]\\d|666)\\d{5}',
example_number='31234567', possible_length=(8,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_SN.py
new/phonenumbers-9.0.18/phonenumbers/data/region_SN.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_SN.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_SN.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_SN = PhoneMetadata(id='SN', country_code=221,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='(?:[378]\\d|93)\\d{7}',
possible_length=(9,)),
fixed_line=PhoneNumberDesc(national_number_pattern='3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\d{5}',
example_number='301012345', possible_length=(9,)),
-
mobile=PhoneNumberDesc(national_number_pattern='7(?:(?:[06-8]\\d|[19]0|21)\\d|5(?:0[01]|[19]0|2[25]|3[356]|[4-7]\\d|8[35]))\\d{5}',
example_number='701234567', possible_length=(9,)),
+
mobile=PhoneNumberDesc(national_number_pattern='7(?:[05-8]\\d|[19]0|21)\\d{6}',
example_number='701234567', possible_length=(9,)),
toll_free=PhoneNumberDesc(national_number_pattern='800\\d{6}',
example_number='800123456', possible_length=(9,)),
premium_rate=PhoneNumberDesc(national_number_pattern='88[4689]\\d{6}',
example_number='884123456', possible_length=(9,)),
shared_cost=PhoneNumberDesc(national_number_pattern='81[02468]\\d{6}',
example_number='810123456', possible_length=(9,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_SV.py
new/phonenumbers-9.0.18/phonenumbers/data/region_SV.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_SV.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_SV.py 2025-11-07
08:07:49.000000000 +0100
@@ -2,11 +2,11 @@
from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
PHONE_METADATA_SV = PhoneMetadata(id='SV', country_code=503,
international_prefix='00',
-
general_desc=PhoneNumberDesc(national_number_pattern='[267]\\d{7}|(?:80\\d|900)\\d{4}(?:\\d{4})?',
possible_length=(7, 8, 11)),
+
general_desc=PhoneNumberDesc(national_number_pattern='(?:[267]\\d\\d|500)\\d{5}|(?:80\\d|900)\\d{4}(?:\\d{4})?',
possible_length=(7, 8, 11)),
fixed_line=PhoneNumberDesc(national_number_pattern='2(?:79(?:0[0347-9]|[1-9]\\d)|89(?:0[024589]|[1-9]\\d))\\d{3}|2(?:[1-69]\\d|[78][0-8])\\d{5}',
example_number='21234567', possible_length=(8,)),
- mobile=PhoneNumberDesc(national_number_pattern='[67]\\d{7}',
example_number='70123456', possible_length=(8,)),
+
mobile=PhoneNumberDesc(national_number_pattern='(?:500[0-4]|[67]\\d{3})\\d{4}',
example_number='70123456', possible_length=(8,)),
toll_free=PhoneNumberDesc(national_number_pattern='800\\d{8}|80[01]\\d{4}',
example_number='8001234', possible_length=(7, 11)),
premium_rate=PhoneNumberDesc(national_number_pattern='900\\d{4}(?:\\d{4})?',
example_number='9001234', possible_length=(7, 11)),
number_format=[NumberFormat(pattern='(\\d{3})(\\d{4})', format='\\1 \\2',
leading_digits_pattern=['[89]']),
- NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1 \\2',
leading_digits_pattern=['[267]']),
+ NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1 \\2',
leading_digits_pattern=['[25-7]']),
NumberFormat(pattern='(\\d{3})(\\d{4})(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['[89]'])])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_TJ.py
new/phonenumbers-9.0.18/phonenumbers/data/region_TJ.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_TJ.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_TJ.py 2025-11-07
08:07:49.000000000 +0100
@@ -2,11 +2,11 @@
from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
PHONE_METADATA_TJ = PhoneMetadata(id='TJ', country_code=992,
international_prefix='810',
- general_desc=PhoneNumberDesc(national_number_pattern='[0-57-9]\\d{8}',
possible_length=(9,), possible_length_local_only=(3, 5, 6, 7)),
+
general_desc=PhoneNumberDesc(national_number_pattern='(?:[0-57-9]\\d|66)\\d{7}',
possible_length=(9,), possible_length_local_only=(3, 5, 6, 7)),
fixed_line=PhoneNumberDesc(national_number_pattern='(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}',
example_number='372123456', possible_length=(9,),
possible_length_local_only=(3, 5, 6, 7)),
-
mobile=PhoneNumberDesc(national_number_pattern='(?:33[03-9]|4(?:1[18]|4[02-479])|81[1-9])\\d{6}|(?:[09]\\d|1[0-27-9]|2[0-27]|[34]0|5[05]|7[01578]|8[078])\\d{7}',
example_number='917123456', possible_length=(9,)),
+
mobile=PhoneNumberDesc(national_number_pattern='(?:33[03-9]|4(?:1[18]|4[02-479])|81[1-9])\\d{6}|(?:[09]\\d|1[0-27-9]|2[0-27]|3[08]|40|5[05]|66|7[01578]|8[078])\\d{7}',
example_number='917123456', possible_length=(9,)),
preferred_international_prefix='8~10',
number_format=[NumberFormat(pattern='(\\d{6})(\\d)(\\d{2})', format='\\1
\\2 \\3', leading_digits_pattern=['331', '3317']),
NumberFormat(pattern='(\\d{3})(\\d{2})(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['44[02-479]|[34]7']),
NumberFormat(pattern='(\\d{4})(\\d)(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['3(?:[1245]|3[12])']),
- NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['[0-57-9]'])])
+ NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{4})', format='\\1 \\2 \\3',
leading_digits_pattern=['\\d'])])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_UG.py
new/phonenumbers-9.0.18/phonenumbers/data/region_UG.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_UG.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_UG.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_UG = PhoneMetadata(id='UG', country_code=256,
international_prefix='00[057]',
general_desc=PhoneNumberDesc(national_number_pattern='800\\d{6}|(?:[29]0|[347]\\d)\\d{7}',
possible_length=(9,), possible_length_local_only=(5, 6, 7)),
fixed_line=PhoneNumberDesc(national_number_pattern='20(?:(?:240|30[67])\\d|6(?:00[0-2]|30[0-4]))\\d{3}|(?:20(?:[017]\\d|2[5-9]|3[1-4]|5[0-4]|6[15-9])|[34]\\d{3})\\d{5}',
example_number='312345678', possible_length=(9,),
possible_length_local_only=(5, 6, 7)),
-
mobile=PhoneNumberDesc(national_number_pattern='72[48]0\\d{5}|7(?:[014-8]\\d|2[067]|36|9[0-289])\\d{6}',
example_number='712345678', possible_length=(9,)),
+
mobile=PhoneNumberDesc(national_number_pattern='72[48]0\\d{5}|7(?:[014-8]\\d|2[0167]|36|9[0-289])\\d{6}',
example_number='712345678', possible_length=(9,)),
toll_free=PhoneNumberDesc(national_number_pattern='800[1-3]\\d{5}',
example_number='800123456', possible_length=(9,)),
premium_rate=PhoneNumberDesc(national_number_pattern='90[1-3]\\d{6}',
example_number='901123456', possible_length=(9,)),
national_prefix='0',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/data/region_ZA.py
new/phonenumbers-9.0.18/phonenumbers/data/region_ZA.py
--- old/phonenumbers-9.0.16/phonenumbers/data/region_ZA.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/data/region_ZA.py 2025-11-07
08:07:49.000000000 +0100
@@ -4,7 +4,7 @@
PHONE_METADATA_ZA = PhoneMetadata(id='ZA', country_code=27,
international_prefix='00',
general_desc=PhoneNumberDesc(national_number_pattern='[1-79]\\d{8}|8\\d{4,9}',
possible_length=(5, 6, 7, 8, 9, 10)),
fixed_line=PhoneNumberDesc(national_number_pattern='(?:2(?:0330|4302)|52087)0\\d{3}|(?:1[0-8]|2[1-378]|3[1-69]|4\\d|5[1346-8])\\d{7}',
example_number='101234567', possible_length=(9,)),
-
mobile=PhoneNumberDesc(national_number_pattern='(?:1(?:3492[0-25]|4495[0235]|549(?:20|5[01]))|4[34]492[01])\\d{3}|8[1-4]\\d{3,7}|(?:2[27]|47|54)4950\\d{3}|(?:1(?:049[2-4]|9[12]\\d\\d)|(?:50[0-2]|6\\d\\d|7(?:[0-46-9]\\d|5[0-4]))\\d\\d|8(?:5\\d{3}|7(?:08[67]|158|28[5-9]|310)))\\d{4}|(?:1[6-8]|28|3[2-69]|4[025689]|5[36-8])4920\\d{3}|(?:12|[2-5]1)492\\d{4}',
example_number='711234567', possible_length=(5, 6, 7, 8, 9)),
+
mobile=PhoneNumberDesc(national_number_pattern='(?:1(?:3492[0-25]|4495[0235]|549(?:20|5[01]))|4[34]492[01])\\d{3}|8[1-4]\\d{3,7}|(?:2[27]|47|54)4950\\d{3}|(?:1(?:049[2-4]|9[12]\\d\\d)|(?:50[0-2]|[67]\\d\\d)\\d\\d|8(?:5\\d{3}|7(?:08[67]|158|28[5-9]|310)))\\d{4}|(?:1[6-8]|28|3[2-69]|4[025689]|5[36-8])4920\\d{3}|(?:12|[2-5]1)492\\d{4}',
example_number='711234567', possible_length=(5, 6, 7, 8, 9)),
toll_free=PhoneNumberDesc(national_number_pattern='80\\d{7}',
example_number='801234567', possible_length=(9,)),
premium_rate=PhoneNumberDesc(national_number_pattern='(?:86[2-9]|9[0-2]\\d)\\d{6}',
example_number='862345678', possible_length=(9,)),
shared_cost=PhoneNumberDesc(national_number_pattern='860\\d{6}',
example_number='860123456', possible_length=(9,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data12.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data12.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data12.py 2025-10-10
13:56:13.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data12.py 2025-11-07
08:07:52.000000000 +0100
@@ -2157,6 +2157,7 @@
'61851294':{'en': 'Wyndham'},
'618513':{'en': 'Marble Bar/Millstream/Mitchell/Mount
Bruce/Newman/Onslow/Ord/Pannawonica/Paraburdoo/Port
Hedland/Roebuck/Sandfire/Telfer/Tom
Price/Whaleback/Wittenoom/Wyndham/Derby/Broome/Christmas Island/Cocos
Island/Dampier/De Grey/Fitzroy Crossing/Great Sandy/Hall\'s
Creek/Karratha/Kununurra/Leopold'},
'618514':{'en': 'Roebuck /Sandfire /Tom Price/Telfer/Wyndham/Whaleback
/Wittenoom/Wyndham'},
+ '61855':{'en': 'Bakers Hill/Bindoon/Bullsbrook
East/Byford/Dwellingup/Gidgegannup/Gingin/Guilderton/Mandurah/Mount
Helena/Mount Wells/Pinjarra/Rockingham/Toodyay/Yanchep'},
'61860000':{'en': 'Kalgoorlie'},
'61860001':{'en': 'Burracoppin'},
'61860002':{'en': 'Burracoppin'},
@@ -10018,5 +10019,4 @@
'61885876':{'en': 'Wunkar'},
'61885877':{'en': 'Wunkar'},
'61885878':{'en': 'Paruna'},
- '61885879':{'en': 'Wanbi'},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data13.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data13.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data13.py 2025-10-10
13:56:13.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data13.py 2025-11-07
08:07:52.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '61885879':{'en': 'Wanbi'},
'6188588':{'en': 'Barmera'},
'61885890':{'en': 'Mannum'},
'61885891':{'en': 'Renmark'},
@@ -10018,5 +10019,4 @@
'61899370':{'en': 'Kalbarri'},
'61899371':{'en': 'Kalbarri'},
'61899372':{'en': 'Kalbarri'},
- '61899373':{'en': 'Yandanooka'},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data14.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data14.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data14.py 2025-10-10
13:56:13.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data14.py 2025-11-07
08:07:52.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '61899373':{'en': 'Yandanooka'},
'61899374':{'en': 'Yandanooka'},
'61899375':{'en': 'Guranu'},
'61899376':{'en': 'Guranu'},
@@ -10018,5 +10019,4 @@
'861308385':{'en': 'Anyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5b89\u9633\u5e02')},
'861308386':{'en': 'Anyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5b89\u9633\u5e02')},
'861308387':{'en': 'Anyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5b89\u9633\u5e02')},
- '861308388':{'en': 'Kaifeng, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5f00\u5c01\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data15.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data15.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data15.py 2025-10-10
13:56:13.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data15.py 2025-11-07
08:07:52.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861308388':{'en': 'Kaifeng, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5f00\u5c01\u5e02')},
'861308389':{'en': 'Puyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u6fee\u9633\u5e02')},
'861308390':{'en': 'Huzhou, Zhejiang', 'zh':
u('\u6d59\u6c5f\u7701\u6e56\u5dde\u5e02')},
'861308391':{'en': 'Huzhou, Zhejiang', 'zh':
u('\u6d59\u6c5f\u7701\u6e56\u5dde\u5e02')},
@@ -10018,5 +10019,4 @@
'861324901':{'en': 'Zhongshan, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u4e2d\u5c71\u5e02')},
'861324902':{'en': 'Zhongshan, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u4e2d\u5c71\u5e02')},
'861324903':{'en': 'Zhongshan, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u4e2d\u5c71\u5e02')},
- '861324904':{'en': 'Zhongshan, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u4e2d\u5c71\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data16.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data16.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data16.py 2025-10-10
13:56:13.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data16.py 2025-11-07
08:07:52.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861324904':{'en': 'Zhongshan, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u4e2d\u5c71\u5e02')},
'861324905':{'en': 'Shenzhen, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6df1\u5733\u5e02')},
'861324906':{'en': 'Shenzhen, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6df1\u5733\u5e02')},
'861324907':{'en': 'Shenzhen, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6df1\u5733\u5e02')},
@@ -10018,5 +10019,4 @@
'86134131':{'en': 'Huizhou, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u60e0\u5dde\u5e02')},
'86134132':{'en': 'Foshan, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u4f5b\u5c71\u5e02')},
'86134133':{'en': 'Maoming, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u8302\u540d\u5e02')},
- '861341340':{'en': 'Shantou, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6c55\u5934\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data17.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data17.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data17.py 2025-10-10
13:56:13.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data17.py 2025-11-07
08:07:52.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861341340':{'en': 'Shantou, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6c55\u5934\u5e02')},
'861341341':{'en': 'Shantou, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6c55\u5934\u5e02')},
'861341342':{'en': 'Shantou, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6c55\u5934\u5e02')},
'861341343':{'en': 'Shantou, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6c55\u5934\u5e02')},
@@ -10018,5 +10019,4 @@
'861365935':{'en': 'Wuwei, Gansu', 'zh':
u('\u7518\u8083\u7701\u6b66\u5a01\u5e02')},
'861365936':{'en': 'Jiuquan, Gansu', 'zh':
u('\u7518\u8083\u7701\u9152\u6cc9\u5e02')},
'861365937':{'en': 'Jiuquan, Gansu', 'zh':
u('\u7518\u8083\u7701\u9152\u6cc9\u5e02')},
- '861365938':{'en': 'Tianshui, Gansu', 'zh':
u('\u7518\u8083\u7701\u5929\u6c34\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data18.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data18.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data18.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data18.py 2025-11-07
08:07:52.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861365938':{'en': 'Tianshui, Gansu', 'zh':
u('\u7518\u8083\u7701\u5929\u6c34\u5e02')},
'861365939':{'en': 'Longnan, Gansu', 'zh':
u('\u7518\u8083\u7701\u9647\u5357\u5e02')},
'86136594':{'en': 'Lanzhou, Gansu', 'zh':
u('\u7518\u8083\u7701\u5170\u5dde\u5e02')},
'861365950':{'en': 'Lhasa, Tibet', 'zh': u('\u897f\u85cf\u62c9\u8428\u5e02')},
@@ -10018,5 +10019,4 @@
'861396651':{'en': 'Bozhou, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u4eb3\u5dde\u5e02')},
'861396652':{'en': 'Bozhou, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u4eb3\u5dde\u5e02')},
'861396653':{'en': 'Bozhou, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u4eb3\u5dde\u5e02')},
- '861396660':{'en': 'Anqing, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u5b89\u5e86\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data19.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data19.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data19.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data19.py 2025-11-07
08:07:52.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861396660':{'en': 'Anqing, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u5b89\u5e86\u5e02')},
'861396661':{'en': 'Anqing, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u5b89\u5e86\u5e02')},
'861396662':{'en': 'Anqing, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u5b89\u5e86\u5e02')},
'861396663':{'en': 'Anqing, Anhui', 'zh':
u('\u5b89\u5fbd\u7701\u5b89\u5e86\u5e02')},
@@ -10018,5 +10019,4 @@
'861508220':{'en': 'Leshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u4e50\u5c71\u5e02')},
'861508221':{'en': 'Leshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u4e50\u5c71\u5e02')},
'861508222':{'en': 'Leshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u4e50\u5c71\u5e02')},
- '861508223':{'en': 'Leshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u4e50\u5c71\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data20.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data20.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data20.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data20.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861508223':{'en': 'Leshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u4e50\u5c71\u5e02')},
'861508224':{'en': 'Leshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u4e50\u5c71\u5e02')},
'861508225':{'en': 'Liangshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u51c9\u5c71\u5f5d\u65cf\u81ea\u6cbb\u5dde')},
'861508226':{'en': 'Liangshan, Sichuan', 'zh':
u('\u56db\u5ddd\u7701\u51c9\u5c71\u5f5d\u65cf\u81ea\u6cbb\u5dde')},
@@ -10018,5 +10019,4 @@
'861534518':{'en': 'Nanjing, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u5357\u4eac\u5e02')},
'861534519':{'en': 'Changzhou, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u5e38\u5dde\u5e02')},
'861534520':{'en': 'HuaiAn, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u6dee\u5b89\u5e02')},
- '861534521':{'en': 'HuaiAn, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u6dee\u5b89\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data21.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data21.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data21.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data21.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861534521':{'en': 'HuaiAn, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u6dee\u5b89\u5e02')},
'861534522':{'en': 'Taizhou, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u6cf0\u5dde\u5e02')},
'861534523':{'en': 'Taizhou, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u6cf0\u5dde\u5e02')},
'861534524':{'en': 'Suzhou, Jiangsu', 'zh':
u('\u6c5f\u82cf\u7701\u82cf\u5dde\u5e02')},
@@ -10018,5 +10019,4 @@
'861568535':{'en': 'Anshun, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u5b89\u987a\u5e02')},
'861568536':{'en': 'Anshun, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u5b89\u987a\u5e02')},
'861568537':{'en': 'Anshun, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u5b89\u987a\u5e02')},
- '861568538':{'en': 'Anshun, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u5b89\u987a\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data22.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data22.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data22.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data22.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861568538':{'en': 'Anshun, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u5b89\u987a\u5e02')},
'861568539':{'en': 'Anshun, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u5b89\u987a\u5e02')},
'861568540':{'en': 'Qiannan, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u9ed4\u5357\u5e03\u4f9d\u65cf\u82d7\u65cf\u81ea\u6cbb\u5dde')},
'861568541':{'en': 'Guiyang, Guizhou', 'zh':
u('\u8d35\u5dde\u7701\u8d35\u9633\u5e02')},
@@ -10018,5 +10019,4 @@
'861596038':{'en': 'Xiamen, Fujian', 'zh':
u('\u798f\u5efa\u7701\u53a6\u95e8\u5e02')},
'861596039':{'en': 'Xiamen, Fujian', 'zh':
u('\u798f\u5efa\u7701\u53a6\u95e8\u5e02')},
'861596040':{'en': 'Quanzhou, Fujian', 'zh':
u('\u798f\u5efa\u7701\u6cc9\u5dde\u5e02')},
- '861596041':{'en': 'Quanzhou, Fujian', 'zh':
u('\u798f\u5efa\u7701\u6cc9\u5dde\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data23.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data23.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data23.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data23.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861596041':{'en': 'Quanzhou, Fujian', 'zh':
u('\u798f\u5efa\u7701\u6cc9\u5dde\u5e02')},
'861596042':{'en': 'Quanzhou, Fujian', 'zh':
u('\u798f\u5efa\u7701\u6cc9\u5dde\u5e02')},
'861596043':{'en': 'Quanzhou, Fujian', 'zh':
u('\u798f\u5efa\u7701\u6cc9\u5dde\u5e02')},
'861596044':{'en': 'Quanzhou, Fujian', 'zh':
u('\u798f\u5efa\u7701\u6cc9\u5dde\u5e02')},
@@ -10018,5 +10019,4 @@
'861787697':{'en': 'Zhanjiang, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6e5b\u6c5f\u5e02')},
'861787698':{'en': 'Dongguan, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u4e1c\u839e\u5e02')},
'861787699':{'en': 'Shenzhen, Guangdong', 'zh':
u('\u5e7f\u4e1c\u7701\u6df1\u5733\u5e02')},
- '86178770':{'en': 'Nanning, Guangxi', 'zh':
u('\u5e7f\u897f\u5357\u5b81\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data24.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data24.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data24.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data24.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '86178770':{'en': 'Nanning, Guangxi', 'zh':
u('\u5e7f\u897f\u5357\u5b81\u5e02')},
'861787705':{'en': 'Yulin, Guangxi', 'zh':
u('\u5e7f\u897f\u7389\u6797\u5e02')},
'861787706':{'en': 'Yulin, Guangxi', 'zh':
u('\u5e7f\u897f\u7389\u6797\u5e02')},
'861787708':{'en': 'Hechi, Guangxi', 'zh':
u('\u5e7f\u897f\u6cb3\u6c60\u5e02')},
@@ -10018,5 +10019,4 @@
'861820949':{'en': 'Longnan, Gansu', 'zh':
u('\u7518\u8083\u7701\u9647\u5357\u5e02')},
'861820950':{'en': 'Yinchuan, Ningxia', 'zh':
u('\u5b81\u590f\u94f6\u5ddd\u5e02')},
'861820951':{'en': 'Yinchuan, Ningxia', 'zh':
u('\u5b81\u590f\u94f6\u5ddd\u5e02')},
- '861820952':{'en': 'Shizuishan, Ningxia', 'zh':
u('\u5b81\u590f\u77f3\u5634\u5c71\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data25.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data25.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data25.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data25.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '861820952':{'en': 'Shizuishan, Ningxia', 'zh':
u('\u5b81\u590f\u77f3\u5634\u5c71\u5e02')},
'861820953':{'en': 'Wuzhong, Ningxia', 'zh':
u('\u5b81\u590f\u5434\u5fe0\u5e02')},
'861820954':{'en': 'Guyuan, Ningxia', 'zh':
u('\u5b81\u590f\u56fa\u539f\u5e02')},
'861820955':{'en': 'Zhongwei, Ningxia', 'zh':
u('\u5b81\u590f\u4e2d\u536b\u5e02')},
@@ -10018,5 +10019,4 @@
'861856867':{'en': 'Kaifeng, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5f00\u5c01\u5e02')},
'861856868':{'en': 'Kaifeng, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5f00\u5c01\u5e02')},
'861856869':{'en': 'Xinyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u4fe1\u9633\u5e02')},
- '86185687':{'en': 'Nanyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5357\u9633\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data26.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data26.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data26.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data26.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '86185687':{'en': 'Nanyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5357\u9633\u5e02')},
'861856870':{'en': 'Xinxiang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u65b0\u4e61\u5e02')},
'861856871':{'en': 'Xinxiang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u65b0\u4e61\u5e02')},
'861856872':{'en': 'Xinxiang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u65b0\u4e61\u5e02')},
@@ -10018,5 +10019,4 @@
'86188379':{'en': 'Luoyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u6d1b\u9633\u5e02')},
'86188380':{'en': 'Zhengzhou, Henan', 'zh':
u('\u6cb3\u5357\u7701\u90d1\u5dde\u5e02')},
'86188381':{'en': 'Zhengzhou, Henan', 'zh':
u('\u6cb3\u5357\u7701\u90d1\u5dde\u5e02')},
- '86188382':{'en': 'Zhengzhou, Henan', 'zh':
u('\u6cb3\u5357\u7701\u90d1\u5dde\u5e02')},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data27.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data27.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data27.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data27.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '86188382':{'en': 'Zhengzhou, Henan', 'zh':
u('\u6cb3\u5357\u7701\u90d1\u5dde\u5e02')},
'86188383':{'en': 'Zhoukou, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5468\u53e3\u5e02')},
'861883840':{'en': 'Anyang, Henan', 'zh':
u('\u6cb3\u5357\u7701\u5b89\u9633\u5e02')},
'861883841':{'en': 'Luohe, Henan', 'zh':
u('\u6cb3\u5357\u7701\u6f2f\u6cb3\u5e02')},
@@ -10018,5 +10019,4 @@
'9171813':{'en': 'Lakhandur, Maharashtra'},
'9171814':{'en': 'Lakhandur, Maharashtra'},
'9171815':{'en': 'Lakhandur, Maharashtra'},
- '9171816':{'en': 'Lakhandur, Maharashtra'},
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/geodata/data28.py
new/phonenumbers-9.0.18/phonenumbers/geodata/data28.py
--- old/phonenumbers-9.0.16/phonenumbers/geodata/data28.py 2025-10-10
13:56:14.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/geodata/data28.py 2025-11-07
08:07:53.000000000 +0100
@@ -19,6 +19,7 @@
# limitations under the License.
data = {
+ '9171816':{'en': 'Lakhandur, Maharashtra'},
'9171817':{'en': 'Lakhandur, Maharashtra'},
'9171822':{'en': 'Gondia, Maharashtra'},
'9171823':{'en': 'Gondia, Maharashtra'},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonenumbers-9.0.16/phonenumbers/shortdata/region_PY.py
new/phonenumbers-9.0.18/phonenumbers/shortdata/region_PY.py
--- old/phonenumbers-9.0.16/phonenumbers/shortdata/region_PY.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/shortdata/region_PY.py 2025-11-07
08:07:50.000000000 +0100
@@ -2,8 +2,10 @@
from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
PHONE_METADATA_PY = PhoneMetadata(id='PY', country_code=None,
international_prefix=None,
- general_desc=PhoneNumberDesc(national_number_pattern='[19]\\d\\d',
possible_length=(3,)),
+
general_desc=PhoneNumberDesc(national_number_pattern='[159]\\d\\d(?:\\d{4})?',
possible_length=(3, 7)),
toll_free=PhoneNumberDesc(national_number_pattern='128|911',
example_number='128', possible_length=(3,)),
emergency=PhoneNumberDesc(national_number_pattern='128|911',
example_number='128', possible_length=(3,)),
- short_code=PhoneNumberDesc(national_number_pattern='1[1-9]\\d|911',
example_number='110', possible_length=(3,)),
+
short_code=PhoneNumberDesc(national_number_pattern='(?:1[01]|51)\\d{5}|911|1[1-9]\\d',
example_number='110', possible_length=(3, 7)),
+
carrier_specific=PhoneNumberDesc(national_number_pattern='(?:1[01]|51)\\d{5}',
example_number='1000000', possible_length=(7,)),
+ sms_services=PhoneNumberDesc(national_number_pattern='(?:1[01]|51)\\d{5}',
example_number='1000000', possible_length=(7,)),
short_data=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/phonenumbers-9.0.16/phonenumbers/shortdata/region_RO.py
new/phonenumbers-9.0.18/phonenumbers/shortdata/region_RO.py
--- old/phonenumbers-9.0.16/phonenumbers/shortdata/region_RO.py 2025-10-10
13:56:11.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/shortdata/region_RO.py 2025-11-07
08:07:50.000000000 +0100
@@ -3,9 +3,9 @@
PHONE_METADATA_RO = PhoneMetadata(id='RO', country_code=None,
international_prefix=None,
general_desc=PhoneNumberDesc(national_number_pattern='[18]\\d{2,5}',
possible_length=(3, 4, 5, 6)),
- toll_free=PhoneNumberDesc(national_number_pattern='11(?:2|6\\d{3})',
example_number='112', possible_length=(3, 6)),
+ toll_free=PhoneNumberDesc(national_number_pattern='11(?:[23]|6\\d{3})',
example_number='112', possible_length=(3, 6)),
premium_rate=PhoneNumberDesc(national_number_pattern='(?:1(?:18[39]|[24])|8[48])\\d\\d',
example_number='1200', possible_length=(4, 6)),
emergency=PhoneNumberDesc(national_number_pattern='112',
example_number='112', possible_length=(3,)),
-
short_code=PhoneNumberDesc(national_number_pattern='1(?:1(?:2|6(?:000|1(?:11|23))|8(?:(?:01|8[18])1|119|[23]00|932))|[24]\\d\\d|9(?:0(?:00|19)|1[19]|21|3[02]|5[178]))|8[48]\\d\\d',
example_number='112', possible_length=(3, 4, 5, 6)),
-
sms_services=PhoneNumberDesc(national_number_pattern='(?:1[24]|8[48])\\d\\d',
example_number='1200', possible_length=(4,)),
+
short_code=PhoneNumberDesc(national_number_pattern='1(?:1(?:[23]|6(?:000|1(?:11|23))|8(?:(?:01|8[18])1|119|[23]00|932))|[24]\\d\\d|9(?:0(?:00|19)|1[19]|21|3[02]|5[178]))|8[48]\\d\\d',
example_number='112', possible_length=(3, 4, 5, 6)),
+
sms_services=PhoneNumberDesc(national_number_pattern='113|(?:1[24]|8[48])\\d\\d',
example_number='113', possible_length=(3, 4)),
short_data=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers/tzdata/data0.py
new/phonenumbers-9.0.18/phonenumbers/tzdata/data0.py
--- old/phonenumbers-9.0.16/phonenumbers/tzdata/data0.py 2025-10-10
13:56:15.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers/tzdata/data0.py 2025-11-07
08:07:54.000000000 +0100
@@ -2883,7 +2883,10 @@
'61734976':('Australia/Brisbane',),
'617350':('Australia/Brisbane',),
'617353':('Australia/Brisbane',),
- '617354':('Australia/Brisbane',),
+ '6173540':('Australia/Brisbane',),
+ '6173546':('Australia/Brisbane',),
+ '6173547':('Australia/Brisbane',),
+ '6173548':('Australia/Brisbane',),
'617355':('Australia/Brisbane',),
'61735678':('Australia/Brisbane',),
'617360':('Australia/Brisbane',),
@@ -2998,6 +3001,7 @@
'6185129':('Australia/Adelaide', 'Australia/Perth'),
'618513':('Australia/Sydney',),
'618514':('Australia/Sydney',),
+ '61855':('Australia/Adelaide', 'Australia/Perth'),
'6186':('Australia/Adelaide', 'Australia/Perth'),
'6187':('Australia/Adelaide', 'Australia/Perth'),
'6188':('Australia/Adelaide', 'Australia/Perth'),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/phonenumbers-9.0.16/phonenumbers.egg-info/PKG-INFO
new/phonenumbers-9.0.18/phonenumbers.egg-info/PKG-INFO
--- old/phonenumbers-9.0.16/phonenumbers.egg-info/PKG-INFO 2025-10-10
14:04:06.000000000 +0200
+++ new/phonenumbers-9.0.18/phonenumbers.egg-info/PKG-INFO 2025-11-07
08:36:53.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 2.4
Name: phonenumbers
-Version: 9.0.16
+Version: 9.0.18
Summary: Python version of Google's common library for parsing, formatting,
storing and validating international phone numbers.
Home-page: https://github.com/daviddrysdale/python-phonenumbers
Author: David Drysdale