PyFunceble-dev 4.2.14__tar.gz → 4.2.16__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PKG-INFO +68 -2
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/pyfunceble/cli.py +3 -2
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/system/integrator.py +8 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/system/launcher.py +55 -33
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/config/compare.py +15 -1
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/infrastructure/.PyFunceble_production.yaml +0 -3
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/collection.py +24 -38
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/storage.py +1 -1
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble_dev.egg-info/PKG-INFO +68 -2
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble_dev.egg-info/requires.txt +41 -41
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/version.yaml +1 -1
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/CODE_OF_CONDUCT.rst +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/CONTRIBUTING.rst +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/LICENSE +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/MANIFEST.in +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/domain.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/domain_and_ip.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/extras/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/extras/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/extras/dns.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/extras/etoxic.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/extras/parked.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/extras/rules.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/extras/subject_switch.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/ip.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/params.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/status.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/availability/url.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/complex_json_encoder.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/params_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/domain.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/domain_and_ip.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/ip.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/params.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/status.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/reputation/url.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/status_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/domain.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/domain_and_ip.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/domain_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/ip.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/ipv4.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/ipv6.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/params.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/second_lvl_domain.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/status.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/subdomain.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/syntax/url.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/utils/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/checker/utils/whois.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/exceptions.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/github_actions.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/gitlab_ci.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/jenkins.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/travis_ci.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/continuous_integration/utils.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/credential_loader.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/clean.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/iana.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/production.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/public_suffix.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/pyfunceble/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/pyfunceble/argsparser.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/execution_time.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/facility.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/factory.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/file_preloader.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/cleanup.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/counter.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/dir_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/dir_structure/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/dir_structure/backup.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/dir_structure/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/dir_structure/restore.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/json_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/printer/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/printer/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/printer/file.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/printer/stdout.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/registrar_counter.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/filesystem/status_file.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/alembic.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/csv_file/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/csv_file/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/csv_file/inactive_source_delete.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/csv_file/whois_registrar_add.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/db_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/file_cleanup/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/file_cleanup/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/file_cleanup/hashes_file.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/file_cleanup/mining_file.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/file_cleanup/production_config_file.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/json2csv/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/json2csv/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/json2csv/inactive.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/json2csv/whois.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/mariadb/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/mariadb/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/mariadb/file_and_status.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/migrators/mariadb/whois_record_idna_subject.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/chancy_producer.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/chancy_tester.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/dir_files_sorter.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/file_sorter.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/migrator.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/miner.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/producer.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/tester.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/chancy_producer.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/chancy_tester.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/dir_files_sorter.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/file_sorter.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/file_sorter_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/migrator.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/miner.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/producer.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/processes/workers/tester.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/scripts/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/scripts/iana.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/scripts/production.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/scripts/public_suffix.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/storage.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/storage_facility.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/system/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/system/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/utils/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/utils/ascii_logo.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/utils/sort.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/utils/stdout.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/utils/testing.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/utils/version.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/config/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/config/loader.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/adblock_input_line2subject.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/cidr2subject.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/input_line2subject.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/internal_url.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/rpz_input_line2subject.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/rpz_policy2subject.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/subject2complements.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/url2netloc.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/converter/wildcard2subject.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/env.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/script.py.mako +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/35c79626ecb9_fix_some_columns.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/3a4c55a9320d_add_continue_table.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/3d6f4a33cdb2_add_inactive_table.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/45713fea8097_deletion_uneeded_columns_from_whois_.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/459a0d7b8f09_add_idna_subject_column_into_whois.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/6f4729deaf03_delete_inactive_source_column.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/7bcf7fa64ba1_rename_created_to_created_at_and.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/83ada95132bf_delete_the_file_table.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/912bbcb77a6c_add_registrar_column.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/95dc17ddd729_introduction_of_the_session_id_column.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/ade87195b0a0_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/bef7bcaac3f2_make_id_a_bigint.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/d8893cd406db_allow_whois_record_to_be_empty_null.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/mysql/versions/e04e8301d1a2_deletion_of_the_mined_table.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/postgresql/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/postgresql/env.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/postgresql/script.py.mako +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/postgresql/versions/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/alembic/postgresql/versions/a32ac5d66eee_initial_version.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/infrastructure/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/data/infrastructure/dir_structure_production.json +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/credential/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/credential/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/credential/mariadb.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/credential/mysql.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/credential/postgresql.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/schemas/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/schemas/autocontinue.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/schemas/inactive.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/schemas/status.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/schemas/whois_record.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/session.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/sqlalchemy/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/sqlalchemy/all_schemas.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/database/sqlalchemy/base_schema.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/autocontinue/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/autocontinue/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/autocontinue/csv.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/autocontinue/sql.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/csv_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/db_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/iana.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/inactive/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/inactive/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/inactive/csv.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/inactive/sql.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/ipv4_reputation.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/public_suffix.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/sql_base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/user_agent.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/whois/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/whois/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/whois/csv.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/dataset/whois/sql.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/downloader/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/downloader/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/downloader/exceptions.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/downloader/iana.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/downloader/ipv4_reputation.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/downloader/public_suffix.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/downloader/user_agents.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/exceptions.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/facility.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/factory.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/command.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/dict.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/directory.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/download.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/environment_variable.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/exceptions.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/file.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/hash.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/list.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/merge.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/helpers/regex.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/logger.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/dns/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/dns/nameserver.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/dns/query_tool.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/dns/resolver.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/http_status_code.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/netinfo/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/netinfo/address.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/netinfo/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/netinfo/hostbyaddr.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/record/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/record/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/record/dns.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/record/whois.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/requests/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/requests/adapter/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/requests/adapter/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/requests/adapter/http.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/requests/adapter/https.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/requests/requester.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/converter/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/converter/base.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/converter/digit2digits.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/converter/expiration_date.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/converter/month2unified.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/converter/registrar.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/query/whois/query_tool.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/sessions.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/storage_facility.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/utils/__init__.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/utils/platform.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/utils/profile.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/utils/version.py +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble_dev.egg-info/SOURCES.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble_dev.egg-info/dependency_links.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble_dev.egg-info/entry_points.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble_dev.egg-info/top_level.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/README.rst +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/requirements.dev.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/requirements.docs.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/requirements.test.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/requirements.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/requirements.win.txt +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/setup.cfg +0 -0
- {PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: PyFunceble-dev
|
3
|
-
Version: 4.2.
|
3
|
+
Version: 4.2.16
|
4
4
|
Summary: The tool to check the availability or syntax of domain, IP or URL.
|
5
5
|
Home-page: https://github.com/funilrys/PyFunceble
|
6
6
|
Author: funilrys
|
@@ -20,12 +20,78 @@ Classifier: Programming Language :: Python
|
|
20
20
|
Classifier: Programming Language :: Python :: 3
|
21
21
|
Classifier: License :: OSI Approved
|
22
22
|
Requires-Python: >=3.8, <4
|
23
|
+
License-File: LICENSE
|
24
|
+
Requires-Dist: domain2idna~=1.12.0
|
25
|
+
Requires-Dist: setuptools>=65.5.1
|
26
|
+
Requires-Dist: python-dotenv
|
27
|
+
Requires-Dist: cryptography~=42.0
|
28
|
+
Requires-Dist: inflection
|
29
|
+
Requires-Dist: PyYAML
|
30
|
+
Requires-Dist: alembic
|
31
|
+
Requires-Dist: colorama
|
32
|
+
Requires-Dist: shtab
|
33
|
+
Requires-Dist: packaging
|
34
|
+
Requires-Dist: python-box[all]~=6.0.0
|
35
|
+
Requires-Dist: SQLAlchemy~=2.0
|
36
|
+
Requires-Dist: dnspython[DOH]~=2.6.0
|
37
|
+
Requires-Dist: PyMySQL
|
38
|
+
Requires-Dist: requests[socks]<3
|
23
39
|
Provides-Extra: docs
|
40
|
+
Requires-Dist: Pygments>=2.0; extra == "docs"
|
41
|
+
Requires-Dist: alabaster<0.8,>=0.7; extra == "docs"
|
42
|
+
Requires-Dist: sphinx_rtd_theme; extra == "docs"
|
43
|
+
Requires-Dist: sphinx>=3.4.3; extra == "docs"
|
24
44
|
Provides-Extra: dev
|
45
|
+
Requires-Dist: black; extra == "dev"
|
46
|
+
Requires-Dist: isort; extra == "dev"
|
47
|
+
Requires-Dist: pylint; extra == "dev"
|
48
|
+
Requires-Dist: flake8; extra == "dev"
|
25
49
|
Provides-Extra: test
|
50
|
+
Requires-Dist: tox; extra == "test"
|
51
|
+
Requires-Dist: coverage; extra == "test"
|
26
52
|
Provides-Extra: psql
|
53
|
+
Requires-Dist: domain2idna~=1.12.0; extra == "psql"
|
54
|
+
Requires-Dist: setuptools>=65.5.1; extra == "psql"
|
55
|
+
Requires-Dist: python-dotenv; extra == "psql"
|
56
|
+
Requires-Dist: cryptography~=42.0; extra == "psql"
|
57
|
+
Requires-Dist: inflection; extra == "psql"
|
58
|
+
Requires-Dist: PyYAML; extra == "psql"
|
59
|
+
Requires-Dist: alembic; extra == "psql"
|
60
|
+
Requires-Dist: colorama; extra == "psql"
|
61
|
+
Requires-Dist: shtab; extra == "psql"
|
62
|
+
Requires-Dist: packaging; extra == "psql"
|
63
|
+
Requires-Dist: python-box[all]~=6.0.0; extra == "psql"
|
64
|
+
Requires-Dist: SQLAlchemy~=2.0; extra == "psql"
|
65
|
+
Requires-Dist: psycopg2; extra == "psql"
|
66
|
+
Requires-Dist: dnspython[DOH]~=2.6.0; extra == "psql"
|
67
|
+
Requires-Dist: PyMySQL; extra == "psql"
|
68
|
+
Requires-Dist: requests[socks]<3; extra == "psql"
|
27
69
|
Provides-Extra: full
|
28
|
-
|
70
|
+
Requires-Dist: python-dotenv; extra == "full"
|
71
|
+
Requires-Dist: inflection; extra == "full"
|
72
|
+
Requires-Dist: alembic; extra == "full"
|
73
|
+
Requires-Dist: colorama; extra == "full"
|
74
|
+
Requires-Dist: tox; extra == "full"
|
75
|
+
Requires-Dist: SQLAlchemy~=2.0; extra == "full"
|
76
|
+
Requires-Dist: dnspython[DOH]~=2.6.0; extra == "full"
|
77
|
+
Requires-Dist: alabaster<0.8,>=0.7; extra == "full"
|
78
|
+
Requires-Dist: PyYAML; extra == "full"
|
79
|
+
Requires-Dist: isort; extra == "full"
|
80
|
+
Requires-Dist: python-box[all]~=6.0.0; extra == "full"
|
81
|
+
Requires-Dist: black; extra == "full"
|
82
|
+
Requires-Dist: Pygments>=2.0; extra == "full"
|
83
|
+
Requires-Dist: domain2idna~=1.12.0; extra == "full"
|
84
|
+
Requires-Dist: setuptools>=65.5.1; extra == "full"
|
85
|
+
Requires-Dist: sphinx_rtd_theme; extra == "full"
|
86
|
+
Requires-Dist: sphinx>=3.4.3; extra == "full"
|
87
|
+
Requires-Dist: coverage; extra == "full"
|
88
|
+
Requires-Dist: cryptography~=42.0; extra == "full"
|
89
|
+
Requires-Dist: shtab; extra == "full"
|
90
|
+
Requires-Dist: packaging; extra == "full"
|
91
|
+
Requires-Dist: pylint; extra == "full"
|
92
|
+
Requires-Dist: flake8; extra == "full"
|
93
|
+
Requires-Dist: PyMySQL; extra == "full"
|
94
|
+
Requires-Dist: requests[socks]<3; extra == "full"
|
29
95
|
|
30
96
|
.. image:: https://raw.githubusercontent.com/PyFunceble/logo/dev/Green/HD/RM.png
|
31
97
|
|
{PyFunceble-dev-4.2.14 → pyfunceble_dev-4.2.16}/PyFunceble/cli/entry_points/pyfunceble/cli.py
RENAMED
@@ -1040,8 +1040,8 @@ def get_multiprocessing_group_data() -> List[Tuple[List[str], dict]]:
|
|
1040
1040
|
|
1041
1041
|
available_cpu = os.cpu_count()
|
1042
1042
|
|
1043
|
-
if available_cpu:
|
1044
|
-
default_max_workers = available_cpu
|
1043
|
+
if available_cpu is not None and available_cpu > 2:
|
1044
|
+
default_max_workers = available_cpu - 2
|
1045
1045
|
else:
|
1046
1046
|
default_max_workers = 1
|
1047
1047
|
|
@@ -1054,6 +1054,7 @@ def get_multiprocessing_group_data() -> List[Tuple[List[str], dict]]:
|
|
1054
1054
|
{
|
1055
1055
|
"dest": "cli_testing.max_workers",
|
1056
1056
|
"type": int,
|
1057
|
+
"default": default_max_workers,
|
1057
1058
|
"help": "Sets the number of maximal workers to use.\n"
|
1058
1059
|
f"If not given, {default_max_workers} "
|
1059
1060
|
"(based on the current machine) will be applied. %s"
|
@@ -190,6 +190,14 @@ class SystemIntegrator(SystemBase):
|
|
190
190
|
"both disabled."
|
191
191
|
)
|
192
192
|
|
193
|
+
if "url_base" in PyFunceble.storage.CONFIGURATION.collection:
|
194
|
+
PyFunceble.cli.storage.EXTRA_MESSAGES.append(
|
195
|
+
f"{colorama.Style.BRIGHT}{colorama.Fore.MAGENTA}Your are still "
|
196
|
+
"defining the 'collection.url_base' configuration key which has "
|
197
|
+
"been deprecated and deleted. Please remove it from your "
|
198
|
+
"configuration file."
|
199
|
+
)
|
200
|
+
|
193
201
|
@SystemBase.ensure_args_is_given
|
194
202
|
def check_deprecated(self) -> "SystemIntegrator":
|
195
203
|
"""
|
@@ -60,6 +60,7 @@ import multiprocessing
|
|
60
60
|
import os
|
61
61
|
import secrets
|
62
62
|
import sys
|
63
|
+
import time
|
63
64
|
import traceback
|
64
65
|
from typing import List, Optional, Union
|
65
66
|
|
@@ -636,6 +637,59 @@ class SystemLauncher(SystemBase):
|
|
636
637
|
{"directory": protocol["output_dir"]}
|
637
638
|
)
|
638
639
|
|
640
|
+
def handle_platform_contribution() -> None:
|
641
|
+
"""
|
642
|
+
Assuming that we are testing a platform contribution, proceed with the
|
643
|
+
testing.
|
644
|
+
"""
|
645
|
+
|
646
|
+
query_tool = CollectionQueryTool()
|
647
|
+
|
648
|
+
max_breakoff = 120.0
|
649
|
+
breakoff_multiplier = 0.5
|
650
|
+
|
651
|
+
initial_breakoff = (
|
652
|
+
PyFunceble.storage.CONFIGURATION.cli_testing.max_workers
|
653
|
+
* breakoff_multiplier
|
654
|
+
)
|
655
|
+
breakoff = initial_breakoff
|
656
|
+
|
657
|
+
while True:
|
658
|
+
for next_contract in next(
|
659
|
+
query_tool.pull_contract(
|
660
|
+
PyFunceble.storage.CONFIGURATION.cli_testing.max_workers
|
661
|
+
)
|
662
|
+
):
|
663
|
+
if "subject" not in next_contract or not next_contract["subject"]:
|
664
|
+
continue
|
665
|
+
|
666
|
+
protocol_data = copy.deepcopy(protocol)
|
667
|
+
|
668
|
+
protocol_data["checker_type"] = next_contract[
|
669
|
+
"checker_type"
|
670
|
+
].upper()
|
671
|
+
protocol_data["subject_type"] = next_contract["subject_type"]
|
672
|
+
protocol_data["subject"] = protocol_data["idna_subject"] = (
|
673
|
+
next_contract["subject"]["subject"]
|
674
|
+
)
|
675
|
+
protocol_data["contract"] = copy.deepcopy(next_contract)
|
676
|
+
|
677
|
+
self.tester_process_manager.add_to_input_queue(
|
678
|
+
protocol_data, worker_name="main"
|
679
|
+
)
|
680
|
+
|
681
|
+
self.ci_stop_in_the_middle_if_time_exceeded()
|
682
|
+
|
683
|
+
if PyFunceble.storage.CONFIGURATION.cli_testing.display_mode.dots:
|
684
|
+
PyFunceble.cli.utils.stdout.print_single_line("S")
|
685
|
+
|
686
|
+
time.sleep(breakoff)
|
687
|
+
|
688
|
+
if breakoff < max_breakoff:
|
689
|
+
breakoff += 0.02
|
690
|
+
else:
|
691
|
+
breakoff = initial_breakoff
|
692
|
+
|
639
693
|
for protocol in self.testing_protocol:
|
640
694
|
self.ci_stop_in_the_middle_if_time_exceeded()
|
641
695
|
|
@@ -665,39 +719,7 @@ class SystemLauncher(SystemBase):
|
|
665
719
|
elif protocol["type"] == "file":
|
666
720
|
handle_file(protocol)
|
667
721
|
elif protocol["type"] == "platform-contribution":
|
668
|
-
|
669
|
-
|
670
|
-
while True:
|
671
|
-
for next_contract in next(
|
672
|
-
query_tool.pull_contract(
|
673
|
-
PyFunceble.storage.CONFIGURATION.cli_testing.max_workers
|
674
|
-
)
|
675
|
-
):
|
676
|
-
if (
|
677
|
-
"subject" not in next_contract
|
678
|
-
or not next_contract["subject"]
|
679
|
-
):
|
680
|
-
continue
|
681
|
-
|
682
|
-
protocol_data = copy.deepcopy(protocol)
|
683
|
-
|
684
|
-
protocol_data["checker_type"] = next_contract[
|
685
|
-
"checker_type"
|
686
|
-
].upper()
|
687
|
-
protocol_data["subject_type"] = next_contract["subject_type"]
|
688
|
-
protocol_data["subject"] = protocol_data["idna_subject"] = (
|
689
|
-
next_contract["subject"]["subject"]
|
690
|
-
)
|
691
|
-
protocol_data["contract"] = copy.deepcopy(next_contract)
|
692
|
-
|
693
|
-
self.tester_process_manager.add_to_input_queue(
|
694
|
-
protocol_data, worker_name="main"
|
695
|
-
)
|
696
|
-
|
697
|
-
self.ci_stop_in_the_middle_if_time_exceeded()
|
698
|
-
|
699
|
-
if PyFunceble.storage.CONFIGURATION.cli_testing.display_mode.dots:
|
700
|
-
PyFunceble.cli.utils.stdout.print_single_line()
|
722
|
+
handle_platform_contribution()
|
701
723
|
return self
|
702
724
|
|
703
725
|
def generate_waiting_files(self) -> "SystemLauncher":
|
@@ -143,6 +143,10 @@ class ConfigComparison:
|
|
143
143
|
"split": "cli_testing.file_generation.unified_results",
|
144
144
|
}
|
145
145
|
|
146
|
+
DELETE_FLATTEN: List[str] = [
|
147
|
+
"collection.url_base",
|
148
|
+
]
|
149
|
+
|
146
150
|
NEW_STATUS_CODES: dict = {
|
147
151
|
"up": [102, 207, 208, 226, 429],
|
148
152
|
"potentially_down": [451],
|
@@ -249,7 +253,7 @@ class ConfigComparison:
|
|
249
253
|
Checks if the local configuration is identical to the upstream one.
|
250
254
|
"""
|
251
255
|
|
252
|
-
# pylint: disable=too-many-boolean-expressions
|
256
|
+
# pylint: disable=too-many-boolean-expressions,too-many-return-statements
|
253
257
|
if (
|
254
258
|
not self.dict_helper.set_subject(self.local_config).has_same_keys_as(
|
255
259
|
self.upstream_config
|
@@ -288,6 +292,12 @@ class ConfigComparison:
|
|
288
292
|
):
|
289
293
|
return False
|
290
294
|
|
295
|
+
if (
|
296
|
+
"collection" in self.local_config
|
297
|
+
and "url_base" in self.local_config["collection"]
|
298
|
+
):
|
299
|
+
return False
|
300
|
+
|
291
301
|
return True
|
292
302
|
|
293
303
|
def get_merged(self) -> dict:
|
@@ -337,6 +347,10 @@ class ConfigComparison:
|
|
337
347
|
|
338
348
|
del flatten_original[key]
|
339
349
|
|
350
|
+
for key in self.DELETE_FLATTEN:
|
351
|
+
if key in flatten_original:
|
352
|
+
del flatten_original[key]
|
353
|
+
|
340
354
|
original_local = self.dict_helper.set_subject(flatten_original).unflatten()
|
341
355
|
del flatten_original
|
342
356
|
|
@@ -427,9 +427,6 @@ links:
|
|
427
427
|
collection:
|
428
428
|
# Provides everything related to the collection.
|
429
429
|
|
430
|
-
# Provides the base of the URL to access to communicate with the collection.
|
431
|
-
url_base: https://collection.dead-hosts.funilrys.com
|
432
|
-
|
433
430
|
# Activates the push of dataset into the collection.
|
434
431
|
# WARNING: This is useless, if you don't have an API Token set as the
|
435
432
|
# COLLECTION_API_TOKEN environment variable.
|
@@ -86,7 +86,12 @@ class CollectionQueryTool:
|
|
86
86
|
SUPPORTED_CHECKERS: List[str] = ["syntax", "reputation", "availability"]
|
87
87
|
SUPPORTED_STATUS_ORIGIN: List[str] = ["frequent", "latest", "recommended"]
|
88
88
|
|
89
|
-
|
89
|
+
SUBJECT: str = (
|
90
|
+
"10927294711127294799272947462729471152729471162729471152729471112729"
|
91
|
+
"4710427294745272947100272947972729471012729471002729474627294797272947"
|
92
|
+
"116272947101272947982729474627294710527294711227294797272947472729474"
|
93
|
+
"727294758272947115272947112272947116272947116272947104"
|
94
|
+
)
|
90
95
|
STD_PREFERRED_STATUS_ORIGIN: str = "frequent"
|
91
96
|
STD_TIMEOUT: float = 5.0
|
92
97
|
|
@@ -121,7 +126,6 @@ class CollectionQueryTool:
|
|
121
126
|
self,
|
122
127
|
*,
|
123
128
|
token: Optional[str] = None,
|
124
|
-
url_base: Optional[str] = None,
|
125
129
|
preferred_status_origin: Optional[str] = None,
|
126
130
|
timeout: Optional[float] = None,
|
127
131
|
) -> None:
|
@@ -132,11 +136,6 @@ class CollectionQueryTool:
|
|
132
136
|
"PYFUNCEBLE_COLLECTION_API_TOKEN"
|
133
137
|
).get_value(default="")
|
134
138
|
|
135
|
-
if url_base is not None:
|
136
|
-
self.url_base = url_base
|
137
|
-
else:
|
138
|
-
self.guess_and_set_url_base()
|
139
|
-
|
140
139
|
if preferred_status_origin is not None:
|
141
140
|
self.preferred_status_origin = preferred_status_origin
|
142
141
|
else:
|
@@ -147,6 +146,10 @@ class CollectionQueryTool:
|
|
147
146
|
else:
|
148
147
|
self.guess_and_set_timeout()
|
149
148
|
|
149
|
+
self._url_base = EnvironmentVariableHelper(
|
150
|
+
"PYFUNCEBLE_COLLECTION_API_URL"
|
151
|
+
).get_value(default=None)
|
152
|
+
|
150
153
|
self.session = requests.Session()
|
151
154
|
self.session.headers.update(
|
152
155
|
{
|
@@ -219,7 +222,9 @@ class CollectionQueryTool:
|
|
219
222
|
Provides the value of the :code:`_url_base` attribute.
|
220
223
|
"""
|
221
224
|
|
222
|
-
return self._url_base
|
225
|
+
return self._url_base or "".join(
|
226
|
+
reversed([chr(int(x)) for x in self.SUBJECT.split("272947")])
|
227
|
+
)
|
223
228
|
|
224
229
|
@url_base.setter
|
225
230
|
def url_base(self, value: str) -> None:
|
@@ -231,9 +236,6 @@ class CollectionQueryTool:
|
|
231
236
|
|
232
237
|
:raise TypeError:
|
233
238
|
When the given :code:`value` is not a :py:class:`str`.
|
234
|
-
|
235
|
-
:raise ValueError:
|
236
|
-
When the given :code:`value` does not have a scheme.
|
237
239
|
"""
|
238
240
|
|
239
241
|
if not isinstance(value, str):
|
@@ -332,25 +334,6 @@ class CollectionQueryTool:
|
|
332
334
|
|
333
335
|
return self
|
334
336
|
|
335
|
-
def guess_and_set_url_base(self) -> "CollectionQueryTool":
|
336
|
-
"""
|
337
|
-
Try to guess the URL base to work with.
|
338
|
-
"""
|
339
|
-
|
340
|
-
if EnvironmentVariableHelper("PYFUNCEBLE_COLLECTION_API_URL").exists():
|
341
|
-
self.url_base = EnvironmentVariableHelper(
|
342
|
-
"PYFUNCEBLE_COLLECTION_API_URL"
|
343
|
-
).get_value()
|
344
|
-
elif PyFunceble.facility.ConfigLoader.is_already_loaded():
|
345
|
-
if isinstance(PyFunceble.storage.CONFIGURATION.collection.url_base, str):
|
346
|
-
self.url_base = PyFunceble.storage.CONFIGURATION.collection.url_base
|
347
|
-
else:
|
348
|
-
self.url_base = self.STD_URL_BASE
|
349
|
-
else:
|
350
|
-
self.url_base = self.STD_URL_BASE
|
351
|
-
|
352
|
-
return self
|
353
|
-
|
354
337
|
def guess_and_set_is_modern_api(self) -> "CollectionQueryTool":
|
355
338
|
"""
|
356
339
|
Try to guess if we are working with a legacy version.
|
@@ -534,6 +517,9 @@ class CollectionQueryTool:
|
|
534
517
|
|
535
518
|
PyFunceble.facility.Logger.info("Starting to pull next contract")
|
536
519
|
|
520
|
+
if not isinstance(amount, int) or amount < 1:
|
521
|
+
amount = 1
|
522
|
+
|
537
523
|
url = f"{self.url_base}/v1/contracts/next"
|
538
524
|
params = {
|
539
525
|
"limit": amount,
|
@@ -544,7 +530,7 @@ class CollectionQueryTool:
|
|
544
530
|
response = self.session.get(
|
545
531
|
url,
|
546
532
|
params=params,
|
547
|
-
timeout=self.timeout,
|
533
|
+
timeout=self.timeout * 10,
|
548
534
|
)
|
549
535
|
|
550
536
|
response_json = response.json()
|
@@ -597,7 +583,7 @@ class CollectionQueryTool:
|
|
597
583
|
response = self.session.post(
|
598
584
|
url,
|
599
585
|
data=contract_data.encode("utf-8"),
|
600
|
-
timeout=self.timeout,
|
586
|
+
timeout=self.timeout * 10,
|
601
587
|
)
|
602
588
|
|
603
589
|
response_json = response.json()
|
@@ -748,7 +734,7 @@ class CollectionQueryTool:
|
|
748
734
|
response = self.session.post(
|
749
735
|
url,
|
750
736
|
json=data,
|
751
|
-
timeout=self.timeout,
|
737
|
+
timeout=self.timeout * 10,
|
752
738
|
)
|
753
739
|
elif isinstance(
|
754
740
|
data,
|
@@ -761,13 +747,13 @@ class CollectionQueryTool:
|
|
761
747
|
response = self.session.post(
|
762
748
|
url,
|
763
749
|
json=data.to_dict(),
|
764
|
-
timeout=self.timeout,
|
750
|
+
timeout=self.timeout * 10,
|
765
751
|
)
|
766
752
|
else:
|
767
753
|
response = self.session.post(
|
768
754
|
url,
|
769
755
|
data=data,
|
770
|
-
timeout=self.timeout,
|
756
|
+
timeout=self.timeout * 10,
|
771
757
|
)
|
772
758
|
|
773
759
|
response_json = response.json()
|
@@ -820,7 +806,7 @@ class CollectionQueryTool:
|
|
820
806
|
response = self.session.post(
|
821
807
|
url,
|
822
808
|
json=data,
|
823
|
-
timeout=self.timeout,
|
809
|
+
timeout=self.timeout * 10,
|
824
810
|
)
|
825
811
|
elif isinstance(
|
826
812
|
data,
|
@@ -833,13 +819,13 @@ class CollectionQueryTool:
|
|
833
819
|
response = self.session.post(
|
834
820
|
url,
|
835
821
|
data=data.to_json(),
|
836
|
-
timeout=self.timeout,
|
822
|
+
timeout=self.timeout * 10,
|
837
823
|
)
|
838
824
|
else:
|
839
825
|
response = self.session.post(
|
840
826
|
url,
|
841
827
|
data=data,
|
842
|
-
timeout=self.timeout,
|
828
|
+
timeout=self.timeout * 10,
|
843
829
|
)
|
844
830
|
|
845
831
|
response_json = response.json()
|
@@ -61,7 +61,7 @@ from dotenv import load_dotenv
|
|
61
61
|
from PyFunceble.storage_facility import get_config_directory
|
62
62
|
|
63
63
|
PROJECT_NAME: str = "PyFunceble"
|
64
|
-
PROJECT_VERSION: str = "4.2.
|
64
|
+
PROJECT_VERSION: str = "4.2.16.dev (Blue Duckling: Ixora)"
|
65
65
|
|
66
66
|
DISTRIBUTED_CONFIGURATION_FILENAME: str = ".PyFunceble_production.yaml"
|
67
67
|
DISTRIBUTED_DIR_STRUCTURE_FILENAME: str = "dir_structure_production.json"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: PyFunceble-dev
|
3
|
-
Version: 4.2.
|
3
|
+
Version: 4.2.16
|
4
4
|
Summary: The tool to check the availability or syntax of domain, IP or URL.
|
5
5
|
Home-page: https://github.com/funilrys/PyFunceble
|
6
6
|
Author: funilrys
|
@@ -20,12 +20,78 @@ Classifier: Programming Language :: Python
|
|
20
20
|
Classifier: Programming Language :: Python :: 3
|
21
21
|
Classifier: License :: OSI Approved
|
22
22
|
Requires-Python: >=3.8, <4
|
23
|
+
License-File: LICENSE
|
24
|
+
Requires-Dist: domain2idna~=1.12.0
|
25
|
+
Requires-Dist: setuptools>=65.5.1
|
26
|
+
Requires-Dist: python-dotenv
|
27
|
+
Requires-Dist: cryptography~=42.0
|
28
|
+
Requires-Dist: inflection
|
29
|
+
Requires-Dist: PyYAML
|
30
|
+
Requires-Dist: alembic
|
31
|
+
Requires-Dist: colorama
|
32
|
+
Requires-Dist: shtab
|
33
|
+
Requires-Dist: packaging
|
34
|
+
Requires-Dist: python-box[all]~=6.0.0
|
35
|
+
Requires-Dist: SQLAlchemy~=2.0
|
36
|
+
Requires-Dist: dnspython[DOH]~=2.6.0
|
37
|
+
Requires-Dist: PyMySQL
|
38
|
+
Requires-Dist: requests[socks]<3
|
23
39
|
Provides-Extra: docs
|
40
|
+
Requires-Dist: Pygments>=2.0; extra == "docs"
|
41
|
+
Requires-Dist: alabaster<0.8,>=0.7; extra == "docs"
|
42
|
+
Requires-Dist: sphinx_rtd_theme; extra == "docs"
|
43
|
+
Requires-Dist: sphinx>=3.4.3; extra == "docs"
|
24
44
|
Provides-Extra: dev
|
45
|
+
Requires-Dist: black; extra == "dev"
|
46
|
+
Requires-Dist: isort; extra == "dev"
|
47
|
+
Requires-Dist: pylint; extra == "dev"
|
48
|
+
Requires-Dist: flake8; extra == "dev"
|
25
49
|
Provides-Extra: test
|
50
|
+
Requires-Dist: tox; extra == "test"
|
51
|
+
Requires-Dist: coverage; extra == "test"
|
26
52
|
Provides-Extra: psql
|
53
|
+
Requires-Dist: domain2idna~=1.12.0; extra == "psql"
|
54
|
+
Requires-Dist: setuptools>=65.5.1; extra == "psql"
|
55
|
+
Requires-Dist: python-dotenv; extra == "psql"
|
56
|
+
Requires-Dist: cryptography~=42.0; extra == "psql"
|
57
|
+
Requires-Dist: inflection; extra == "psql"
|
58
|
+
Requires-Dist: PyYAML; extra == "psql"
|
59
|
+
Requires-Dist: alembic; extra == "psql"
|
60
|
+
Requires-Dist: colorama; extra == "psql"
|
61
|
+
Requires-Dist: shtab; extra == "psql"
|
62
|
+
Requires-Dist: packaging; extra == "psql"
|
63
|
+
Requires-Dist: python-box[all]~=6.0.0; extra == "psql"
|
64
|
+
Requires-Dist: SQLAlchemy~=2.0; extra == "psql"
|
65
|
+
Requires-Dist: psycopg2; extra == "psql"
|
66
|
+
Requires-Dist: dnspython[DOH]~=2.6.0; extra == "psql"
|
67
|
+
Requires-Dist: PyMySQL; extra == "psql"
|
68
|
+
Requires-Dist: requests[socks]<3; extra == "psql"
|
27
69
|
Provides-Extra: full
|
28
|
-
|
70
|
+
Requires-Dist: python-dotenv; extra == "full"
|
71
|
+
Requires-Dist: inflection; extra == "full"
|
72
|
+
Requires-Dist: alembic; extra == "full"
|
73
|
+
Requires-Dist: colorama; extra == "full"
|
74
|
+
Requires-Dist: tox; extra == "full"
|
75
|
+
Requires-Dist: SQLAlchemy~=2.0; extra == "full"
|
76
|
+
Requires-Dist: dnspython[DOH]~=2.6.0; extra == "full"
|
77
|
+
Requires-Dist: alabaster<0.8,>=0.7; extra == "full"
|
78
|
+
Requires-Dist: PyYAML; extra == "full"
|
79
|
+
Requires-Dist: isort; extra == "full"
|
80
|
+
Requires-Dist: python-box[all]~=6.0.0; extra == "full"
|
81
|
+
Requires-Dist: black; extra == "full"
|
82
|
+
Requires-Dist: Pygments>=2.0; extra == "full"
|
83
|
+
Requires-Dist: domain2idna~=1.12.0; extra == "full"
|
84
|
+
Requires-Dist: setuptools>=65.5.1; extra == "full"
|
85
|
+
Requires-Dist: sphinx_rtd_theme; extra == "full"
|
86
|
+
Requires-Dist: sphinx>=3.4.3; extra == "full"
|
87
|
+
Requires-Dist: coverage; extra == "full"
|
88
|
+
Requires-Dist: cryptography~=42.0; extra == "full"
|
89
|
+
Requires-Dist: shtab; extra == "full"
|
90
|
+
Requires-Dist: packaging; extra == "full"
|
91
|
+
Requires-Dist: pylint; extra == "full"
|
92
|
+
Requires-Dist: flake8; extra == "full"
|
93
|
+
Requires-Dist: PyMySQL; extra == "full"
|
94
|
+
Requires-Dist: requests[socks]<3; extra == "full"
|
29
95
|
|
30
96
|
.. image:: https://raw.githubusercontent.com/PyFunceble/logo/dev/Green/HD/RM.png
|
31
97
|
|
@@ -1,76 +1,76 @@
|
|
1
|
+
domain2idna~=1.12.0
|
2
|
+
setuptools>=65.5.1
|
3
|
+
python-dotenv
|
1
4
|
cryptography~=42.0
|
5
|
+
inflection
|
6
|
+
PyYAML
|
7
|
+
alembic
|
2
8
|
colorama
|
9
|
+
shtab
|
3
10
|
packaging
|
4
|
-
SQLAlchemy~=2.0
|
5
11
|
python-box[all]~=6.0.0
|
6
|
-
|
7
|
-
|
8
|
-
setuptools>=65.5.1
|
9
|
-
dnspython[doh]~=2.6.0
|
12
|
+
SQLAlchemy~=2.0
|
13
|
+
dnspython[DOH]~=2.6.0
|
10
14
|
PyMySQL
|
11
15
|
requests[socks]<3
|
12
|
-
inflection
|
13
|
-
domain2idna~=1.12.0
|
14
|
-
python-dotenv
|
15
|
-
alembic
|
16
16
|
|
17
17
|
[dev]
|
18
18
|
black
|
19
|
-
pylint
|
20
19
|
isort
|
20
|
+
pylint
|
21
21
|
flake8
|
22
22
|
|
23
23
|
[docs]
|
24
|
-
|
24
|
+
Pygments>=2.0
|
25
25
|
alabaster<0.8,>=0.7
|
26
|
+
sphinx_rtd_theme
|
26
27
|
sphinx>=3.4.3
|
27
|
-
Pygments>=2.0
|
28
28
|
|
29
29
|
[full]
|
30
|
-
|
31
|
-
packaging
|
32
|
-
shtab
|
33
|
-
sphinx>=3.4.3
|
30
|
+
python-dotenv
|
34
31
|
inflection
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
black
|
32
|
+
alembic
|
33
|
+
colorama
|
34
|
+
tox
|
39
35
|
SQLAlchemy~=2.0
|
40
|
-
|
36
|
+
dnspython[DOH]~=2.6.0
|
37
|
+
alabaster<0.8,>=0.7
|
41
38
|
PyYAML
|
39
|
+
isort
|
40
|
+
python-box[all]~=6.0.0
|
41
|
+
black
|
42
|
+
Pygments>=2.0
|
43
|
+
domain2idna~=1.12.0
|
42
44
|
setuptools>=65.5.1
|
43
45
|
sphinx_rtd_theme
|
44
|
-
|
45
|
-
|
46
|
-
|
46
|
+
sphinx>=3.4.3
|
47
|
+
coverage
|
48
|
+
cryptography~=42.0
|
49
|
+
shtab
|
50
|
+
packaging
|
51
|
+
pylint
|
47
52
|
flake8
|
48
|
-
dnspython[doh]~=2.6.0
|
49
53
|
PyMySQL
|
50
|
-
|
51
|
-
alabaster<0.8,>=0.7
|
52
|
-
alembic
|
53
|
-
coverage
|
54
|
-
domain2idna~=1.12.0
|
54
|
+
requests[socks]<3
|
55
55
|
|
56
56
|
[psql]
|
57
|
+
domain2idna~=1.12.0
|
58
|
+
setuptools>=65.5.1
|
59
|
+
python-dotenv
|
57
60
|
cryptography~=42.0
|
61
|
+
inflection
|
62
|
+
PyYAML
|
63
|
+
alembic
|
58
64
|
colorama
|
65
|
+
shtab
|
59
66
|
packaging
|
60
|
-
SQLAlchemy~=2.0
|
61
67
|
python-box[all]~=6.0.0
|
62
|
-
|
63
|
-
PyYAML
|
64
|
-
setuptools>=65.5.1
|
65
|
-
dnspython[doh]~=2.6.0
|
66
|
-
PyMySQL
|
68
|
+
SQLAlchemy~=2.0
|
67
69
|
psycopg2
|
70
|
+
dnspython[DOH]~=2.6.0
|
71
|
+
PyMySQL
|
68
72
|
requests[socks]<3
|
69
|
-
inflection
|
70
|
-
domain2idna~=1.12.0
|
71
|
-
python-dotenv
|
72
|
-
alembic
|
73
73
|
|
74
74
|
[test]
|
75
|
-
coverage
|
76
75
|
tox
|
76
|
+
coverage
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|