Hello community, here is the log from the commit of package python-Faker for openSUSE:Factory checked in at 2018-01-19 11:47:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-Faker (Old) and /work/SRC/openSUSE:Factory/.python-Faker.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-Faker" Fri Jan 19 11:47:15 2018 rev:6 rq:566561 version:0.8.10 Changes: -------- --- /work/SRC/openSUSE:Factory/python-Faker/python-Faker.changes 2018-01-10 23:32:27.407656812 +0100 +++ /work/SRC/openSUSE:Factory/.python-Faker.new/python-Faker.changes 2018-01-19 11:47:19.684284372 +0100 @@ -1,0 +2,20 @@ +Wed Jan 17 04:08:11 UTC 2018 - a...@gmx.de + +- specfile: + * update copyright year + +- update to version 0.8.10: + * Pass python_requires argument to setuptools. Thanks @jdufresne. + * Remove some words from en_US lorem ipsum provider. Thanks @Pomax. + +- changes from version 0.8.9: + * Remove support for Python 3.3. Thanks @jdufresne. + * Allow past dates within a second. Thanks @DanEEstar. + * Added phone number formatting to en_GB localisation to ensure no + genuine phone numbers are generated. Thanks @TheSapper. + * Added en_GB localisation for SSN (UK National Insurance + Number). Thanks @TheSapper. + * Added ro_RO person Provider. Thanks @vasilesmartup. + * Added domain argument to email provider. Thanks @lcd1232. + +------------------------------------------------------------------- Old: ---- Faker-0.8.8.tar.gz New: ---- Faker-0.8.10.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-Faker.spec ++++++ --- /var/tmp/diff_new_pack.FeJlk3/_old 2018-01-19 11:47:20.616240426 +0100 +++ /var/tmp/diff_new_pack.FeJlk3/_new 2018-01-19 11:47:20.620240238 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-Faker # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ %define oldpython python %bcond_with test Name: python-Faker -Version: 0.8.8 +Version: 0.8.10 Release: 0 Summary: Faker is a Python package that generates fake data License: MIT ++++++ Faker-0.8.8.tar.gz -> Faker-0.8.10.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/CHANGELOG.rst new/Faker-0.8.10/CHANGELOG.rst --- old/Faker-0.8.8/CHANGELOG.rst 2017-12-19 16:56:38.000000000 +0100 +++ new/Faker-0.8.10/CHANGELOG.rst 2018-01-16 17:07:03.000000000 +0100 @@ -1,7 +1,23 @@ - Changelog ========= +`0.8.10 - 16-January-2018 <https://github.com/joke2k/faker/compare/v0.8.9...v0.8.10>`__ +--------------------------------------------------------------------------------------- + +* Pass ``python_requires`` argument to ``setuptools``. Thanks @jdufresne. +* Remove some words from ``en_US`` lorem ipsum provider. Thanks @Pomax. + +`0.8.9 - 12-January-2018 <https://github.com/joke2k/faker/compare/v0.8.8...v0.8.9>`__ +------------------------------------------------------------------------------------- + +* Remove support for Python 3.3. Thanks @jdufresne. +* Allow past dates within a second. Thanks @DanEEstar. +* Added phone number formatting to ``en_GB`` localisation to ensure no genuine phone numbers are generated. Thanks @TheSapper. +* Added ``en_GB`` localisation for SSN (UK National Insurance Number). Thanks @TheSapper. +* Added ``ro_RO`` person Provider. Thanks @vasilesmartup. +* Added ``domain`` argument to ``email`` provider. Thanks @lcd1232. + + `0.8.8 - 19-December-2017 <https://github.com/joke2k/faker/compare/v0.8.7...v0.8.8>`__ -------------------------------------------------------------------------------------- @@ -437,4 +453,3 @@ ----------------- * First release - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/Faker.egg-info/PKG-INFO new/Faker-0.8.10/Faker.egg-info/PKG-INFO --- old/Faker-0.8.8/Faker.egg-info/PKG-INFO 2017-12-19 16:59:28.000000000 +0100 +++ new/Faker-0.8.10/Faker.egg-info/PKG-INFO 2018-01-16 17:08:00.000000000 +0100 @@ -1,6 +1,6 @@ -Metadata-Version: 1.1 +Metadata-Version: 1.2 Name: Faker -Version: 0.8.8 +Version: 0.8.10 Summary: Faker is a Python package that generates fake data for you. Home-page: https://github.com/joke2k/faker Author: joke2k @@ -162,6 +162,7 @@ - `pl\_PL <https://faker.readthedocs.io/en/master/locales/pl_PL.html>`__ - Polish - `pt\_BR <https://faker.readthedocs.io/en/master/locales/pt_BR.html>`__ - Portuguese (Brazil) - `pt\_PT <https://faker.readthedocs.io/en/master/locales/pt_PT.html>`__ - Portuguese (Portugal) + - `ro\_RO <https://faker.readthedocs.io/en/master/locales/ro_RO.html>`__ - Romanian - `ru\_RU <https://faker.readthedocs.io/en/master/locales/ru_RU.html>`__ - Russian - `sl\_SI <https://faker.readthedocs.io/en/master/locales/sl_SI.html>`__ - Slovene - `sv\_SE <https://faker.readthedocs.io/en/master/locales/sv_SE.html>`__ - Swedish @@ -429,14 +430,13 @@ Keywords: faker fixtures data test mock generator Platform: any -Classifier: Development Status :: 3 - Alpha +Classifier: Development Status :: 5 - Production/Stable Classifier: Environment :: Console Classifier: Intended Audience :: Developers Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Programming Language :: Python :: 3.6 @@ -446,3 +446,4 @@ Classifier: Topic :: Software Development :: Testing Classifier: Topic :: Utilities Classifier: License :: OSI Approved :: MIT License +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/Faker.egg-info/SOURCES.txt new/Faker-0.8.10/Faker.egg-info/SOURCES.txt --- old/Faker-0.8.8/Faker.egg-info/SOURCES.txt 2017-12-19 16:59:28.000000000 +0100 +++ new/Faker-0.8.10/Faker.egg-info/SOURCES.txt 2018-01-16 17:08:00.000000000 +0100 @@ -208,6 +208,7 @@ faker/providers/person/bg_BG/__init__.py faker/providers/person/cs_CZ/__init__.py faker/providers/person/de_AT/__init__.py +faker/providers/person/de_CH/__init__.py faker/providers/person/de_DE/__init__.py faker/providers/person/dk_DK/__init__.py faker/providers/person/el_GR/__init__.py @@ -239,6 +240,7 @@ faker/providers/person/pl_PL/__init__.py faker/providers/person/pt_BR/__init__.py faker/providers/person/pt_PT/__init__.py +faker/providers/person/ro_RO/__init__.py faker/providers/person/ru_RU/__init__.py faker/providers/person/sl_SI/__init__.py faker/providers/person/sv_SE/__init__.py @@ -299,6 +301,7 @@ faker/providers/python/en_US/__init__.py faker/providers/ssn/__init__.py faker/providers/ssn/en_CA/__init__.py +faker/providers/ssn/en_GB/__init__.py faker/providers/ssn/en_US/__init__.py faker/providers/ssn/et_EE/__init__.py faker/providers/ssn/fi_FI/__init__.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/Faker.egg-info/requires.txt new/Faker-0.8.10/Faker.egg-info/requires.txt --- old/Faker-0.8.8/Faker.egg-info/requires.txt 2017-12-19 16:59:28.000000000 +0100 +++ new/Faker-0.8.10/Faker.egg-info/requires.txt 2018-01-16 17:08:00.000000000 +0100 @@ -4,9 +4,3 @@ [:python_version=="2.7"] ipaddress - -[:python_version=="3.0"] -importlib - -[:python_version=="3.2"] -ipaddress diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/PKG-INFO new/Faker-0.8.10/PKG-INFO --- old/Faker-0.8.8/PKG-INFO 2017-12-19 16:59:28.000000000 +0100 +++ new/Faker-0.8.10/PKG-INFO 2018-01-16 17:08:01.000000000 +0100 @@ -1,6 +1,6 @@ -Metadata-Version: 1.1 +Metadata-Version: 1.2 Name: Faker -Version: 0.8.8 +Version: 0.8.10 Summary: Faker is a Python package that generates fake data for you. Home-page: https://github.com/joke2k/faker Author: joke2k @@ -162,6 +162,7 @@ - `pl\_PL <https://faker.readthedocs.io/en/master/locales/pl_PL.html>`__ - Polish - `pt\_BR <https://faker.readthedocs.io/en/master/locales/pt_BR.html>`__ - Portuguese (Brazil) - `pt\_PT <https://faker.readthedocs.io/en/master/locales/pt_PT.html>`__ - Portuguese (Portugal) + - `ro\_RO <https://faker.readthedocs.io/en/master/locales/ro_RO.html>`__ - Romanian - `ru\_RU <https://faker.readthedocs.io/en/master/locales/ru_RU.html>`__ - Russian - `sl\_SI <https://faker.readthedocs.io/en/master/locales/sl_SI.html>`__ - Slovene - `sv\_SE <https://faker.readthedocs.io/en/master/locales/sv_SE.html>`__ - Swedish @@ -429,14 +430,13 @@ Keywords: faker fixtures data test mock generator Platform: any -Classifier: Development Status :: 3 - Alpha +Classifier: Development Status :: 5 - Production/Stable Classifier: Environment :: Console Classifier: Intended Audience :: Developers Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Programming Language :: Python :: 3.6 @@ -446,3 +446,4 @@ Classifier: Topic :: Software Development :: Testing Classifier: Topic :: Utilities Classifier: License :: OSI Approved :: MIT License +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/README.rst new/Faker-0.8.10/README.rst --- old/Faker-0.8.8/README.rst 2017-12-19 16:53:06.000000000 +0100 +++ new/Faker-0.8.10/README.rst 2018-01-12 16:24:26.000000000 +0100 @@ -153,6 +153,7 @@ - `pl\_PL <https://faker.readthedocs.io/en/master/locales/pl_PL.html>`__ - Polish - `pt\_BR <https://faker.readthedocs.io/en/master/locales/pt_BR.html>`__ - Portuguese (Brazil) - `pt\_PT <https://faker.readthedocs.io/en/master/locales/pt_PT.html>`__ - Portuguese (Portugal) +- `ro\_RO <https://faker.readthedocs.io/en/master/locales/ro_RO.html>`__ - Romanian - `ru\_RU <https://faker.readthedocs.io/en/master/locales/ru_RU.html>`__ - Russian - `sl\_SI <https://faker.readthedocs.io/en/master/locales/sl_SI.html>`__ - Slovene - `sv\_SE <https://faker.readthedocs.io/en/master/locales/sv_SE.html>`__ - Swedish diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/docs/conf.py new/Faker-0.8.10/docs/conf.py --- old/Faker-0.8.8/docs/conf.py 2017-12-19 16:58:44.000000000 +0100 +++ new/Faker-0.8.10/docs/conf.py 2018-01-16 17:07:42.000000000 +0100 @@ -54,9 +54,9 @@ # built documents. # # The short X.Y version. -version = '0.8.8' +version = '0.8.10' # The full version, including alpha/beta/rc tags. -release = '0.8.8' +release = '0.8.10' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/__init__.py new/Faker-0.8.10/faker/__init__.py --- old/Faker-0.8.8/faker/__init__.py 2017-12-19 16:58:44.000000000 +0100 +++ new/Faker-0.8.10/faker/__init__.py 2018-01-16 17:07:42.000000000 +0100 @@ -1,4 +1,4 @@ -VERSION = '0.8.8' +VERSION = '0.8.10' from faker.generator import Generator from faker.factory import Factory diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/date_time/__init__.py new/Faker-0.8.10/faker/providers/date_time/__init__.py --- old/Faker-0.8.8/faker/providers/date_time/__init__.py 2017-12-05 16:57:34.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/date_time/__init__.py 2018-01-08 23:27:55.000000000 +0100 @@ -1342,7 +1342,10 @@ """ start_date = self._parse_date_time(start_date, tzinfo=tzinfo) end_date = self._parse_date_time(end_date, tzinfo=tzinfo) - ts = self.generator.random.randint(start_date, end_date) + if end_date - start_date <= 1: + ts = start_date + self.generator.random.random() + else: + ts = self.generator.random.randint(start_date, end_date) return datetime(1970, 1, 1, tzinfo=tzinfo) + timedelta(seconds=ts) def date_between(self, start_date='-30y', end_date='today'): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/internet/__init__.py new/Faker-0.8.10/faker/providers/internet/__init__.py --- old/Faker-0.8.8/faker/providers/internet/__init__.py 2017-12-05 16:57:34.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/internet/__init__.py 2018-01-12 16:24:26.000000000 +0100 @@ -75,9 +75,13 @@ return string @lowercase - def email(self): - pattern = self.random_element(self.email_formats) - return "".join(self.generator.parse(pattern).split(" ")) + def email(self, domain=None): + if domain: + email = '{0}@{1}'.format(self.user_name(), domain) + else: + pattern = self.random_element(self.email_formats) + email = "".join(self.generator.parse(pattern).split(" ")) + return email @lowercase def safe_email(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/lorem/en_US/__init__.py new/Faker-0.8.10/faker/providers/lorem/en_US/__init__.py --- old/Faker-0.8.8/faker/providers/lorem/en_US/__init__.py 2017-12-05 16:57:34.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/lorem/en_US/__init__.py 2018-01-16 17:04:06.000000000 +0100 @@ -6,7 +6,8 @@ class Provider(LoremProvider): """en_US word list is drawn from Education First's "1000 Most Common Words in English": - http://www.ef.edu/english-resources/english-vocabulary/top-1000-words/ """ + http://www.ef.edu/english-resources/english-vocabulary/top-1000-words/ + Some words have been removed to make this list appropiate for public testing""" word_list = ( 'a', @@ -135,7 +136,6 @@ 'camera', 'campaign', 'can', - 'cancer', 'candidate', 'capital', 'car', @@ -176,7 +176,6 @@ 'collection', 'college', 'color', - 'come', 'commercial', 'common', 'community', @@ -211,9 +210,7 @@ 'data', 'daughter', 'day', - 'dead', 'deal', - 'death', 'debate', 'decade', 'decide', @@ -230,7 +227,6 @@ 'determine', 'develop', 'development', - 'die', 'difference', 'different', 'difficult', @@ -240,7 +236,6 @@ 'discover', 'discuss', 'discussion', - 'disease', 'do', 'doctor', 'dog', @@ -299,7 +294,6 @@ 'face', 'fact', 'factor', - 'fail', 'fall', 'family', 'far', @@ -320,7 +314,6 @@ 'financial', 'find', 'fine', - 'finger', 'finish', 'fire', 'firm', @@ -373,7 +366,6 @@ 'hair', 'half', 'hand', - 'hang', 'happen', 'happy', 'hard', @@ -383,7 +375,6 @@ 'health', 'hear', 'heart', - 'heat', 'heavy', 'help', 'her', @@ -448,7 +439,6 @@ 'keep', 'key', 'kid', - 'kill', 'kind', 'kitchen', 'know', @@ -470,12 +460,10 @@ 'leave', 'left', 'leg', - 'legal', 'less', 'let', 'letter', 'level', - 'lie', 'life', 'light', 'like', @@ -491,7 +479,6 @@ 'lose', 'loss', 'lot', - 'love', 'low', 'machine', 'magazine', @@ -586,7 +573,6 @@ 'officer', 'official', 'often', - 'oh', 'oil', 'ok', 'old', @@ -611,7 +597,6 @@ 'own', 'owner', 'page', - 'pain', 'painting', 'paper', 'parent', @@ -623,7 +608,6 @@ 'party', 'pass', 'past', - 'patient', 'pattern', 'pay', 'peace', @@ -632,7 +616,6 @@ 'perform', 'performance', 'perhaps', - 'period', 'person', 'personal', 'phone', @@ -666,9 +649,7 @@ 'pretty', 'prevent', 'price', - 'private', 'probably', - 'problem', 'process', 'produce', 'product', @@ -718,7 +699,6 @@ 'religious', 'remain', 'remember', - 'remove', 'report', 'represent', 'Republican', @@ -771,14 +751,10 @@ 'set', 'seven', 'several', - 'sex', - 'sexual', 'shake', 'share', 'she', - 'shoot', 'short', - 'shot', 'should', 'shoulder', 'show', @@ -943,9 +919,7 @@ 'value', 'various', 'very', - 'victim', 'view', - 'violence', 'visit', 'voice', 'vote', @@ -958,7 +932,6 @@ 'water', 'way', 'we', - 'weapon', 'wear', 'week', 'weight', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/person/de_CH/__init__.py new/Faker-0.8.10/faker/providers/person/de_CH/__init__.py --- old/Faker-0.8.8/faker/providers/person/de_CH/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/person/de_CH/__init__.py 2018-01-08 23:39:14.000000000 +0100 @@ -0,0 +1,360 @@ +# coding=utf-8 +from __future__ import unicode_literals +from .. import Provider as PersonProvider + + +class Provider(PersonProvider): + formats = ( + '{{first_name}} {{last_name}}', + '{{first_name}} {{last_name}}', + '{{first_name}} {{last_name}}', + '{{first_name}} {{last_name}}', + '{{first_name}} {{last_name}}', + '{{first_name}} {{last_name}}', + '{{first_name}} {{last_name}}', + '{{first_name}} {{last_name}}-{{last_name}}', + '{{first_name_female}} {{last_name}} {{last_name}}', + '{{prefix}} {{first_name}} {{last_name}}', + ) + + # extracted from https://www.bfs.admin.ch/bfs/it/home/statistiche/popolazione/nascite-decessi/nomi-svizzera.assetdetail.3243313.html + first_names_male = ( + 'Peter', 'Hans', 'Daniel', 'Thomas', 'Andreas', 'Martin', 'Markus', + 'Michael', 'Christian', 'Stefan', 'Walter', 'Urs', 'Marco', 'Bruno', + 'Patrick', 'Werner', 'René', 'Marcel', 'Beat', 'Roland', 'Kurt', + 'Josef', 'David', 'Simon', 'Rolf', 'Heinz', 'Rudolf', 'Paul', 'Roger', + 'Christoph', 'Ernst', 'Pascal', 'Adrian', 'Lukas', 'Marc', 'Robert', + 'Reto', 'Manuel', 'Fabian', 'Alfred', 'Philipp', 'Jürg', 'Matthias', + 'Stephan', 'Franz', 'Anton', 'André', 'Alexander', 'Samuel', 'Jan', + 'Johann', 'Luca', 'Max', 'Roman', 'Mario', 'Fritz', 'Ulrich', 'Dominik', + 'Karl', 'Tobias', 'Oliver', 'Florian', 'Antonio', 'Benjamin', 'Sandro', + 'Bernhard', 'Jonas', 'Felix', 'Raphael', 'Kevin', 'Erich', 'Fabio', + 'Jakob', 'Sven', 'Dario', 'Giuseppe', 'Remo', 'Nicolas', 'Albert', + 'Erwin', 'Richard', 'Nico', 'Michel', 'José', 'Claudio', 'Tim', 'Noah', + 'Joel', 'Heinrich', 'Jörg', 'Robin', 'Sebastian', 'Armin', 'Guido', + 'Silvan', 'Lars', 'Ivan', 'Julian', 'Alois', 'Francesco', 'Sascha', + 'Dominic', 'Johannes', 'Georg', 'Gabriel', 'Manfred', 'Herbert', 'Otto', + 'Alessandro', 'Gerhard', 'Patrik', 'Gian', 'Mathias', 'Leon', 'Willi', + 'Eduard', 'Nicola', 'Hugo', 'Ali', 'Yves', 'Elias', 'Hermann', + 'Philippe', 'Leo', 'Emil', 'Frank', 'Dieter', 'Friedrich', 'Luis', + 'Giovanni', 'Niklaus', 'Alex', 'Roberto', 'Rafael', 'Hanspeter', + 'Diego', 'Nils', 'Leandro', 'Ramon', 'Severin', 'Salvatore', 'Mike', + 'Alain', 'Timo', 'Carlos', 'Arthur', 'Yannick', 'Eric', 'Angelo', 'Ivo', + 'Wolfgang', 'Matteo', 'Joël', 'Andrin', 'Pius', 'Moritz', 'Valentin', + 'Louis', 'Wilhelm', 'Renato', 'Levin', 'Silvio', 'Willy', 'Andrea', + 'Jonathan', 'Jean', 'Livio', 'Loris', 'Damian', 'Theodor', 'Michele', + 'Vincenzo', 'Elia', 'Ralph', 'Klaus', 'Eugen', 'Mark', 'Konrad', + 'Denis', 'Norbert', 'Lorenz', 'Viktor', 'Mehmet', 'Marko', 'Kilian', + 'Hans-Peter', 'Cédric', 'Ralf', 'Aaron', 'Maximilian', 'Carlo', + 'Alessio', 'Olivier', 'Jürgen', 'Luigi', 'Philip', 'Lucas', 'Mauro', + 'Janis', 'Cyrill', 'Linus', 'Davide', 'Othmar', 'Flavio', 'Nino', + 'Arnold', 'Nick', 'Rainer', 'Domenico', 'Adolf', 'Emanuel', 'Oskar', + 'Ben', 'Joshua', 'Leonardo', 'Franco', 'Pierre', 'John', 'Gregor', + 'Fernando', 'Marius', 'Claude', 'Edwin', 'Colin', 'Mustafa', 'Pedro', + 'Stefano', 'Sergio', 'Dominique', 'Juan', 'Nikola', 'Enrico', 'Jens', + 'Daniele', 'Thierry', 'Jose', 'Liam', 'Francisco', 'Ricardo', 'Rico', + 'Christof', 'Aleksandar', 'Dennis', 'Mohamed', 'Joseph', 'Charles', + 'Noel', 'Miguel', 'Laurin', 'Milan', 'Reinhard', 'Lionel', 'Dragan', + 'Hasan', 'Paulo', 'Edgar', 'Silas', 'Hubert', 'Helmut', 'Ibrahim', + 'Ruben', 'Timon', 'Vincent', 'Christopher', 'Finn', 'Ronny', 'Kaspar', + 'Mattia', 'Lorenzo', 'Pietro', 'Björn', 'Hansruedi', 'Gottfried', + 'Joachim', 'Benno', 'Harald', 'Jorge', 'Cedric', 'Nevio', 'Paolo', + 'Gianluca', 'Boris', 'Kai', 'Maurizio', 'Steven', 'Mischa', 'Patric', + 'Zoran', 'Mirco', 'Marvin', 'Dirk', 'Benedikt', 'Uwe', 'Hans-Rudolf', + 'Maurice', 'Massimo', 'Hansjörg', 'Jeremy', 'Niklas', 'Ahmet', + 'Fridolin', 'Dejan', 'Goran', 'Micha', 'Mohammad', 'Ronald', 'Bernd', + 'Mirko', 'Erik', 'Jason', 'Tiago', 'Riccardo', 'Jérôme', 'Igor', + 'Siegfried', 'Pasquale', 'Andri', 'Tom', 'Ueli', 'Amir', 'Cyril', + 'Adriano', 'Alberto', 'Ferdinand', 'Justin', 'Raffael', 'Julien', + 'Lenny', 'Luka', 'Marcus', 'Pirmin', 'Janik', 'Julius', 'Meinrad', + 'Adam', 'James', 'Hüseyin', 'Alexandre', 'Rocco', 'Luc', 'Victor', + 'João', 'Andres', 'Luan', 'Flurin', 'Filip', 'Ismail', 'Danilo', + 'Laurent', 'Raffaele', 'Ahmed', 'Günter', 'Joao', 'Rui', 'Xaver', + 'Fabrizio', 'William', 'Vito', 'Miroslav', 'Lino', 'Albin', 'Jean-Pierre', + 'Basil', 'Till', 'Horst', 'Romeo', 'Aldo', 'Murat', 'Harry', + 'Alfons', 'Pablo', 'Bernard', 'Noé', 'Luciano', 'August', 'Levi', + 'Nando', 'Fabrice', 'Raymond', 'Jamie', 'Georges', 'Steffen', 'Serge', + 'Cristian', 'Samir', 'António', 'Marlon', 'Omar', 'Lian', 'Oscar', + 'Yanick', 'Armando', 'Nikolaus', 'Dylan', 'Hannes', 'Sacha', 'Nuno', + 'Toni', 'Dino', 'Elmar', 'Arno', 'Joaquim', 'Sasa', 'Henry', 'Vladimir', + 'Arben', 'Ryan', 'Bekim', 'Milos', 'Giorgio', 'Ludwig', 'Leonard', + 'Adnan', 'Gilbert', 'Yannik', 'Aron', 'Iwan', 'Maik', 'Dimitri', + 'Erhard', 'François', 'Gabriele', 'Sami', 'Elio', 'Antonino', 'Fynn', + 'Simone', 'Andrew', 'Alan', 'Nenad', 'Frédéric', 'Etienne', 'Janick', + 'Steve', 'Christophe', 'Gianni', 'Urban', 'Anthony', 'Deniz', 'Jon', + 'Alejandro', 'Axel', 'Ian', 'Theo', 'Andrej', 'Brian', 'Lucien', 'Gino', + 'Clemens', 'Yanik', 'Adem', 'Emir', 'Tino', 'Miro', 'Enis', 'Gregory', + 'Danijel', 'Osman', 'Michal', 'Carmine', 'Orlando', 'Enes', 'Giuliano', + 'Timothy', 'Fredy', 'Besnik', 'Vitor', 'Holger', 'Kim', 'Eduardo', + 'Petar', 'Jacques', 'Karim', 'Darko', 'Gustav', 'Emilio', 'Mateo', + 'Alban', 'Marek', 'Oswald', 'Noël', 'Donato', 'Mohammed', 'Roy', 'Kay', + 'Nathan', 'Enea', 'Silvano', 'Josip', 'Valerio', 'Artur', 'Besim', + 'Mika', 'Torsten', 'Romano', 'Heiko', 'Yusuf', 'Chris', 'Naim', 'Burim', + 'Gaetano', 'Hans-Ulrich', 'Olaf', 'Maurus', 'Volker', 'Jean-Claude', + 'Henri', 'Nik', 'Rodrigo', 'Florin', 'Mael', 'Amar', 'Agron', 'Muhamed', + 'Tristan', 'Valon', 'Ahmad', 'Ilir', 'Javier', 'Lorin', 'Yanis', + 'Fatmir', 'Bajram', 'Carmelo', 'Agim', 'Enzo', 'Moreno', 'Cornel', + 'Andy', 'Jeton', 'Blerim', 'Bojan', 'Federico', 'Attila', 'Juri', + 'Tomas', 'Valentino', 'Ismet', 'Jannik', 'Ruedi', 'Afrim', 'Yannic', + 'Ramadan', 'Alfredo', 'Josua', 'Cosimo', 'Gerardo', 'Bastian', + 'Filippo', 'Raoul', 'Halil', 'Yann', 'Georgios', 'Jannis', 'Nicholas', + 'Sean', 'Wilfried', 'Günther', 'Dusan', 'Beda', 'Gerold', 'Gottlieb', + 'Filipe', 'Ilija', 'Carl', 'Ardian', 'Marcello', 'Enver', 'Dean', + 'Dion', 'Tenzin', 'Zeljko', 'Carsten', 'Diogo', 'Alen', 'Egon', 'Aurel', + 'Yannis', 'Edin', 'Hans-Jörg', 'Tomislav', 'Mohamad', 'Bujar', 'Raul', + 'Slobodan', 'Driton', 'Maxim', 'Francis', 'Hansueli', 'Ivica', 'Nelson', + 'Emanuele', 'Konstantin', 'Fred', 'Naser', 'Gerd', 'Kristian', 'Selim', + 'Corsin', 'Dietmar', 'George', 'Piotr', 'Giacomo', 'Ingo', 'Andre', + 'Malik', 'Lothar', 'Jochen', 'Sinan', 'Thorsten', 'Tiziano', 'Gilles', + 'Avni', 'Jann', 'Lio', 'Niels', 'Emmanuel', 'Leonhard', 'Lorik', + 'Aurelio', 'Gion', 'Liridon', 'Marino', 'Can', 'Kenan', 'Ewald', + 'Stéphane', 'Dalibor', 'Jozef', 'Noe', 'Bryan', 'Dan', 'Santiago', + 'Damiano', 'Arian', 'Rosario', 'Giancarlo', 'Nathanael', 'Emre', + 'Stephen', 'Hassan', 'Jovan', 'Egzon', 'Reinhold', 'Tomasz', 'Vittorio', + 'Patrice', 'Tibor', 'Jost', 'Elvis', 'Lean', 'Henrik', 'Musa', 'Noa', + 'Udo', 'Almir', 'Van', 'Dietrich', 'Mladen', 'Armend', 'Arlind', 'Milo', + 'Arsim', 'Bashkim', 'Dimitrios', 'Matthew', 'Ömer', 'Abdullah', 'Hakan', + 'Gerald', 'Tommaso', 'Joris', 'Damir', 'Vinzenz', 'Marcos', 'Raphaël', + 'Ennio', 'Melvin', 'Leander', 'Kuno', 'Massimiliano', 'Maël', 'Anto', + 'Branko', 'Fadil', 'Kemal', 'Muhammed', 'Hendrik', 'Pawel', 'Jeremias', + 'Léon', 'Leano', 'Rémy', 'Giulio', 'Muhamet', 'Lulzim', 'Konstantinos', + 'Pavel', 'Rinaldo', 'Omer', 'Simeon', 'Gian-Luca', 'Maurin', 'Antoine', + 'Frederik', 'Janic', 'Faton', 'Marcin', 'Sébastien', 'Cem', 'Curdin', + 'Endrit', 'Nemanja', 'Karsten', 'Renzo', 'Jerome', 'Krzysztof', + 'Jeffrey', 'Sebastiano', 'Ernesto', 'Lazar', 'Ramazan', 'Gérard', + 'Ajan', 'Emin', 'Ioannis', 'Jesus', 'Alfonso', 'Yasin', 'Jaron', + 'Alexis', 'Orhan', 'Artan', 'Morris', 'Angel', 'Janosch', 'Rene', + 'Shaban', 'Jakub', 'Loïc', 'Kristijan', 'Enrique', 'Skender', + 'Gianfranco', 'Mathieu', 'Xavier', 'Mathis', 'Didier', 'Arif', 'Hamza', + 'Jacob', 'Leart', 'Laszlo', 'Predrag', 'Mentor', 'Wendelin', 'Luís', + 'Constantin', 'Erion', 'Berat', 'Dardan', 'Melchior', 'Serkan', + 'Dorian', 'Eren', 'Fatih', 'Luzius', 'Nebojsa', 'Metin', 'Diar', 'Rino', + 'Ekrem', 'Isa', 'Jetmir', 'Edward', 'Nikolaos', 'Gazmend', 'Haris', + 'Kian', 'Ensar', 'Mirsad', 'Danny', 'Senad', 'Donat', 'Bilal', 'Ron', + 'Nael', 'Guy', 'Julio', 'Kujtim', 'Kushtrim', 'Lutz', 'Balthasar', + 'Rouven', 'Lias', 'Neil', 'Abraham', 'Magnus', 'Sérgio', 'Hansjürg', + 'Said', 'Ismael', 'Detlef', 'Umberto', 'Admir', 'Jayden', 'Jaime', + 'Karl-Heinz', 'Tomás', 'Florim', 'Achim', 'Devin', 'Maxime', 'Fitim', + 'Jean-Marc', 'Rayan', 'Sadik', 'Tarik', 'Abdul', 'Jack', 'Mergim', + 'Nelio', 'Sam', 'Flamur', 'Ignaz', 'Samuele', 'Tony', 'Petr', + 'Waldemar', 'Arda', 'Ardit', 'Lukasz', 'Milorad', 'Nicolai', 'Ramiz', + 'Aziz', 'Kamil', 'Rinor', 'Safet', 'Piero', 'Erkan', 'Niko', 'Zsolt', + 'Ernest', 'Miodrag', 'Alvaro', 'Astrit', 'Edmund', 'Jules', 'Cristiano', + 'Ivano', 'Kenneth', 'Saverio', 'Semir', 'Burak', 'Theophil', 'Altin', + 'Andrzej', 'Jonah', 'Jiri', 'Salih', 'Zoltán', 'Ferenc', 'Grzegorz', + 'Irfan', 'Johan', 'Kaan', 'Süleyman', 'Hussein', 'Rexhep', 'Besart', + 'Janos', 'Labinot', 'Onur', 'Stjepan', 'Domenic', 'Siro', 'Abel', + 'Florent', 'Christos', 'Swen', 'Branislav', 'Mato', 'Amin', 'Matej', + 'Slavko', 'Jusuf', 'Luke', 'Slavisa', 'Erol', 'Gabor', 'Jasmin', + 'Visar', 'Sinisa', 'Isidor', 'Merlin', 'Claus', 'Marin', 'Zoltan', + 'Muhammad', 'Neo', 'Zeno', 'Istvan', 'Adis', 'Edon', 'Gil', 'Leopold', + 'Hartmut', 'Raimund', 'Ken', 'Csaba', 'Kerim', 'Norman', 'Lucio', + 'László', 'Marjan', 'Damjan', 'Eugenio', 'Domingos', 'Reiner', + 'Augusto', 'Gzim', 'Nazmi', 'Laurenz', 'Zlatko', 'Jaroslav', 'Nevin', + 'Biagio', 'Felice', 'Balz', 'Boban', 'Marcelo', 'Caspar', 'Ledion', + 'Rodolfo', 'Aldin', 'Matti', 'Remzi', 'Ljubisa', 'Til', 'Péter', 'Umut', + 'Baris', 'Lirim', 'Mehdi', 'Edmond', 'Gonçalo', 'Jasin', 'Niclas', + 'Jordan', 'Mahmoud', 'Stanislav', 'Cornelius', 'Jona', 'Khaled', + 'Quentin', 'Gökhan', 'Imer', 'Volkan', 'Harun', 'Miran', 'Damien', + 'Gennaro', 'Jari', 'Marian', 'Rüdiger', 'Albrecht', 'Mile', 'Thiago', + 'Yvan', 'Alwin', 'Gani', 'Mahmut', 'Pero', 'Evan', 'Fisnik', 'Idriz', + 'Sergej', 'Sabri', 'Felipe', 'István', 'Dave', 'Hans-Jürgen', 'Jean-Luc', + 'Kastriot', 'Mariusz', 'Arne', 'Faruk', 'Gebhard', 'German', + 'Tamás', 'Anes', 'Arbnor', 'Mats', 'Drilon', 'Fábio', 'Mihajlo', + 'Sedat', 'Tahir', + ) + + # extracted from https://www.bfs.admin.ch/bfs/it/home/statistiche/popolazione/nascite-decessi/nomi-svizzera.assetdetail.3243318.html + first_names_female = ( + 'Maria', 'Anna', 'Ursula', 'Ruth', 'Elisabeth', 'Sandra', 'Monika', + 'Claudia', 'Verena', 'Nicole', 'Barbara', 'Silvia', 'Andrea', 'Marie', + 'Daniela', 'Christine', 'Karin', 'Marianne', 'Erika', 'Margrit', + 'Brigitte', 'Susanne', 'Rita', 'Laura', 'Sarah', 'Katharina', + 'Rosmarie', 'Esther', 'Heidi', 'Anita', 'Manuela', 'Rosa', 'Doris', + 'Sonja', 'Beatrice', 'Yvonne', 'Gertrud', 'Jacqueline', 'Sara', 'Irene', + 'Ana', 'Franziska', 'Cornelia', 'Fabienne', 'Gabriela', 'Patricia', + 'Martina', 'Julia', 'Edith', 'Eva', 'Isabelle', 'Sabrina', 'Nathalie', + 'Alexandra', 'Corinne', 'Angela', 'Melanie', 'Alice', 'Nadine', + 'Jessica', 'Denise', 'Elena', 'Vanessa', 'Simone', 'Anne', 'Regula', + 'Susanna', 'Carmen', 'Sophie', 'Caroline', 'Emma', 'Nina', 'Tanja', + 'Catherine', 'Sabine', 'Lara', 'Petra', 'Lea', 'Céline', 'Jasmin', + 'Therese', 'Stefanie', 'Johanna', 'Nadia', 'Tamara', 'Chantal', + 'Martha', 'Michelle', 'Christina', 'Marina', 'Adelheid', 'Dora', + 'Monique', 'Rahel', 'Hedwig', 'Lisa', 'Janine', 'Pia', 'Anja', + 'Elsbeth', 'Madeleine', 'Eveline', 'Judith', 'Diana', 'Françoise', + 'Charlotte', 'Maja', 'Eliane', 'Renate', 'Christiane', 'Michèle', + 'Jennifer', 'Bettina', 'Chiara', 'Bernadette', 'Aline', 'Carla', + 'Helena', 'Brigitta', 'Mirjam', 'Theresia', 'Astrid', 'Nadja', 'Jana', + 'Selina', 'Priska', 'Lena', 'Stephanie', 'Lucia', 'Linda', 'Regina', + 'Agnes', 'Olivia', 'Sonia', 'Valérie', 'Klara', 'Ramona', 'Lina', + 'Elsa', 'Helene', 'Monica', 'Iris', 'Hanna', 'Valentina', 'Annemarie', + 'Elisa', 'Margrith', 'Dominique', 'Beatrix', 'Cristina', 'Paula', + 'Magdalena', 'Livia', 'Sofia', 'Patrizia', 'Liliane', 'Nelly', 'Marion', + 'Ida', 'Alina', 'Isabel', 'Vera', 'Stéphanie', 'Giulia', 'Leonie', + 'Jeannette', 'Christa', 'Alessia', 'Véronique', 'Myriam', 'Emilie', + 'Olga', 'Nora', 'Julie', 'Sylvia', 'Margaretha', 'Claudine', 'Marlise', + 'Miriam', 'Sibylle', 'Sylvie', 'Lydia', 'Katja', 'Lorena', 'Jolanda', + 'Rebecca', 'Mia', 'Irma', 'Larissa', 'Luana', 'Martine', 'Deborah', + 'Francesca', 'Veronika', 'Isabella', 'Noemi', 'Ingrid', 'Frieda', + 'Suzanne', 'Liselotte', 'Michaela', 'Florence', 'Evelyne', 'Hildegard', + 'Corina', 'Danielle', 'Laurence', 'Carole', 'Milena', 'Cécile', 'Mara', + 'Luzia', 'Sandrine', 'Gisela', 'Simona', 'Mélanie', 'Béatrice', 'Marta', + 'Antonia', 'Erna', 'Gabriele', 'Katrin', 'Kathrin', 'Melissa', + 'Camille', 'Adriana', 'Fiona', 'Lucie', 'Natalie', 'Teresa', 'Renata', + 'Josiane', 'Sophia', 'Clara', 'Luisa', 'Silvana', 'Jeannine', 'Pascale', + 'Hélène', 'Emilia', 'Joëlle', 'Gabriella', 'Maya', 'Marianna', 'Ines', + 'Léa', 'Claire', 'Marisa', 'Sina', 'Lia', 'Paola', 'Mathilde', 'Sabina', + 'Alessandra', 'Ivana', 'Anne-Marie', 'Elvira', 'Bianca', 'Samira', + 'Cindy', 'Amélie', 'Chloé', 'Kim', 'Victoria', 'Annette', 'Angelina', + 'Dorothea', 'Antoinette', 'Tina', 'Tania', 'Angelika', 'Valeria', + 'Flavia', 'Margaritha', 'Rachel', 'Marguerite', 'Jeanne', 'Yvette', + 'Natalia', 'Alicia', 'Giovanna', 'Mireille', 'Liliana', 'Pauline', + 'Seraina', 'Elodie', 'Ariane', 'Helga', 'Zoé', 'Natascha', 'Muriel', + 'Francine', 'Joana', 'Melina', 'Aurélie', 'Thi', 'Giuseppina', + 'Tatiana', 'Margareta', 'Louise', 'Marija', 'Debora', 'Salome', + 'Viviane', 'Fanny', 'Katia', 'Carolina', 'Irina', 'Bertha', 'Marlene', + 'Noémie', 'Amanda', 'Sarina', 'Marlies', 'Lilian', 'Irène', 'Laetitia', + 'Kristina', 'Jasmine', 'Ella', 'Jenny', 'Gabrielle', 'Carmela', 'Manon', + 'Helen', 'Fatima', 'Stefania', 'Virginie', 'Ladina', 'Jelena', 'Berta', + 'Antonella', 'Rebekka', 'Audrey', 'Anaïs', 'Tatjana', 'Annina', + 'Margot', 'Carina', 'Samantha', 'Evelyn', 'Annamarie', 'Tiziana', + 'Arlette', 'Emily', 'Kerstin', 'Svenja', 'Caterina', 'Christelle', + 'Saskia', 'Elin', 'Lilly', 'Anouk', 'Rose', 'Fatma', 'Lynn', 'Elina', + 'Colette', 'Josette', 'Leila', 'Gerda', 'Susana', 'Geneviève', + 'Désirée', 'Naomi', 'Stella', 'Romina', 'Delphine', 'Aurora', 'Estelle', + 'Juliette', 'Tabea', 'Anina', 'Thérèse', 'Mariana', 'Beatriz', 'Hilda', + 'Lotti', 'Séverine', 'Delia', 'Ronja', 'Gina', 'Mila', 'Antonietta', + 'Veronica', 'Aleksandra', 'Gisèle', 'Lidia', 'Natacha', 'Laure', + 'Pamela', 'Rosemarie', 'Marie-Louise', 'Jael', 'Eleonora', 'Zoe', + 'Franca', 'Hannah', 'Yolanda', 'Birgit', 'Amina', 'Leandra', 'Elise', + 'Alma', 'Anastasia', 'Marlis', 'Fernanda', 'Irmgard', 'Micheline', + 'Elfriede', 'Selma', 'Ilona', 'Danièle', 'Justine', 'Magali', + 'Georgette', 'Graziella', 'Cynthia', 'Cäcilia', 'Loredana', 'Géraldine', + 'Sylviane', 'Heidy', 'Alexia', 'Mary', 'Ingeborg', 'Emine', 'Yara', + 'Ursina', 'Marlène', 'Morgane', 'Michela', 'Katarina', 'Marine', + 'Ulrike', 'Daria', 'Bruna', 'Jasmina', 'Mira', 'Soraya', 'Juliana', + 'Marlyse', 'Agnès', 'Carine', 'Gloria', 'Alena', 'Svetlana', 'Josefina', + 'Annelise', 'Myrta', 'Roberta', 'Pierrette', 'Celine', 'Annika', + 'Mirjana', 'Andrée', 'Célia', 'Serena', 'Christel', 'Susan', 'Jocelyne', + 'Renée', 'Vesna', 'Andreia', 'Elizabeth', 'Cinzia', 'Karen', 'Cecilia', + 'Karine', 'Marlen', 'Ilaria', 'Virginia', 'Suzana', 'Rose-Marie', + 'Jeanine', 'Margarita', 'Joanna', 'Coralie', 'Elif', 'Dina', 'Janina', + 'Josefine', 'Mina', 'Hannelore', 'Gordana', 'Luciana', 'Heike', + 'Aurelia', 'Luna', 'Dagmar', 'Filomena', 'Dolores', 'Raymonde', + 'Prisca', 'Annick', 'Huguette', 'Elisabetha', 'Dragana', 'Leona', + 'Elke', 'Inès', 'Valerie', 'Ayse', 'Amelia', 'Flurina', 'Marie-Thérèse', + 'Roswitha', 'Rosanna', 'Ginette', 'Matilde', 'Mélissa', 'Yolande', + 'Océane', 'Giada', 'Murielle', 'Danijela', 'Sanja', 'Slavica', + 'Adelina', 'Valentine', 'Catarina', 'Raquel', 'Emmanuelle', 'Dana', + 'Erica', 'Marcelle', 'Nancy', 'Germaine', 'Concetta', 'Gianna', 'Jade', + 'Lucienne', 'Letizia', 'Fatime', 'Odette', 'Solange', 'Lily', 'Nada', + 'Lucy', 'Margherita', 'Hana', 'Elisabetta', 'Leana', 'Vivienne', + 'Viola', 'Ljiljana', 'Yasmin', 'Agatha', 'Jutta', 'Anabela', 'Laila', + 'Romana', 'Gaëlle', 'Belinda', 'Aida', 'Federica', 'Giuliana', 'Marie-Claire', + 'Mirella', 'Eliana', 'Paulina', 'Diane', 'Paulette', 'Mona', + 'Milica', 'Corinna', 'Yasmine', 'Annalise', 'Hatice', 'Alyssa', 'Ellen', + 'Kelly', 'Biljana', 'Noelia', 'Alisha', 'Léonie', 'Amandine', 'Amelie', + 'Amy', 'Lilli', 'Nelli', 'Margaux', 'Melisa', 'Anneliese', 'Marie-Claude', + 'Sheila', 'Dragica', 'Xenia', 'Violeta', 'Annie', 'Lou', + 'Meret', 'Ute', 'Irena', 'Catia', 'Giuseppa', 'Sybille', 'Lana', + 'Celina', 'Aylin', 'Zita', 'Karolina', 'Louisa', 'Luise', 'Rosina', + 'Jeanette', 'Sharon', 'Henriette', 'Joy', 'Inge', 'Carola', 'Tiffany', + 'Margarete', 'Marietta', 'Josefa', 'Leyla', 'Nuria', 'Anne-Lise', + 'Gilberte', 'Giorgia', 'Emanuela', 'Daisy', 'Angelica', 'Josephine', + 'Ilse', 'Natasa', 'Andrina', 'Fabiana', 'Flora', 'Maude', 'Melinda', + 'Silke', 'Enya', 'Amira', 'Beate', 'Viktoria', 'Francisca', 'Merita', + 'Odile', 'Snezana', 'Ariana', 'Carol', 'Medina', 'Romy', 'Noëlle', + 'Alissa', 'Elisabete', 'Camilla', 'Miranda', 'Leonora', 'Lejla', + 'Zeynep', 'Maeva', 'Domenica', 'Raffaella', 'Salomé', 'Ornella', + 'Rosaria', 'Alisa', 'Alba', 'Zorica', 'Roxane', 'Raphaela', 'Inês', + 'Hermine', 'Waltraud', 'Aude', 'Selin', 'Claude', 'Arianna', + 'Angélique', 'Leticia', 'Malin', 'Viviana', 'Annelies', 'Damaris', + 'Liv', 'Maëlle', 'Sigrid', 'Jill', 'Karina', 'Liana', 'Eline', 'Lotte', + 'Lise', 'Rina', 'Morena', 'Marilena', 'Leonor', 'Annamaria', 'Albina', + 'Dijana', 'Grazia', 'Ester', 'Vivien', 'Käthi', 'Tara', 'Aurore', + 'Katarzyna', 'Amalia', 'Celia', 'Seline', 'Anisa', 'Azra', 'Adeline', + 'Fabiola', 'Agnieszka', 'Greta', 'Jane', 'Vincenza', 'Rosalia', 'Marie-Christine', + 'Marijana', 'Jara', 'Gudrun', 'Edona', 'Gioia', 'Marcia', + 'Myrtha', 'Ekaterina', 'Lucette', 'Gertrude', 'Ljubica', 'Adrienne', + 'Malika', 'Ava', 'Yael', 'Lola', 'Marinette', 'Teuta', 'Joelle', + 'Beata', 'Line', 'Priscilla', 'Rosalie', 'Mariette', 'Ada', 'Marielle', + 'Juliane', 'Emina', 'Arta', 'Margarida', 'Claire-Lise', 'Gaia', 'Antje', + 'Raffaela', 'Mercedes', 'Vlora', 'Arlinda', 'Nicoletta', 'Alison', + 'Ottilia', 'Clémence', 'Lisbeth', 'Shqipe', 'Adele', 'Maryline', + 'Sónia', 'Ewa', 'Drita', 'Gladys', 'Dilara', 'Malgorzata', 'Eleni', + 'Sandy', 'Marika', 'Marthe', 'Norma', 'Carolin', 'Ina', 'Agathe', + 'Alea', 'Anke', 'Zora', 'Cristiana', 'Marie-José', 'Liridona', 'Romane', + 'Noa', 'Shpresa', 'Esma', 'Assunta', 'Vittoria', 'Blerta', 'Ema', + 'Elma', 'Anika', 'Marie-France', 'Samanta', 'Mariella', 'Meryem', + 'Tânia', 'Ghislaine', 'Marica', 'Desirée', 'Britta', 'Joséphine', + 'Moira', 'Maud', 'Gemma', 'Silja', 'Sladjana', 'Sanela', 'Iva', 'Ann', + 'Nadège', 'Corine', 'Frida', 'Cheyenne', 'Theres', 'Lilia', 'Matilda', + 'Geraldine', 'Lisette', 'Margaret', 'Eloïse', 'Felicia', 'Hulda', + 'Kathleen', 'Erina', 'Jovana', 'Timea', 'Sofie', 'Wanda', 'Anne-Sophie', + 'Zahra', 'Florentina', 'Alexa', 'Ruzica', 'Ganimete', 'Herta', 'Agata', + 'Yasemin', 'Frédérique', 'Nicola', 'Norah', 'Lorenza', 'Ilenia', + 'Khadija', 'Elda', 'Felicitas', 'Charline', 'Ela', 'Eliza', 'Katalin', + 'Rafaela', 'Tanya', 'Theresa', 'Floriane', 'Katherine', 'Asia', + 'Mathilda', 'Fabia', 'Fatmire', 'Imelda', 'Susi', 'Zuzana', 'Cassandra', + 'Donatella', 'Antonina', 'Luz', 'Yasmina', 'Eleonore', 'Bluette', + 'Malea', 'Danica', 'Dunja', 'Kirsten', 'Eileen', 'Mirela', 'Vanesa', + 'Filipa', 'Léna', 'Jaqueline', 'Evelin', 'Violette', 'Vjollca', + 'Mariam', 'Maryam', 'Amela', 'Luigia', 'Noëmi', 'Joyce', 'Pierina', + 'Aferdita', 'Cátia', 'Mandy', 'Regine', 'Branka', 'Radmila', 'Vreneli', + 'Marcella', 'Grace', 'Ludivine', 'Natasha', 'Olena', 'Elea', 'Jil', + 'Anne-Laure', 'Eléonore', 'Ayla', 'Mégane', 'Maddalena', 'Sereina', + 'Tenzin', 'Dafina', 'Eve', 'Leslie', 'Alix', 'Kiara', 'Ardita', 'Aisha', + 'Margit', 'Janet', 'Kira', 'Margreth', 'Amra', 'Marcela', 'Solène', + 'Kristin', 'Fitore', 'Rosalba', 'Edina', 'Mariangela', 'Agnese', + 'Albulena', 'Joanne', 'Ylenia', 'Clarissa', 'Magda', 'Marie-Laure', + 'Anna-Maria', 'Luljeta', 'Marjorie', 'Annalisa', 'Lidija', 'Ajla', + 'Sanije', 'Wendy', 'Wilma', 'Layla', 'Thea', 'Esra', 'Jaël', 'Fernande', + 'Vania', 'Lindita', 'Tessa', 'Mimoza', 'Kata', 'Maryse', 'Dalia', + 'Käthe', 'Blanka', 'Katerina', 'Ophélie', 'Leni', 'Egzona', 'Eugenia', + 'Lavinia', 'Léane', 'Bukurije', 'Cordula', 'Teodora', 'Nikolina', + 'Özlem', 'Lauriane', 'Milka', 'Patrícia', 'Aloisia', 'Lya', 'Derya', + 'Margret', 'Juana', 'Vilma', 'Annabelle', 'Besarta', 'Norina', + 'Cláudia', 'Nives', 'Hanife', 'Blerina', 'Lydie', 'Gerlinde', 'Déborah', + 'Mirlinda', 'Vivian', 'María', 'Shania', 'Romaine', 'Tuana', 'Berthe', + 'Friederike', 'Susann', 'Rosetta', 'Hava', 'Kaltrina', 'Marie-Jeanne', + 'Iryna', 'Mihaela', + ) + + first_names = first_names_male + first_names_female + + last_names = ( + 'Ackermann', 'Aebi', 'Albrecht', 'Ammann', 'Amrein', 'Arnold', + 'Bachmann', 'Bader', 'Bär', 'Bättig', 'Bauer', 'Baumann', + 'Baumgartner', 'Baur', 'Beck', 'Benz', 'Berger', 'Bernasconi', + 'Betschart', 'Bianchi', 'Bieri', 'Blaser', 'Blum', 'Bolliger', + 'Bosshard', 'Braun', 'Brun', 'Brunner', 'Bucher', 'Bühler', 'Bühlmann', + 'Burri', 'Christen', 'Egger', 'Egli', 'Eichenberger', 'Erni', 'Ernst', + 'Eugster', 'Fankhauser', 'Favre', 'Fehr', 'Felber', 'Felder', + 'Ferrari', 'Fischer', 'Flückiger', 'Forster', 'Frei', 'Frey', 'Frick', + 'Friedli', 'Fuchs', 'Furrer', 'Gasser', 'Geiger', 'Gerber', 'Gfeller', + 'Giger', 'Gloor', 'Graf', 'Grob', 'Gross', 'Gut', 'Haas', 'Häfliger', + 'Hafner', 'Hartmann', 'Hasler', 'Hauser', 'Hermann', 'Herzog', 'Hess', + 'Hirt', 'Hodel', 'Hofer', 'Hoffmann', 'Hofmann', 'Hofstetter', 'Hotz', + 'Huber', 'Hug', 'Hunziker', 'Hürlimann', 'Imhof', 'Isler', 'Iten', + 'Jäggi', 'Jenni', 'Jost', 'Kägi', 'Kaiser', 'Kälin', 'Käser', + 'Kaufmann', 'Keller', 'Kern', 'Kessler', 'Knecht', 'Koch', 'Kohler', + 'Kuhn', 'Küng', 'Kunz', 'Lang', 'Lanz', 'Lehmann', 'Leu', 'Leunberger', + 'Lüscher', 'Lustenberger', 'Lüthi', 'Lutz', 'Mäder', 'Maier', 'Marti', + 'Martin', 'Maurer', 'Mayer', 'Meier', 'Meili', 'Meister', 'Merz', + 'Mettler', 'Meyer', 'Michel', 'Moser', 'Müller', 'Näf', 'Ott', 'Peter', + 'Pfister', 'Portmann', 'Probst', 'Rey', 'Ritter', 'Roos', 'Roth', + 'Rüegg', 'Schäfer', 'Schaller', 'Schär', 'Schärer', 'Schaub', + 'Scheidegger', 'Schenk', 'Scherrer', 'Schlatter', 'Schmid', 'Schmidt', + 'Schneider', 'Schnyder', 'Schoch', 'Schuler', 'Schumacher', 'Schürch', + 'Schwab', 'Schwarz', 'Schweizer', 'Seiler', 'Senn', 'Sidler', + 'Siegrist', 'Sigrist', 'Spörri', 'Stadelmann', 'Stalder', 'Staub', + 'Stauffer', 'Steffen', 'Steiger', 'Steiner', 'Steinmann', 'Stettler', + 'Stocker', 'Stöckli', 'Stucki', 'Studer', 'Stutz', 'Suter', 'Sutter', + 'Tanner', 'Thommen', 'Tobler', 'Vogel', 'Vogt', 'Wagner', 'Walder', + 'Walter', 'Weber', 'Wegmann', 'Wehrli', 'Weibel', 'Wenger', + 'Wettstein', 'Widmer', 'Winkler', 'Wirth', 'Wirz', 'Wolf', 'Wüthrich', + 'Wyss', 'Zbinden', 'Zehnder', 'Ziegler', 'Zimmermann', 'Zingg', + 'Zollinger', 'Zürcher', + ) + + prefixes = ('Dr.', 'Prof.',) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/person/ro_RO/__init__.py new/Faker-0.8.10/faker/providers/person/ro_RO/__init__.py --- old/Faker-0.8.8/faker/providers/person/ro_RO/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/person/ro_RO/__init__.py 2018-01-12 16:24:26.000000000 +0100 @@ -0,0 +1,113 @@ +# coding=utf-8 +from __future__ import unicode_literals +from .. import Provider as PersonProvider + + +class Provider(PersonProvider): + formats_female = ( + '{{first_name_female}} {{last_name}}', + '{{first_name_female}} {{last_name}}', + '{{first_name_female}} {{last_name}}', + '{{first_name_female}} {{first_name_female}} {{last_name}}' + ) + formats_male = ( + '{{first_name_male}} {{last_name}}', + '{{first_name_male}} {{last_name}}', + '{{first_name_male}} {{last_name}}', + '{{first_name_male}} {{first_name_male}} {{last_name}}' + ) + + # sources: https://ro.wikipedia.org/wiki/List%C4%83_de_prenume_rom%C3%A2ne%C8%99ti + first_names_female = ( + 'Ada', 'Adela', 'Adelaida', 'Adelina', 'Adina', 'Adriana', 'Agata', 'Aglaia', 'Agripina', 'Aida', 'Alberta', + 'Albertina', 'Alexandra', 'Alexandrina', 'Alice', 'Alida', 'Alina', 'Alis', 'Alma', 'Amalia', 'Amanda', + 'Amelia', + 'Ana', 'Anabela', 'Anaida', 'Anamaria', 'Anastasia', 'Anca', 'Ancuța', 'Anda', 'Andra', 'Andrada', 'Andreea', + 'Anemona', 'Aneta', 'Angela', 'Anghelina', 'Anica', 'Anișoara', 'Antoaneta', 'Antonela', 'Antonia', 'Anuța', + 'Ariadna', 'Ariana', 'Arina', 'Aristița', 'Artemisa', 'Astrid', 'Atena', 'Augustina', 'Aura', 'Aurelia', + 'Aureliana', 'Aurica', 'Aurora', 'Axenia', 'Beatrice', 'Betina', 'Bianca', 'Blanduzia', 'Bogdana', 'Brândușa', + 'Camelia', 'Carina', 'Carla', 'Carmen', 'Carmina', 'Carolina', 'Casandra', 'Casiana', 'Caterina', 'Catinca', + 'Catrina', 'Catrinel', 'Cătălina', 'Cecilia', 'Celia', 'Cerasela', 'Cezara', 'Cipriana', 'Clara', 'Clarisa', + 'Claudia', 'Clementina', 'Cleopatra', 'Codrina', 'Codruța', 'Constanța', 'Constantina', 'Consuela', 'Coralia', + 'Corina', 'Cornelia', 'Cosmina', 'Crenguța', 'Crina', 'Cristina', 'Daciana', 'Dafina', 'Daiana', 'Dalia', + 'Dana', + 'Daniela', 'Daria', 'Dariana', 'Delia', 'Demetra', 'Denisa', 'Despina', 'Diana', 'Dida', 'Didina', 'Dimitrina', + 'Dina', 'Dochia', 'Doina', 'Domnica', 'Dora', 'Doriana', 'Dorina', 'Dorli', 'Draga', 'Dumitra', 'Dumitrana', + 'Ecaterina', 'Eftimia', 'Elena', 'Eleonora', 'Eliana', 'Elisabeta', 'Elisaveta', 'Eliza', 'Elodia', 'Elvira', + 'Emanuela', 'Emilia', 'Erica', 'Estera', 'Eufrosina', 'Eugenia', 'Eusebia', 'Eva', 'Evanghelina', 'Evelina', + 'Fabia', 'Fabiana', 'Felicia', 'Filofteia', 'Fiona', 'Flavia', 'Floare', 'Floarea', 'Flora', 'Florența', + 'Florentina', 'Floriana', 'Florica', 'Florina', 'Francesca', 'Frusina', 'Gabriela', 'Geanina', 'Gențiana', + 'Georgeta', 'Georgia', 'Georgiana', 'Geta', 'Gherghina', 'Gianina', 'Gina', 'Giorgiana', 'Grațiana', 'Grațiela', + 'Henrieta', 'Heracleea', 'Hortensia', 'Iasmina', 'Ica', 'Ileana', 'Ilinca', 'Ilona', 'Ina', 'Ioana', 'Ioanina', + 'Iolanda', 'Ionela', 'Ionelia', 'Iosefina', 'Iridenta', 'Irina', 'Iris', 'Isabela', 'Iulia', 'Iuliana', + 'Iustina', + 'Ivona', 'Izabela', 'Jana', 'Janeta', 'Janina', 'Jasmina', 'Jeana', 'Julia', 'Julieta', 'Larisa', 'Laura', + 'Laurenția', 'Lavinia', 'Lăcrămioara', 'Leana', 'Lelia', 'Leontina', 'Leopoldina', 'Letiția', 'Lia', 'Liana', + 'Lidia', 'Ligia', 'Lili', 'Liliana', 'Lioara', 'Livia', 'Loredana', 'Lorelei', 'Lorena', 'Luana', 'Lucia', + 'Luciana', 'Lucreția', 'Ludmila', 'Ludovica', 'Luiza', 'Luminița', 'Magdalena', 'Maia', 'Malvina', 'Manuela', + 'Mara', 'Marcela', 'Marcheta', 'Marga', 'Margareta', 'Maria', 'Mariana', 'Maricica', 'Marilena', 'Marina', + 'Marinela', 'Marioara', 'Marta', 'Matilda', 'Mădălina', 'Mălina', 'Mărioara', 'Măriuca', 'Melania', 'Melina', + 'Mihaela', 'Milena', 'Mina', 'Minodora', 'Mioara', 'Mirabela', 'Mirela', 'Mirona', 'Miruna', 'Mona', 'Monalisa', + 'Monica', 'Nadia', 'Narcisa', 'Natalia', 'Natașa', 'Nicoleta', 'Niculina', 'Nidia', 'Noemi', 'Nora', 'Norica', + 'Oana', 'Octavia', 'Octaviana', 'Ofelia', 'Olga', 'Olimpia', 'Olivia', 'Ortansa', 'Otilia', 'Ozana', 'Pamela', + 'Paraschiva', 'Patricia', 'Paula', 'Paulica', 'Paulina', 'Petronela', 'Petruța', 'Pompilia', 'Profira', 'Rada', + 'Rafila', 'Raluca', 'Ramona', 'Rebeca', 'Renata', 'Rica', 'Roberta', 'Robertina', 'Rodica', 'Romanița', + 'Romina', + 'Roxana', 'Roxelana', 'Roza', 'Rozalia', 'Ruxanda', 'Ruxandra', 'Sabina', 'Sabrina', 'Safta', 'Salomea', + 'Sanda', + 'Saveta', 'Savina', 'Sânziana', 'Semenica', 'Severina', 'Sidonia', 'Silvana', 'Silvia', 'Silviana', 'Simina', + 'Simona', 'Smaranda', 'Sofia', 'Sonia', 'Sorana', 'Sorina', 'Speranța', 'Stana', 'Stanca', 'Stela', 'Steliana', + 'Steluța', 'Suzana', 'Svetlana', 'Ștefana', 'Ștefania', 'Tamara', 'Tania', 'Tatiana', 'Teea', 'Teodora', + 'Teodosia', + 'Teona', 'Tiberia', 'Timea', 'Tinca', 'Tincuța', 'Tudora', 'Tudorița', 'Tudosia', 'Valentina', 'Valeria', + 'Vanesa', + 'Varvara', 'Vasilica', 'Venera', 'Vera', 'Veronica', 'Veta', 'Vicenția', 'Victoria', 'Violeta', 'Viorela', + 'Viorica', 'Virginia', 'Viviana', 'Vlădelina', 'Voichița', 'Xenia', 'Zaharia', 'Zamfira', 'Zaraza', 'Zenobia', + 'Zenovia', 'Zina', 'Zoe') + + first_names_male = ( + 'Achim', 'Adam', 'Adelin', 'Adi', 'Adonis', 'Adrian', 'Agnos', 'Albert', 'Aleodor', 'Alex', 'Alexandru', + 'Alexe', 'Alin', 'Alistar', 'Amedeu', 'Amza', 'Anatolie', 'Andrei', 'Andrian', 'Angel', 'Anghel', 'Antim', + 'Anton', + 'Antonie', 'Antoniu', 'Arian', 'Aristide', 'Arsenie', 'Augustin', 'Aurel', 'Aurelian', 'Aurică', 'Avram', + 'Axinte', + 'Barbu', 'Bartolomeu', 'Basarab', 'Bănel', 'Bebe', 'Beniamin', 'Benone', 'Bernard', 'Bogdan', 'Brăduț', 'Bucur', + 'Caius', 'Camil', 'Cantemir', 'Carol', 'Casian', 'Cazimir', 'Călin', 'Cătălin', 'Cedrin', 'Cezar', 'Ciprian', + 'Claudiu', 'Codin', 'Codrin', 'Codruț', 'Constantin', 'Cornel', 'Corneliu', 'Corvin', 'Cosmin', 'Costache', + 'Costel', 'Costin', 'Crin', 'Cristea', 'Cristian', 'Cristobal', 'Cristofor', 'Dacian', 'Damian', 'Dan', + 'Daniel', + 'Darius', 'David', 'Decebal', 'Denis', 'Dinu', 'Dominic', 'Dorel', 'Dorian', 'Dorin', 'Dorinel', 'Doru', + 'Dragoș', + 'Ducu', 'Dumitru', 'Edgar', 'Edmond', 'Eduard', 'Eftimie', 'Emanoil', 'Emanuel', 'Emanuil', 'Emil', 'Emilian', + 'Eremia', 'Eric', 'Ernest', 'Eugen', 'Eusebiu', 'Eustațiu', 'Fabian', 'Felix', 'Filip', 'Fiodor', 'Flaviu', + 'Florea', 'Florentin', 'Florian', 'Florin', 'Francisc', 'Frederic', 'Gabi', 'Gabriel', 'Gelu', 'George', + 'Georgel', + 'Georgian', 'Ghenadie', 'Gheorghe', 'Gheorghiță', 'Ghiță', 'Gică', 'Gicu', 'Giorgian', 'Grațian', 'Gregorian', + 'Grigore', 'Haralamb', 'Haralambie', 'Horațiu', 'Horea', 'Horia', 'Iacob', 'Iancu', 'Ianis', 'Ieremia', + 'Ilarie', + 'Ilarion', 'Ilie', 'Inocențiu', 'Ioan', 'Ion', 'Ionel', 'Ionică', 'Ionuț', 'Iosif', 'Irinel', 'Iulian', 'Iuliu', + 'Iurie', 'Iustin', 'Iustinian', 'Ivan', 'Jan', 'Jean', 'Jenel', 'Ladislau', 'Lascăr', 'Laurențiu', 'Laurian', + 'Lazăr', 'Leonard', 'Leontin', 'Leordean', 'Lică', 'Liviu', 'Lorin', 'Luca', 'Lucențiu', 'Lucian', 'Lucrețiu', + 'Ludovic', 'Manole', 'Marcel', 'Marcu', 'Marian', 'Marin', 'Marius', 'Martin', 'Matei', 'Maxim', 'Maximilian', + 'Mădălin', 'Mihai', 'Mihail', 'Mihnea', 'Mircea', 'Miron', 'Mitică', 'Mitruț', 'Mugur', 'Mugurel', 'Nae', + 'Narcis', + 'Nechifor', 'Nelu', 'Nichifor', 'Nicoară', 'Nicodim', 'Nicolae', 'Nicolaie', 'Nicu', 'Niculiță', 'Nicușor', + 'Nicuță', 'Norbert', 'Norman', 'Octav', 'Octavian', 'Octaviu', 'Olimpian', 'Olimpiu', 'Oliviu', 'Ovidiu', + 'Pamfil', + 'Panagachie', 'Panait', 'Paul', 'Pavel', 'Pătru', 'Petre', 'Petrică', 'Petrișor', 'Petru', 'Petruț', 'Pleșu', + 'Pompiliu', 'Radu', 'Rafael', 'Rareș', 'Raul', 'Răducu', 'Răzvan', 'Relu', 'Remus', 'Robert', 'Romeo', + 'Romulus', + 'Sabin', 'Sandu', 'Sandu', 'Sava', 'Sebastian', 'Sergiu', 'Sever', 'Severin', 'Silvian', 'Silviu', 'Simi', + 'Simion', + 'Sinică', 'Sorin', 'Stan', 'Stancu', 'Stelian', 'Șerban', 'Ștefan', 'Teodor', 'Teofil', 'Teohari', 'Theodor', + 'Tiberiu', 'Timotei', 'Titus', 'Todor', 'Toma', 'Traian', 'Tudor', 'Valentin', 'Valeriu', 'Valter', 'Vasile', + 'Vasilică', 'Veniamin', 'Vicențiu', 'Victor', 'Vincențiu', 'Viorel', 'Visarion', 'Vlad', 'Vladimir', 'Vlaicu', + 'Voicu', 'Zamfir', 'Zeno') + + # sources: https://ro.wikipedia.org/wiki/Lista_celor_mai_uzuale_nume_de_familie#Rom%C3%A2nia + last_names = ( + 'Aanei', 'Ababei', 'Albu', 'Ardelean', 'Barbu', 'Cristea', 'Diaconescu', 'Diaconu', 'Dima', 'Dinu', 'Dobre', + 'Dochioiu', 'Dumitrescu', 'Eftimie', 'Ene', 'Florea', 'Georgescu', 'Gheorghiu', 'Ionescu', 'Ioniță', + 'Manole', 'Marin', 'Mazilescu', 'Mocanu', 'Nemeș', 'Nistor', 'Nistor', 'Niță', 'Oprea', 'Pop', + 'Popa', 'Popescu', 'Preda', 'Pușcașu', 'Stan', 'Stancu', 'Stoica', 'Stănescu', 'Suciu', 'Tabacu', 'Toma', + 'Tomescu', 'Tudor', 'Voinea') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/phone_number/en_GB/__init__.py new/Faker-0.8.10/faker/providers/phone_number/en_GB/__init__.py --- old/Faker-0.8.8/faker/providers/phone_number/en_GB/__init__.py 2017-12-05 16:57:34.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/phone_number/en_GB/__init__.py 2018-01-12 16:24:26.000000000 +0100 @@ -5,25 +5,262 @@ class Provider(PhoneNumberProvider): # Source: # https://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdom + # Fake phone numbers should be fake - this provider has been rewritten to + # use numbers reserved for dramatic use by Ofcom. See the following: + # https://en.wikipedia.org/wiki/Fictitious_telephone_number#United_Kingdom + # This ensures no genuine numbers are generated at random. + # + # It's worth noting that the following examples include incorrect notation + # of British phone numbers. +44(0)xxx is incorrect and the '(0)' should + # be omitted. However, it's commonly written this way by Joe Public + # and would better serve this project to be included, as it represents + # more realistic data and is of benefit to those developing data cleansing + # tools etc. All possible official fake numbers are covered below. cellphone_formats = ( - '+44 7### ######', - '+44 7#########', - '07### ######', - '07#########', + '07700 900 ###', + '07700 900###', + '07700900###', + '(07700) 900 ###', + '(07700) 900###', + '(07700)900###', + '+447700 900 ###', + '+447700 900###', + '+447700900###', + '+44(0)7700 900 ###', + '+44(0)7700 900###', + '+44(0)7700900###', ) formats = ( - '+44(0)##########', - '+44(0)#### ######', - '+44(0)#########', - '+44(0)#### #####', - '0##########', - '0#########', - '0#### ######', - '0#### #####', - '(0####) ######', - '(0####) #####', + '0113 496 0###', + '0113 4960###', + '01134960###', + '(0113) 496 0###', + '(0113) 4960###', + '(0113)4960###', + '+44113 496 0###', + '+44113 4960###', + '+441134960###', + '+44(0)113 496 0###', + '+44(0)113 4960###', + '+44(0)1134960###', + '0114 496 0###', + '0114 4960###', + '01144960###', + '(0114) 496 0###', + '(0114) 4960###', + '(0114)4960###', + '+44114 496 0###', + '+44114 4960###', + '+441144960###', + '+44(0)114 496 0###', + '+44(0)114 4960###', + '+44(0)1144960###', + '0115 496 0###', + '0115 4960###', + '01154960###', + '(0115) 496 0###', + '(0115) 4960###', + '(0115)4960###', + '+44115 496 0###', + '+44115 4960###', + '+441154960###', + '+44(0)115 496 0###', + '+44(0)115 4960###', + '+44(0)1154960###', + '0116 496 0###', + '0116 4960###', + '01164960###', + '(0116) 496 0###', + '(0116) 4960###', + '(0116)4960###', + '+44116 496 0###', + '+44116 4960###', + '+441164960###', + '+44(0)116 496 0###', + '+44(0)116 4960###', + '+44(0)1164960###', + '0117 496 0###', + '0117 4960###', + '01174960###', + '(0117) 496 0###', + '(0117) 4960###', + '(0117)4960###', + '+44117 496 0###', + '+44117 4960###', + '+441174960###', + '+44(0)117 496 0###', + '+44(0)117 4960###', + '+44(0)1174960###', + '0118 496 0###', + '0118 4960###', + '01184960###', + '(0118) 496 0###', + '(0118) 4960###', + '(0118)4960###', + '+44118 496 0###', + '+44118 4960###', + '+441184960###', + '+44(0)118 496 0###', + '+44(0)118 4960###', + '+44(0)1184960###', + '0121 496 0###', + '0121 4960###', + '01214960###', + '(0121) 496 0###', + '(0121) 4960###', + '(0121)4960###', + '+44121 496 0###', + '+44121 4960###', + '+441214960###', + '+44(0)121 496 0###', + '+44(0)121 4960###', + '+44(0)1214960###', + '0131 496 0###', + '0131 4960###', + '01314960###', + '(0131) 496 0###', + '(0131) 4960###', + '(0131)4960###', + '+44131 496 0###', + '+44131 4960###', + '+441314960###', + '+44(0)131 496 0###', + '+44(0)131 4960###', + '+44(0)1314960###', + '0141 496 0###', + '0141 4960###', + '01414960###', + '(0141) 496 0###', + '(0141) 4960###', + '(0141)4960###', + '+44141 496 0###', + '+44141 4960###', + '+441414960###', + '+44(0)141 496 0###', + '+44(0)141 4960###', + '+44(0)1414960###', + '0151 496 0###', + '0151 4960###', + '01514960###', + '(0151) 496 0###', + '(0151) 4960###', + '(0151)4960###', + '+44151 496 0###', + '+44151 4960###', + '+441514960###', + '+44(0)151 496 0###', + '+44(0)151 4960###', + '+44(0)1514960###', + '0161 496 0###', + '0161 4960###', + '01614960###', + '(0161) 496 0###', + '(0161) 4960###', + '(0161)4960###', + '+44161 496 0###', + '+44161 4960###', + '+441614960###', + '+44(0)161 496 0###', + '+44(0)161 4960###', + '+44(0)1614960###', + '0191 498 0###', + '0191 4960###', + '01914960###', + '(0191) 496 0###', + '(0191) 4960###', + '(0191)4960###', + '+44191 496 0###', + '+44191 4960###', + '+441914960###', + '+44(0)191 496 0###', + '+44(0)191 4960###', + '+44(0)1914960###', + '020 7946 0###', + '020 74960###', + '02074960###', + '(020) 7496 0###', + '(020) 74960###', + '(020)74960###', + '+4420 7496 0###', + '+4420 74960###', + '+442074960###', + '+44(0)20 7496 0###', + '+44(0)20 74960###', + '+44(0)2074960###', + '028 9018 0###', + '028 9018###', + '0289018###', + '(028) 9018 0###', + '(028) 9018###', + '(028)9018###', + '+4428 9018 0###', + '+4428 9018###', + '+44289018###', + '+44(0)28 9018 0###', + '+44(0)28 9018###', + '+44(0)289018###', + '029 2018 0###', + '029 2018###', + '0292018###', + '(029) 2018 0###', + '(029) 2018###', + '(029)2018###', + '+4429 2018 0###', + '+4429 2018###', + '+44292018###', + '+44(0)29 2018 0###', + '+44(0)29 2018###', + '+44(0)292018###', + '01632 960 ###', + '01632 960###', + '01632960###', + '(01632) 960 ###', + '(01632) 960###', + '(01632)960###', + '+441632 960 ###', + '+441632 960###', + '+441632960###', + '+44(0)1632 960 ###', + '+44(0)1632 960###', + '+44(0)1632960###', + '0306 999 0###', + '0306 9990###', + '03069990###', + '(0306) 999 0###', + '(0306) 9990###', + '(0306)9990###', + '+44306 999 0###', + '+44306 9990###', + '+443069990###', + '+44(0)306 999 0###', + '+44(0)306 9990###', + '+44(0)3069990###', + '0808 157 0###', + '0808 1570###', + '08081570###', + '(0808) 157 0###', + '(0808) 1570###', + '(0808)1570###', + '+44808 157 0###', + '+44808 1570###', + '+448081570###', + '+44(0)808 157 0###', + '+44(0)808 1570###', + '+44(0)8081570###', + '0909 879 0###', + '0909 8790###', + '09098790###', + '(0909) 879 0###', + '(0909) 8790###', + '(0909)8790###', + '+44909 879 0###', + '+44909 8790###', + '+449098790###', + '+44(0)909 879 0###', + '+44(0)909 8790###', + '+44(0)9098790###', ) def cellphone_number(self): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/ssn/en_GB/__init__.py new/Faker-0.8.10/faker/providers/ssn/en_GB/__init__.py --- old/Faker-0.8.8/faker/providers/ssn/en_GB/__init__.py 1970-01-01 01:00:00.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/ssn/en_GB/__init__.py 2018-01-12 16:24:26.000000000 +0100 @@ -0,0 +1,25 @@ +# coding=utf-8 +from __future__ import unicode_literals +from .. import Provider as BaseProvider + + +class Provider(BaseProvider): + # Source: + # https://en.wikipedia.org/wiki/National_Insurance_number + # UK National Insurance numbers (NINO) follow a specific format + # To avoid generating real NINOs, the prefix and suffix letters + # remain static using values reserved by HMRC (never to be used). + # Example format: "QR 12 34 56 C" or "QR123456C" - only alphanumeric + # and whitespace characters are permitted. Whitespace is for readability + # only and is generally included as per the above examples, but a + # few 'styles' have been included below for the sake of realism. + + nino_formats = ( + 'ZZ ## ## ## T', + 'ZZ######T', + 'ZZ ###### T', + ) + + def ssn(self): + pattern = self.random_element(self.nino_formats) + return self.numerify(self.generator.parse(pattern)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/faker/providers/user_agent/__init__.py new/Faker-0.8.10/faker/providers/user_agent/__init__.py --- old/Faker-0.8.8/faker/providers/user_agent/__init__.py 2017-12-05 16:57:34.000000000 +0100 +++ new/Faker-0.8.10/faker/providers/user_agent/__init__.py 2018-01-16 17:04:06.000000000 +0100 @@ -33,7 +33,8 @@ name = self.random_element(self.user_agents) return getattr(self, name)() - def chrome(self): + def chrome(self, version_from=13, version_to=63, + build_from=800, build_to=899): saf = str(self.generator.random.randint(531, 536)) + \ str(self.generator.random.randint(0, 2)) tmplt = '({0}) AppleWebKit/{1} (KHTML, like Gecko)' \ @@ -41,18 +42,18 @@ platforms = ( tmplt.format(self.linux_platform_token(), saf, - self.generator.random.randint(13, 15), - self.generator.random.randint(800, 899), + self.generator.random.randint(version_from, version_to), + self.generator.random.randint(build_from, build_to), saf), tmplt.format(self.windows_platform_token(), saf, - self.generator.random.randint(13, 15), - self.generator.random.randint(800, 899), + self.generator.random.randint(version_from, version_to), + self.generator.random.randint(build_from, build_to), saf), tmplt.format(self.mac_platform_token(), saf, - self.generator.random.randint(13, 15), - self.generator.random.randint(800, 899), + self.generator.random.randint(version_from, version_to), + self.generator.random.randint(build_from, build_to), saf), ) @@ -167,6 +168,6 @@ def mac_platform_token(self): return 'Macintosh; {0} Mac OS X 10_{1}_{2}'.format( self.random_element(self.mac_processors), - self.generator.random.randint(5, 8), + self.generator.random.randint(5, 12), self.generator.random.randint(0, 9), ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/setup.py new/Faker-0.8.10/setup.py --- old/Faker-0.8.8/setup.py 2017-12-19 16:58:44.000000000 +0100 +++ new/Faker-0.8.10/setup.py 2018-01-16 17:07:42.000000000 +0100 @@ -11,7 +11,7 @@ README = fp.read() -version = '0.8.8' +version = '0.8.10' # this module can be zip-safe if the zipimporter implements iter_modules or if # pkgutil.iter_importer_modules has registered a dispatch for the zipimporter. @@ -33,14 +33,13 @@ }, classifiers=[ # See https://pypi.python.org/pypi?%3Aaction=list_classifiers - 'Development Status :: 3 - Alpha', + 'Development Status :: 5 - Production/Stable', 'Environment :: Console', 'Intended Audience :: Developers', 'Programming Language :: Python', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', @@ -60,6 +59,7 @@ platforms=["any"], test_suite='tests', zip_safe=zip_safe, + python_requires=">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", install_requires=[ "python-dateutil>=2.4", "six", @@ -67,18 +67,12 @@ ], tests_require=[ "email_validator>=1.0.0,<1.1.0", - "ukpostcodeparser==1.1.1", + "ukpostcodeparser>=1.1.1", "mock", ], extras_require={ ':python_version=="2.7"': [ 'ipaddress', ], - ':python_version=="3.0"': [ - 'importlib', - ], - ':python_version=="3.2"': [ - 'ipaddress', - ], } ) Binary files old/Faker-0.8.8/tests/__pycache__/test_base_provider.cpython-36.pyc and new/Faker-0.8.10/tests/__pycache__/test_base_provider.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/__pycache__/test_factory.cpython-36.pyc and new/Faker-0.8.10/tests/__pycache__/test_factory.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/__pycache__/test_generator.cpython-36.pyc and new/Faker-0.8.10/tests/__pycache__/test_generator.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/__init__.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/__init__.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_address.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_address.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_automotive.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_automotive.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_color.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_color.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_company.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_company.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_currency.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_currency.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_date_time.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_date_time.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_file.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_file.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_internet.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_internet.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_isbn.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_isbn.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_job.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_job.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_person.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_person.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_phone_number.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_phone_number.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/providers/__pycache__/test_ssn.cpython-36.pyc and new/Faker-0.8.10/tests/providers/__pycache__/test_ssn.cpython-36.pyc differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/tests/providers/test_date_time.py new/Faker-0.8.10/tests/providers/test_date_time.py --- old/Faker-0.8.8/tests/providers/test_date_time.py 2017-12-05 16:57:34.000000000 +0100 +++ new/Faker-0.8.10/tests/providers/test_date_time.py 2018-01-08 23:27:55.000000000 +0100 @@ -191,6 +191,10 @@ self.assertTrue(datetime_start <= random_date) self.assertTrue(datetime_end >= random_date) + def test_past_datetime_within_second(self): + # Should not raise a ``ValueError`` + self.factory.past_datetime(start_date='+1s') + def test_date_between_dates(self): date_end = date.today() date_start = date_end - timedelta(days=10) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Faker-0.8.8/tests/providers/test_internet.py new/Faker-0.8.10/tests/providers/test_internet.py --- old/Faker-0.8.8/tests/providers/test_internet.py 2017-12-05 16:57:34.000000000 +0100 +++ new/Faker-0.8.10/tests/providers/test_internet.py 2018-01-12 16:24:26.000000000 +0100 @@ -14,6 +14,17 @@ from tests import string_types +class TestInternetProvider(unittest.TestCase): + """ Tests internet """ + + def setUp(self): + self.factory = Faker() + + def test_email(self): + email = self.factory.email(domain='example.com') + self.assertEqual(email.split('@')[1], 'example.com') + + class TestJaJP(unittest.TestCase): """ Tests internet in the ja_JP locale """ Binary files old/Faker-0.8.8/tests/utils/__pycache__/__init__.cpython-36.pyc and new/Faker-0.8.10/tests/utils/__pycache__/__init__.cpython-36.pyc differ Binary files old/Faker-0.8.8/tests/utils/__pycache__/test_utils.cpython-36.pyc and new/Faker-0.8.10/tests/utils/__pycache__/test_utils.cpython-36.pyc differ