PyFunceble-dev 4.3.0a25__tar.gz → 4.4.0__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.
Files changed (299) hide show
  1. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/CONTRIBUTORS.md +3 -4
  2. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PKG-INFO +111 -110
  3. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/base.py +11 -3
  4. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/domain.py +3 -1
  5. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/domain_and_ip.py +2 -0
  6. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/base.py +13 -1
  7. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/base.py +10 -2
  8. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/base.py +5 -2
  9. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/utils/whois.py +7 -3
  10. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/facility.py +2 -0
  11. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/factory.py +2 -0
  12. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/status_file.py +1 -1
  13. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/mariadb/file_and_status.py +8 -4
  14. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/base.py +7 -0
  15. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/producer.py +9 -3
  16. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/tester.py +5 -5
  17. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/system/launcher.py +18 -5
  18. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/utils/testing.py +9 -3
  19. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/sqlalchemy/base_schema.py +3 -5
  20. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/autocontinue/csv.py +15 -1
  21. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/base.py +25 -0
  22. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/csv_base.py +4 -1
  23. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/db_base.py +14 -0
  24. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/iana.py +6 -1
  25. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/inactive/csv.py +1 -1
  26. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/ipv4_reputation.py +7 -1
  27. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/public_suffix.py +6 -1
  28. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/user_agent.py +6 -1
  29. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/whois/csv.py +1 -1
  30. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/facility.py +2 -0
  31. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/factory.py +2 -0
  32. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/command.py +2 -2
  33. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/storage.py +1 -1
  34. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble_dev.egg-info/PKG-INFO +111 -110
  35. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble_dev.egg-info/requires.txt +106 -103
  36. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/README.md +3 -4
  37. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/requirements.dev.txt +2 -1
  38. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/requirements.docs.txt +1 -1
  39. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/requirements.txt +1 -1
  40. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/requirements.win.txt +2 -1
  41. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/setup.cfg +4 -0
  42. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/setup.py +2 -3
  43. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/version.yaml +2 -1
  44. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/CODE_OF_CONDUCT.md +0 -0
  45. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/CONTRIBUTING.md +0 -0
  46. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/LICENSE +0 -0
  47. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/MANIFEST.in +0 -0
  48. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/__init__.py +0 -0
  49. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/__init__.py +0 -0
  50. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/__init__.py +0 -0
  51. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/__init__.py +0 -0
  52. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/base.py +0 -0
  53. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/dns.py +0 -0
  54. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/etoxic.py +0 -0
  55. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/external.py +0 -0
  56. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/parked.py +0 -0
  57. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/rules.py +0 -0
  58. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/extras/subject_switch.py +0 -0
  59. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/ip.py +0 -0
  60. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/params.py +0 -0
  61. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/status.py +0 -0
  62. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/availability/url.py +0 -0
  63. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/complex_json_encoder.py +0 -0
  64. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/params_base.py +0 -0
  65. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/__init__.py +0 -0
  66. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/domain.py +0 -0
  67. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/domain_and_ip.py +0 -0
  68. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/ip.py +0 -0
  69. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/params.py +0 -0
  70. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/status.py +0 -0
  71. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/reputation/url.py +0 -0
  72. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/status_base.py +0 -0
  73. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/__init__.py +0 -0
  74. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/domain.py +0 -0
  75. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/domain_and_ip.py +0 -0
  76. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/domain_base.py +0 -0
  77. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/ip.py +0 -0
  78. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/ipv4.py +0 -0
  79. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/ipv6.py +0 -0
  80. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/params.py +0 -0
  81. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/second_lvl_domain.py +0 -0
  82. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/status.py +0 -0
  83. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/subdomain.py +0 -0
  84. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/syntax/url.py +0 -0
  85. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/checker/utils/__init__.py +0 -0
  86. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/__init__.py +0 -0
  87. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/__init__.py +0 -0
  88. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/base.py +0 -0
  89. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/exceptions.py +0 -0
  90. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/github_actions.py +0 -0
  91. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/gitlab_ci.py +0 -0
  92. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/jenkins.py +0 -0
  93. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/standalone.py +0 -0
  94. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/travis_ci.py +0 -0
  95. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/continuous_integration/utils.py +0 -0
  96. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/credential_loader.py +0 -0
  97. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/__init__.py +0 -0
  98. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/clean.py +0 -0
  99. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/iana.py +0 -0
  100. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/production.py +0 -0
  101. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/public_suffix.py +0 -0
  102. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/pyfunceble/__init__.py +0 -0
  103. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/pyfunceble/argsparser.py +0 -0
  104. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/entry_points/pyfunceble/cli.py +0 -0
  105. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/execution_time.py +0 -0
  106. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/file_preloader.py +0 -0
  107. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/__init__.py +0 -0
  108. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/cleanup.py +0 -0
  109. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/counter.py +0 -0
  110. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/dir_base.py +0 -0
  111. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/dir_structure/__init__.py +0 -0
  112. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/dir_structure/backup.py +0 -0
  113. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/dir_structure/base.py +0 -0
  114. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/dir_structure/restore.py +0 -0
  115. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/json_base.py +0 -0
  116. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/printer/__init__.py +0 -0
  117. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/printer/base.py +0 -0
  118. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/printer/file.py +0 -0
  119. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/printer/stdout.py +0 -0
  120. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/filesystem/registrar_counter.py +0 -0
  121. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/__init__.py +0 -0
  122. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/alembic.py +0 -0
  123. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/base.py +0 -0
  124. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/csv_file/__init__.py +0 -0
  125. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/csv_file/base.py +0 -0
  126. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/csv_file/inactive_source_delete.py +0 -0
  127. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/csv_file/whois_registrar_add.py +0 -0
  128. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/db_base.py +0 -0
  129. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/file_cleanup/__init__.py +0 -0
  130. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/file_cleanup/base.py +0 -0
  131. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/file_cleanup/hashes_file.py +0 -0
  132. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/file_cleanup/mining_file.py +0 -0
  133. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/file_cleanup/production_config_file.py +0 -0
  134. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/json2csv/__init__.py +0 -0
  135. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/json2csv/base.py +0 -0
  136. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/json2csv/inactive.py +0 -0
  137. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/json2csv/whois.py +0 -0
  138. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/mariadb/__init__.py +0 -0
  139. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/mariadb/base.py +0 -0
  140. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/migrators/mariadb/whois_record_idna_subject.py +0 -0
  141. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/__init__.py +0 -0
  142. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/chancy_producer.py +0 -0
  143. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/chancy_tester.py +0 -0
  144. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/dir_files_sorter.py +0 -0
  145. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/file_sorter.py +0 -0
  146. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/migrator.py +0 -0
  147. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/miner.py +0 -0
  148. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/producer.py +0 -0
  149. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/tester.py +0 -0
  150. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/__init__.py +0 -0
  151. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/base.py +0 -0
  152. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/chancy_producer.py +0 -0
  153. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/chancy_tester.py +0 -0
  154. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/dir_files_sorter.py +0 -0
  155. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/file_sorter.py +0 -0
  156. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/file_sorter_base.py +0 -0
  157. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/migrator.py +0 -0
  158. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/processes/workers/miner.py +0 -0
  159. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/scripts/__init__.py +0 -0
  160. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/scripts/iana.py +0 -0
  161. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/scripts/production.py +0 -0
  162. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/scripts/public_suffix.py +0 -0
  163. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/storage.py +0 -0
  164. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/storage_facility.py +0 -0
  165. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/system/__init__.py +0 -0
  166. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/system/base.py +0 -0
  167. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/system/integrator.py +0 -0
  168. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/utils/__init__.py +0 -0
  169. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/utils/ascii_logo.py +0 -0
  170. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/utils/sort.py +0 -0
  171. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/utils/stdout.py +0 -0
  172. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/cli/utils/version.py +0 -0
  173. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/config/__init__.py +0 -0
  174. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/config/compare.py +0 -0
  175. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/config/loader.py +0 -0
  176. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/__init__.py +0 -0
  177. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/adblock_input_line2subject.py +0 -0
  178. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/base.py +0 -0
  179. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/cidr2subject.py +0 -0
  180. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/input_line2subject.py +0 -0
  181. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/internal_url.py +0 -0
  182. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/rpz_input_line2subject.py +0 -0
  183. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/rpz_policy2subject.py +0 -0
  184. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/subject2complements.py +0 -0
  185. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/url2netloc.py +0 -0
  186. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/converter/wildcard2subject.py +0 -0
  187. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/__init__.py +0 -0
  188. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/__init__.py +0 -0
  189. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/__init__.py +0 -0
  190. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/env.py +0 -0
  191. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/script.py.mako +0 -0
  192. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/35c79626ecb9_fix_some_columns.py +0 -0
  193. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/3a4c55a9320d_add_continue_table.py +0 -0
  194. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/3d6f4a33cdb2_add_inactive_table.py +0 -0
  195. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/45713fea8097_deletion_uneeded_columns_from_whois_.py +0 -0
  196. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/459a0d7b8f09_add_idna_subject_column_into_whois.py +0 -0
  197. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/6f4729deaf03_delete_inactive_source_column.py +0 -0
  198. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/7bcf7fa64ba1_rename_created_to_created_at_and.py +0 -0
  199. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/83ada95132bf_delete_the_file_table.py +0 -0
  200. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/912bbcb77a6c_add_registrar_column.py +0 -0
  201. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/95dc17ddd729_introduction_of_the_session_id_column.py +0 -0
  202. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/__init__.py +0 -0
  203. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/ade87195b0a0_base.py +0 -0
  204. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/bef7bcaac3f2_make_id_a_bigint.py +0 -0
  205. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/d8893cd406db_allow_whois_record_to_be_empty_null.py +0 -0
  206. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/mysql/versions/e04e8301d1a2_deletion_of_the_mined_table.py +0 -0
  207. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/postgresql/__init__.py +0 -0
  208. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/postgresql/env.py +0 -0
  209. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/postgresql/script.py.mako +0 -0
  210. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/postgresql/versions/__init__.py +0 -0
  211. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/alembic/postgresql/versions/a32ac5d66eee_initial_version.py +0 -0
  212. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/infrastructure/.PyFunceble_production.yaml +0 -0
  213. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/infrastructure/__init__.py +0 -0
  214. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/data/infrastructure/dir_structure_production.json +0 -0
  215. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/__init__.py +0 -0
  216. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/credential/__init__.py +0 -0
  217. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/credential/base.py +0 -0
  218. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/credential/mariadb.py +0 -0
  219. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/credential/mysql.py +0 -0
  220. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/credential/postgresql.py +0 -0
  221. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/schemas/__init__.py +0 -0
  222. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/schemas/autocontinue.py +0 -0
  223. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/schemas/inactive.py +0 -0
  224. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/schemas/status.py +0 -0
  225. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/schemas/whois_record.py +0 -0
  226. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/session.py +0 -0
  227. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/sqlalchemy/__init__.py +0 -0
  228. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/database/sqlalchemy/all_schemas.py +0 -0
  229. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/__init__.py +0 -0
  230. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/autocontinue/__init__.py +0 -0
  231. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/autocontinue/base.py +0 -0
  232. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/autocontinue/sql.py +0 -0
  233. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/inactive/__init__.py +0 -0
  234. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/inactive/base.py +0 -0
  235. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/inactive/sql.py +0 -0
  236. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/sql_base.py +0 -0
  237. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/whois/__init__.py +0 -0
  238. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/whois/base.py +0 -0
  239. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/dataset/whois/sql.py +0 -0
  240. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/downloader/__init__.py +0 -0
  241. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/downloader/base.py +0 -0
  242. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/downloader/exceptions.py +0 -0
  243. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/downloader/iana.py +0 -0
  244. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/downloader/ipv4_reputation.py +0 -0
  245. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/downloader/public_suffix.py +0 -0
  246. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/downloader/user_agents.py +0 -0
  247. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/exceptions.py +0 -0
  248. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/__init__.py +0 -0
  249. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/dict.py +0 -0
  250. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/directory.py +0 -0
  251. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/download.py +0 -0
  252. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/environment_variable.py +0 -0
  253. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/exceptions.py +0 -0
  254. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/file.py +0 -0
  255. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/hash.py +0 -0
  256. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/list.py +0 -0
  257. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/merge.py +0 -0
  258. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/helpers/regex.py +0 -0
  259. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/logger.py +0 -0
  260. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/__init__.py +0 -0
  261. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/dns/__init__.py +0 -0
  262. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/dns/nameserver.py +0 -0
  263. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/dns/query_tool.py +0 -0
  264. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/dns/resolver.py +0 -0
  265. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/http_status_code.py +0 -0
  266. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/netinfo/__init__.py +0 -0
  267. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/netinfo/address.py +0 -0
  268. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/netinfo/base.py +0 -0
  269. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/netinfo/hostbyaddr.py +0 -0
  270. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/platform.py +0 -0
  271. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/record/__init__.py +0 -0
  272. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/record/base.py +0 -0
  273. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/record/dns.py +0 -0
  274. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/record/whois.py +0 -0
  275. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/requests/__init__.py +0 -0
  276. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/requests/adapter/__init__.py +0 -0
  277. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/requests/adapter/base.py +0 -0
  278. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/requests/adapter/http.py +0 -0
  279. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/requests/adapter/https.py +0 -0
  280. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/requests/requester.py +0 -0
  281. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/__init__.py +0 -0
  282. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/converter/__init__.py +0 -0
  283. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/converter/base.py +0 -0
  284. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/converter/digit2digits.py +0 -0
  285. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/converter/expiration_date.py +0 -0
  286. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/converter/month2unified.py +0 -0
  287. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/converter/registrar.py +0 -0
  288. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/query/whois/query_tool.py +0 -0
  289. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/sessions.py +0 -0
  290. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/storage_facility.py +0 -0
  291. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/utils/__init__.py +0 -0
  292. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/utils/platform.py +0 -0
  293. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/utils/profile.py +0 -0
  294. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble/utils/version.py +0 -0
  295. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble_dev.egg-info/SOURCES.txt +0 -0
  296. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble_dev.egg-info/dependency_links.txt +0 -0
  297. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble_dev.egg-info/entry_points.txt +0 -0
  298. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/PyFunceble_dev.egg-info/top_level.txt +0 -0
  299. {pyfunceble_dev-4.3.0a25 → pyfunceble_dev-4.4.0}/requirements.test.txt +0 -0
@@ -6,7 +6,6 @@ contribution(s) and or issue report which made or make PyFunceble a better tool.
6
6
  <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
7
7
  <!-- prettier-ignore-start -->
8
8
  <!-- markdownlint-disable -->
9
-
10
9
  <table>
11
10
  <tbody>
12
11
  <tr>
@@ -33,23 +32,23 @@ contribution(s) and or issue report which made or make PyFunceble a better tool.
33
32
  <tr>
34
33
  <td align="center" valign="top" width="20%"><a href="https://infosec.exchange/@wally3k"><img src="https://avatars.githubusercontent.com/u/3049142?v=4?s=100" width="100px;" alt="WaLLy3K"/><br /><sub><b>WaLLy3K</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AWaLLy3K" title="Bug reports">🐛</a> <a href="#ideas-WaLLy3K" title="Ideas, Planning, & Feedback">🤔</a></td>
35
34
  <td align="center" valign="top" width="20%"><a href="https://github.com/Yuki2718"><img src="https://avatars.githubusercontent.com/u/58900598?v=4?s=100" width="100px;" alt="Yuki2718"/><br /><sub><b>Yuki2718</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AYuki2718" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=Yuki2718" title="Tests">⚠️</a></td>
36
- <td align="center" valign="top" width="20%"><a href="https://github.com/Zachinquarantine"><img src="https://avatars.githubusercontent.com/u/69423184?v=4?s=100" width="100px;" alt="Zachinquarantine"/><br /><sub><b>Zachinquarantine</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/commits?author=Zachinquarantine" title="Code">💻</a></td>
37
35
  <td align="center" valign="top" width="20%"><a href="http://bit.ly/cBWeb"><img src="https://avatars.githubusercontent.com/u/28985171?v=4?s=100" width="100px;" alt="ZeroDot1"/><br /><sub><b>ZeroDot1</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AZeroDot1" title="Bug reports">🐛</a> <a href="#ideas-ZeroDot1" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-ZeroDot1" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=ZeroDot1" title="Tests">⚠️</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=ZeroDot1" title="Code">💻</a></td>
38
36
  <td align="center" valign="top" width="20%"><a href="https://github.com/avatartw"><img src="https://avatars.githubusercontent.com/u/69660730?v=4?s=100" width="100px;" alt="avatartw"/><br /><sub><b>avatartw</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aavatartw" title="Bug reports">🐛</a></td>
37
+ <td align="center" valign="top" width="20%"><a href="https://github.com/dnmTX"><img src="https://avatars.githubusercontent.com/u/34774426?v=4?s=100" width="100px;" alt="dnmTX"/><br /><sub><b>dnmTX</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AdnmTX" title="Bug reports">🐛</a> <a href="#ideas-dnmTX" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-dnmTX" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/pulls?q=is%3Apr+reviewed-by%3AdnmTX" title="Reviewed Pull Requests">👀</a> <a href="#data-dnmTX" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=dnmTX" title="Tests">⚠️</a></td>
39
38
  </tr>
40
39
  <tr>
41
- <td align="center" valign="top" width="20%"><a href="https://github.com/dnmTX"><img src="https://avatars.githubusercontent.com/u/34774426?v=4?s=100" width="100px;" alt="dnmTX"/><br /><sub><b>dnmTX</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AdnmTX" title="Bug reports">🐛</a> <a href="#ideas-dnmTX" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-dnmTX" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/pulls?q=is%3Apr+reviewed-by%3AdnmTX" title="Reviewed Pull Requests">👀</a> <a href="#data-dnmTX" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=dnmTX" title="Tests">⚠️</a></td>
42
40
  <td align="center" valign="top" width="20%"><a href="https://github.com/gwarser"><img src="https://avatars.githubusercontent.com/u/886325?v=4?s=100" width="100px;" alt="gwarser"/><br /><sub><b>gwarser</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Agwarser" title="Bug reports">🐛</a> <a href="#data-gwarser" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=gwarser" title="Tests">⚠️</a></td>
43
41
  <td align="center" valign="top" width="20%"><a href="https://github.com/hawkeye116477"><img src="https://avatars.githubusercontent.com/u/19818572?v=4?s=100" width="100px;" alt="hawkeye116477"/><br /><sub><b>hawkeye116477</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Ahawkeye116477" title="Bug reports">🐛</a></td>
44
42
  <td align="center" valign="top" width="20%"><a href="https://github.com/jawz101"><img src="https://avatars.githubusercontent.com/u/14151703?v=4?s=100" width="100px;" alt="jawz101"/><br /><sub><b>jawz101</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Ajawz101" title="Bug reports">🐛</a> <a href="#ideas-jawz101" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-jawz101" title="Answering Questions">💬</a> <a href="#data-jawz101" title="Data">🔣</a></td>
45
43
  <td align="center" valign="top" width="20%"><a href="https://github.com/keczuppp"><img src="https://avatars.githubusercontent.com/u/74409207?v=4?s=100" width="100px;" alt="keczuppp"/><br /><sub><b>keczuppp</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Akeczuppp" title="Bug reports">🐛</a> <a href="#ideas-keczuppp" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-keczuppp" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=keczuppp" title="Tests">⚠️</a> <a href="#data-keczuppp" title="Data">🔣</a></td>
44
+ <td align="center" valign="top" width="20%"><a href="https://github.com/opav"><img src="https://avatars.githubusercontent.com/u/6770347?v=4?s=100" width="100px;" alt="opav"/><br /><sub><b>opav</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aopav" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=opav" title="Tests">⚠️</a></td>
46
45
  </tr>
47
46
  <tr>
48
- <td align="center" valign="top" width="20%"><a href="https://github.com/opav"><img src="https://avatars.githubusercontent.com/u/6770347?v=4?s=100" width="100px;" alt="opav"/><br /><sub><b>opav</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aopav" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=opav" title="Tests">⚠️</a></td>
49
47
  <td align="center" valign="top" width="20%"><a href="https://github.com/rusty-snake"><img src="https://avatars.githubusercontent.com/u/41237666?v=4?s=100" width="100px;" alt="rusty-snake"/><br /><sub><b>rusty-snake</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Arusty-snake" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=rusty-snake" title="Documentation">📖</a></td>
50
48
  <td align="center" valign="top" width="20%"><a href="https://github.com/smed79"><img src="https://avatars.githubusercontent.com/u/1873139?v=4?s=100" width="100px;" alt="smed79"/><br /><sub><b>smed79</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Asmed79" title="Bug reports">🐛</a> <a href="#ideas-smed79" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=smed79" title="Code">💻</a> <a href="#question-smed79" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=smed79" title="Tests">⚠️</a></td>
51
49
  <td align="center" valign="top" width="20%"><a href="https://speedmann.de/"><img src="https://avatars.githubusercontent.com/u/424659?v=4?s=100" width="100px;" alt="speedmann"/><br /><sub><b>speedmann</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aspeedmann" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=speedmann" title="Tests">⚠️</a></td>
52
50
  <td align="center" valign="top" width="20%"><a href="https://www.mypdns.org/"><img src="https://avatars.githubusercontent.com/u/44526987?v=4?s=100" width="100px;" alt="spirillen"/><br /><sub><b>spirillen</b></sub></a><br /><a href="#a11y-spirillen" title="Accessibility">️️️️♿️</a> <a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aspirillen" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=spirillen" title="Code">💻</a> <a href="#content-spirillen" title="Content">🖋</a> <a href="#data-spirillen" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=spirillen" title="Documentation">📖</a> <a href="#example-spirillen" title="Examples">💡</a> <a href="#ideas-spirillen" title="Ideas, Planning, & Feedback">🤔</a> <a href="#maintenance-spirillen" title="Maintenance">🚧</a> <a href="#mentoring-spirillen" title="Mentoring">🧑‍🏫</a> <a href="#promotion-spirillen" title="Promotion">📣</a> <a href="#question-spirillen" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/pulls?q=is%3Apr+reviewed-by%3Aspirillen" title="Reviewed Pull Requests">👀</a> <a href="#tool-spirillen" title="Tools">🔧</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=spirillen" title="Tests">⚠️</a> <a href="#tutorial-spirillen" title="Tutorials">✅</a> <a href="#talk-spirillen" title="Talks">📢</a> <a href="#userTesting-spirillen" title="User Testing">📓</a></td>
51
+ <td align="center" valign="top" width="20%"><a href="https://github.com/tqpcharlie"><img src="https://avatars.githubusercontent.com/u/69423184?v=4?s=100" width="100px;" alt="tqpcharlie"/><br /><sub><b>tqpcharlie</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/commits?author=tqpcharlie" title="Code">💻</a></td>
53
52
  </tr>
54
53
  <tr>
55
54
  <td align="center" valign="top" width="20%"><a href="https://github.com/NeolithEra"><img src="https://avatars.githubusercontent.com/u/52778917?v=4?s=100" width="100px;" alt="watchman-pypi"/><br /><sub><b>watchman-pypi</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3ANeolithEra" title="Bug reports">🐛</a></td>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PyFunceble-dev
3
- Version: 4.3.0a25
3
+ Version: 4.4.0
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
@@ -18,180 +18,182 @@ Classifier: Development Status :: 4 - Beta
18
18
  Classifier: Intended Audience :: Developers
19
19
  Classifier: Programming Language :: Python
20
20
  Classifier: Programming Language :: Python :: 3
21
- Classifier: License :: OSI Approved
22
- Requires-Python: >=3.9, <4
21
+ Requires-Python: >=3.10, <4
23
22
  Description-Content-Type: text/markdown
24
23
  License-File: LICENSE
25
24
  Requires-Dist: pyfunceble-process-manager==1.0.10
26
- Requires-Dist: PyMySQL
25
+ Requires-Dist: python-box[all]~=7.3.2
27
26
  Requires-Dist: PyYAML
28
- Requires-Dist: inflection
29
27
  Requires-Dist: setuptools>=65.5.1
30
- Requires-Dist: python-box[all]~=7.3.2
28
+ Requires-Dist: alembic
29
+ Requires-Dist: domain2idna~=1.12.0
31
30
  Requires-Dist: SQLAlchemy~=2.0
32
- Requires-Dist: shtab
33
31
  Requires-Dist: colorama
32
+ Requires-Dist: shtab
33
+ Requires-Dist: PyMySQL
34
+ Requires-Dist: inflection
34
35
  Requires-Dist: packaging
35
- Requires-Dist: domain2idna~=1.12.0
36
- Requires-Dist: python-dotenv
37
- Requires-Dist: dnspython[DOH]~=2.7.0
38
36
  Requires-Dist: requests[socks]<3
39
- Requires-Dist: alembic
37
+ Requires-Dist: dnspython[DOH]~=2.8.0
38
+ Requires-Dist: python-dotenv
40
39
  Provides-Extra: docs
41
- Requires-Dist: mkdocs-gen-files~=0.5; extra == "docs"
40
+ Requires-Dist: mkdocs-material~=9.5; extra == "docs"
42
41
  Requires-Dist: mkdocs-section-index~=0.3; extra == "docs"
43
- Requires-Dist: zipp>=3.19.1; extra == "docs"
42
+ Requires-Dist: mkdocs-literate-nav~=0.6; extra == "docs"
43
+ Requires-Dist: mkdocs-gen-files~=0.5; extra == "docs"
44
44
  Requires-Dist: mkdocs~=1.5; extra == "docs"
45
+ Requires-Dist: zipp>=3.19.1; extra == "docs"
45
46
  Requires-Dist: mkdocs-macros-plugin~=1.2; extra == "docs"
46
- Requires-Dist: mkdocs-literate-nav~=0.6; extra == "docs"
47
- Requires-Dist: mkdocstrings[python]~=0.26; extra == "docs"
48
- Requires-Dist: pymdown-extensions~=10.9; extra == "docs"
49
- Requires-Dist: mkdocs-material~=9.5; extra == "docs"
50
47
  Requires-Dist: mkdocs-git-authors-plugin~=0.9; extra == "docs"
51
48
  Requires-Dist: mkdocs-git-revision-date-localized-plugin~=1.2; extra == "docs"
49
+ Requires-Dist: mkdocstrings[python]~=1.0; extra == "docs"
50
+ Requires-Dist: pymdown-extensions~=10.9; extra == "docs"
52
51
  Provides-Extra: dev
53
- Requires-Dist: isort; extra == "dev"
54
- Requires-Dist: flake8; extra == "dev"
55
52
  Requires-Dist: black; extra == "dev"
56
53
  Requires-Dist: pylint; extra == "dev"
54
+ Requires-Dist: flake8; extra == "dev"
55
+ Requires-Dist: bandit; extra == "dev"
56
+ Requires-Dist: isort; extra == "dev"
57
57
  Provides-Extra: test
58
58
  Requires-Dist: tox; extra == "test"
59
59
  Requires-Dist: coverage; extra == "test"
60
60
  Provides-Extra: psql
61
61
  Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "psql"
62
- Requires-Dist: PyMySQL; extra == "psql"
62
+ Requires-Dist: python-box[all]~=7.3.2; extra == "psql"
63
63
  Requires-Dist: PyYAML; extra == "psql"
64
- Requires-Dist: inflection; extra == "psql"
65
64
  Requires-Dist: setuptools>=65.5.1; extra == "psql"
66
- Requires-Dist: python-box[all]~=7.3.2; extra == "psql"
67
- Requires-Dist: SQLAlchemy~=2.0; extra == "psql"
68
65
  Requires-Dist: psycopg2; extra == "psql"
69
- Requires-Dist: shtab; extra == "psql"
66
+ Requires-Dist: alembic; extra == "psql"
67
+ Requires-Dist: domain2idna~=1.12.0; extra == "psql"
68
+ Requires-Dist: SQLAlchemy~=2.0; extra == "psql"
70
69
  Requires-Dist: colorama; extra == "psql"
70
+ Requires-Dist: shtab; extra == "psql"
71
+ Requires-Dist: PyMySQL; extra == "psql"
72
+ Requires-Dist: inflection; extra == "psql"
71
73
  Requires-Dist: packaging; extra == "psql"
72
- Requires-Dist: domain2idna~=1.12.0; extra == "psql"
73
- Requires-Dist: python-dotenv; extra == "psql"
74
- Requires-Dist: dnspython[DOH]~=2.7.0; extra == "psql"
75
74
  Requires-Dist: requests[socks]<3; extra == "psql"
76
- Requires-Dist: alembic; extra == "psql"
75
+ Requires-Dist: dnspython[DOH]~=2.8.0; extra == "psql"
76
+ Requires-Dist: python-dotenv; extra == "psql"
77
77
  Provides-Extra: psql-binary
78
78
  Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "psql-binary"
79
- Requires-Dist: PyMySQL; extra == "psql-binary"
79
+ Requires-Dist: python-box[all]~=7.3.2; extra == "psql-binary"
80
80
  Requires-Dist: PyYAML; extra == "psql-binary"
81
- Requires-Dist: inflection; extra == "psql-binary"
82
81
  Requires-Dist: setuptools>=65.5.1; extra == "psql-binary"
83
- Requires-Dist: python-box[all]~=7.3.2; extra == "psql-binary"
82
+ Requires-Dist: alembic; extra == "psql-binary"
83
+ Requires-Dist: domain2idna~=1.12.0; extra == "psql-binary"
84
84
  Requires-Dist: SQLAlchemy~=2.0; extra == "psql-binary"
85
- Requires-Dist: psycopg2-binary; extra == "psql-binary"
86
- Requires-Dist: shtab; extra == "psql-binary"
87
85
  Requires-Dist: colorama; extra == "psql-binary"
86
+ Requires-Dist: shtab; extra == "psql-binary"
87
+ Requires-Dist: PyMySQL; extra == "psql-binary"
88
+ Requires-Dist: inflection; extra == "psql-binary"
89
+ Requires-Dist: psycopg2-binary; extra == "psql-binary"
88
90
  Requires-Dist: packaging; extra == "psql-binary"
89
- Requires-Dist: domain2idna~=1.12.0; extra == "psql-binary"
90
- Requires-Dist: python-dotenv; extra == "psql-binary"
91
- Requires-Dist: dnspython[DOH]~=2.7.0; extra == "psql-binary"
92
91
  Requires-Dist: requests[socks]<3; extra == "psql-binary"
93
- Requires-Dist: alembic; extra == "psql-binary"
92
+ Requires-Dist: dnspython[DOH]~=2.8.0; extra == "psql-binary"
93
+ Requires-Dist: python-dotenv; extra == "psql-binary"
94
94
  Provides-Extra: postgresql
95
95
  Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "postgresql"
96
- Requires-Dist: PyMySQL; extra == "postgresql"
96
+ Requires-Dist: python-box[all]~=7.3.2; extra == "postgresql"
97
97
  Requires-Dist: PyYAML; extra == "postgresql"
98
- Requires-Dist: inflection; extra == "postgresql"
99
98
  Requires-Dist: setuptools>=65.5.1; extra == "postgresql"
100
- Requires-Dist: python-box[all]~=7.3.2; extra == "postgresql"
101
- Requires-Dist: SQLAlchemy~=2.0; extra == "postgresql"
102
99
  Requires-Dist: psycopg2; extra == "postgresql"
103
- Requires-Dist: shtab; extra == "postgresql"
100
+ Requires-Dist: alembic; extra == "postgresql"
101
+ Requires-Dist: domain2idna~=1.12.0; extra == "postgresql"
102
+ Requires-Dist: SQLAlchemy~=2.0; extra == "postgresql"
104
103
  Requires-Dist: colorama; extra == "postgresql"
104
+ Requires-Dist: shtab; extra == "postgresql"
105
+ Requires-Dist: PyMySQL; extra == "postgresql"
106
+ Requires-Dist: inflection; extra == "postgresql"
105
107
  Requires-Dist: packaging; extra == "postgresql"
106
- Requires-Dist: domain2idna~=1.12.0; extra == "postgresql"
107
- Requires-Dist: python-dotenv; extra == "postgresql"
108
- Requires-Dist: dnspython[DOH]~=2.7.0; extra == "postgresql"
109
108
  Requires-Dist: requests[socks]<3; extra == "postgresql"
110
- Requires-Dist: alembic; extra == "postgresql"
109
+ Requires-Dist: dnspython[DOH]~=2.8.0; extra == "postgresql"
110
+ Requires-Dist: python-dotenv; extra == "postgresql"
111
111
  Provides-Extra: postgresql-binary
112
112
  Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "postgresql-binary"
113
- Requires-Dist: PyMySQL; extra == "postgresql-binary"
113
+ Requires-Dist: python-box[all]~=7.3.2; extra == "postgresql-binary"
114
114
  Requires-Dist: PyYAML; extra == "postgresql-binary"
115
- Requires-Dist: inflection; extra == "postgresql-binary"
116
115
  Requires-Dist: setuptools>=65.5.1; extra == "postgresql-binary"
117
- Requires-Dist: python-box[all]~=7.3.2; extra == "postgresql-binary"
116
+ Requires-Dist: alembic; extra == "postgresql-binary"
117
+ Requires-Dist: domain2idna~=1.12.0; extra == "postgresql-binary"
118
118
  Requires-Dist: SQLAlchemy~=2.0; extra == "postgresql-binary"
119
- Requires-Dist: psycopg2-binary; extra == "postgresql-binary"
120
- Requires-Dist: shtab; extra == "postgresql-binary"
121
119
  Requires-Dist: colorama; extra == "postgresql-binary"
120
+ Requires-Dist: shtab; extra == "postgresql-binary"
121
+ Requires-Dist: PyMySQL; extra == "postgresql-binary"
122
+ Requires-Dist: inflection; extra == "postgresql-binary"
123
+ Requires-Dist: psycopg2-binary; extra == "postgresql-binary"
122
124
  Requires-Dist: packaging; extra == "postgresql-binary"
123
- Requires-Dist: domain2idna~=1.12.0; extra == "postgresql-binary"
124
- Requires-Dist: python-dotenv; extra == "postgresql-binary"
125
- Requires-Dist: dnspython[DOH]~=2.7.0; extra == "postgresql-binary"
126
125
  Requires-Dist: requests[socks]<3; extra == "postgresql-binary"
127
- Requires-Dist: alembic; extra == "postgresql-binary"
126
+ Requires-Dist: dnspython[DOH]~=2.8.0; extra == "postgresql-binary"
127
+ Requires-Dist: python-dotenv; extra == "postgresql-binary"
128
128
  Provides-Extra: full
129
- Requires-Dist: mkdocs~=1.5; extra == "full"
130
- Requires-Dist: setuptools>=65.5.1; extra == "full"
131
- Requires-Dist: mkdocs-literate-nav~=0.6; extra == "full"
132
- Requires-Dist: pymdown-extensions~=10.9; extra == "full"
133
- Requires-Dist: flake8; extra == "full"
134
- Requires-Dist: mkdocs-material~=9.5; extra == "full"
135
- Requires-Dist: colorama; extra == "full"
136
- Requires-Dist: mkdocs-git-revision-date-localized-plugin~=1.2; extra == "full"
137
- Requires-Dist: tox; extra == "full"
138
- Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "full"
139
- Requires-Dist: mkdocs-gen-files~=0.5; extra == "full"
140
129
  Requires-Dist: PyYAML; extra == "full"
141
- Requires-Dist: inflection; extra == "full"
130
+ Requires-Dist: mkdocs-gen-files~=0.5; extra == "full"
131
+ Requires-Dist: shtab; extra == "full"
132
+ Requires-Dist: PyMySQL; extra == "full"
133
+ Requires-Dist: mkdocs-macros-plugin~=1.2; extra == "full"
142
134
  Requires-Dist: mkdocs-git-authors-plugin~=0.9; extra == "full"
143
- Requires-Dist: black; extra == "full"
144
- Requires-Dist: python-box[all]~=7.3.2; extra == "full"
135
+ Requires-Dist: tox; extra == "full"
136
+ Requires-Dist: bandit; extra == "full"
145
137
  Requires-Dist: isort; extra == "full"
146
- Requires-Dist: python-dotenv; extra == "full"
147
- Requires-Dist: zipp>=3.19.1; extra == "full"
148
- Requires-Dist: mkdocs-macros-plugin~=1.2; extra == "full"
149
- Requires-Dist: shtab; extra == "full"
150
- Requires-Dist: dnspython[DOH]~=2.7.0; extra == "full"
151
- Requires-Dist: requests[socks]<3; extra == "full"
152
- Requires-Dist: alembic; extra == "full"
153
- Requires-Dist: coverage; extra == "full"
138
+ Requires-Dist: mkdocs-material~=9.5; extra == "full"
154
139
  Requires-Dist: mkdocs-section-index~=0.3; extra == "full"
155
- Requires-Dist: packaging; extra == "full"
140
+ Requires-Dist: mkdocs~=1.5; extra == "full"
156
141
  Requires-Dist: SQLAlchemy~=2.0; extra == "full"
157
- Requires-Dist: mkdocstrings[python]~=0.26; extra == "full"
158
- Requires-Dist: PyMySQL; extra == "full"
142
+ Requires-Dist: coverage; extra == "full"
143
+ Requires-Dist: inflection; extra == "full"
144
+ Requires-Dist: dnspython[DOH]~=2.8.0; extra == "full"
145
+ Requires-Dist: pymdown-extensions~=10.9; extra == "full"
146
+ Requires-Dist: python-box[all]~=7.3.2; extra == "full"
147
+ Requires-Dist: mkdocs-literate-nav~=0.6; extra == "full"
148
+ Requires-Dist: alembic; extra == "full"
149
+ Requires-Dist: colorama; extra == "full"
150
+ Requires-Dist: packaging; extra == "full"
151
+ Requires-Dist: requests[socks]<3; extra == "full"
152
+ Requires-Dist: python-dotenv; extra == "full"
153
+ Requires-Dist: mkdocstrings[python]~=1.0; extra == "full"
154
+ Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "full"
155
+ Requires-Dist: black; extra == "full"
156
+ Requires-Dist: setuptools>=65.5.1; extra == "full"
159
157
  Requires-Dist: domain2idna~=1.12.0; extra == "full"
158
+ Requires-Dist: zipp>=3.19.1; extra == "full"
159
+ Requires-Dist: flake8; extra == "full"
160
160
  Requires-Dist: pylint; extra == "full"
161
+ Requires-Dist: mkdocs-git-revision-date-localized-plugin~=1.2; extra == "full"
161
162
  Provides-Extra: all
162
- Requires-Dist: mkdocs~=1.5; extra == "all"
163
- Requires-Dist: setuptools>=65.5.1; extra == "all"
164
- Requires-Dist: mkdocs-literate-nav~=0.6; extra == "all"
165
- Requires-Dist: pymdown-extensions~=10.9; extra == "all"
166
- Requires-Dist: flake8; extra == "all"
167
- Requires-Dist: mkdocs-material~=9.5; extra == "all"
168
- Requires-Dist: colorama; extra == "all"
169
- Requires-Dist: mkdocs-git-revision-date-localized-plugin~=1.2; extra == "all"
170
- Requires-Dist: tox; extra == "all"
171
- Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "all"
172
- Requires-Dist: mkdocs-gen-files~=0.5; extra == "all"
173
163
  Requires-Dist: PyYAML; extra == "all"
174
- Requires-Dist: inflection; extra == "all"
164
+ Requires-Dist: mkdocs-gen-files~=0.5; extra == "all"
165
+ Requires-Dist: shtab; extra == "all"
166
+ Requires-Dist: PyMySQL; extra == "all"
167
+ Requires-Dist: mkdocs-macros-plugin~=1.2; extra == "all"
175
168
  Requires-Dist: mkdocs-git-authors-plugin~=0.9; extra == "all"
176
- Requires-Dist: black; extra == "all"
177
- Requires-Dist: python-box[all]~=7.3.2; extra == "all"
169
+ Requires-Dist: tox; extra == "all"
170
+ Requires-Dist: bandit; extra == "all"
178
171
  Requires-Dist: isort; extra == "all"
179
- Requires-Dist: python-dotenv; extra == "all"
180
- Requires-Dist: psycopg2-binary; extra == "all"
181
- Requires-Dist: zipp>=3.19.1; extra == "all"
182
- Requires-Dist: mkdocs-macros-plugin~=1.2; extra == "all"
183
- Requires-Dist: shtab; extra == "all"
184
- Requires-Dist: dnspython[DOH]~=2.7.0; extra == "all"
185
- Requires-Dist: requests[socks]<3; extra == "all"
186
- Requires-Dist: alembic; extra == "all"
187
- Requires-Dist: coverage; extra == "all"
172
+ Requires-Dist: mkdocs-material~=9.5; extra == "all"
188
173
  Requires-Dist: mkdocs-section-index~=0.3; extra == "all"
189
- Requires-Dist: packaging; extra == "all"
174
+ Requires-Dist: mkdocs~=1.5; extra == "all"
190
175
  Requires-Dist: SQLAlchemy~=2.0; extra == "all"
191
- Requires-Dist: mkdocstrings[python]~=0.26; extra == "all"
192
- Requires-Dist: PyMySQL; extra == "all"
176
+ Requires-Dist: coverage; extra == "all"
177
+ Requires-Dist: inflection; extra == "all"
178
+ Requires-Dist: dnspython[DOH]~=2.8.0; extra == "all"
179
+ Requires-Dist: pymdown-extensions~=10.9; extra == "all"
180
+ Requires-Dist: python-box[all]~=7.3.2; extra == "all"
181
+ Requires-Dist: mkdocs-literate-nav~=0.6; extra == "all"
182
+ Requires-Dist: alembic; extra == "all"
183
+ Requires-Dist: colorama; extra == "all"
184
+ Requires-Dist: packaging; extra == "all"
185
+ Requires-Dist: requests[socks]<3; extra == "all"
186
+ Requires-Dist: python-dotenv; extra == "all"
187
+ Requires-Dist: mkdocstrings[python]~=1.0; extra == "all"
188
+ Requires-Dist: pyfunceble-process-manager==1.0.10; extra == "all"
189
+ Requires-Dist: black; extra == "all"
190
+ Requires-Dist: setuptools>=65.5.1; extra == "all"
193
191
  Requires-Dist: domain2idna~=1.12.0; extra == "all"
192
+ Requires-Dist: zipp>=3.19.1; extra == "all"
193
+ Requires-Dist: flake8; extra == "all"
194
194
  Requires-Dist: pylint; extra == "all"
195
+ Requires-Dist: mkdocs-git-revision-date-localized-plugin~=1.2; extra == "all"
196
+ Requires-Dist: psycopg2-binary; extra == "all"
195
197
  Dynamic: author
196
198
  Dynamic: author-email
197
199
  Dynamic: classifier
@@ -633,7 +635,6 @@ contribution(s) and or issue report which made or make
633
635
  <!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
634
636
  <!-- prettier-ignore-start -->
635
637
  <!-- markdownlint-disable -->
636
-
637
638
  <table>
638
639
  <tbody>
639
640
  <tr>
@@ -660,23 +661,23 @@ contribution(s) and or issue report which made or make
660
661
  <tr>
661
662
  <td align="center" valign="top" width="20%"><a href="https://infosec.exchange/@wally3k"><img src="https://avatars.githubusercontent.com/u/3049142?v=4?s=100" width="100px;" alt="WaLLy3K"/><br /><sub><b>WaLLy3K</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AWaLLy3K" title="Bug reports">🐛</a> <a href="#ideas-WaLLy3K" title="Ideas, Planning, & Feedback">🤔</a></td>
662
663
  <td align="center" valign="top" width="20%"><a href="https://github.com/Yuki2718"><img src="https://avatars.githubusercontent.com/u/58900598?v=4?s=100" width="100px;" alt="Yuki2718"/><br /><sub><b>Yuki2718</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AYuki2718" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=Yuki2718" title="Tests">⚠️</a></td>
663
- <td align="center" valign="top" width="20%"><a href="https://github.com/Zachinquarantine"><img src="https://avatars.githubusercontent.com/u/69423184?v=4?s=100" width="100px;" alt="Zachinquarantine"/><br /><sub><b>Zachinquarantine</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/commits?author=Zachinquarantine" title="Code">💻</a></td>
664
664
  <td align="center" valign="top" width="20%"><a href="http://bit.ly/cBWeb"><img src="https://avatars.githubusercontent.com/u/28985171?v=4?s=100" width="100px;" alt="ZeroDot1"/><br /><sub><b>ZeroDot1</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AZeroDot1" title="Bug reports">🐛</a> <a href="#ideas-ZeroDot1" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-ZeroDot1" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=ZeroDot1" title="Tests">⚠️</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=ZeroDot1" title="Code">💻</a></td>
665
665
  <td align="center" valign="top" width="20%"><a href="https://github.com/avatartw"><img src="https://avatars.githubusercontent.com/u/69660730?v=4?s=100" width="100px;" alt="avatartw"/><br /><sub><b>avatartw</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aavatartw" title="Bug reports">🐛</a></td>
666
+ <td align="center" valign="top" width="20%"><a href="https://github.com/dnmTX"><img src="https://avatars.githubusercontent.com/u/34774426?v=4?s=100" width="100px;" alt="dnmTX"/><br /><sub><b>dnmTX</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AdnmTX" title="Bug reports">🐛</a> <a href="#ideas-dnmTX" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-dnmTX" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/pulls?q=is%3Apr+reviewed-by%3AdnmTX" title="Reviewed Pull Requests">👀</a> <a href="#data-dnmTX" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=dnmTX" title="Tests">⚠️</a></td>
666
667
  </tr>
667
668
  <tr>
668
- <td align="center" valign="top" width="20%"><a href="https://github.com/dnmTX"><img src="https://avatars.githubusercontent.com/u/34774426?v=4?s=100" width="100px;" alt="dnmTX"/><br /><sub><b>dnmTX</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3AdnmTX" title="Bug reports">🐛</a> <a href="#ideas-dnmTX" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-dnmTX" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/pulls?q=is%3Apr+reviewed-by%3AdnmTX" title="Reviewed Pull Requests">👀</a> <a href="#data-dnmTX" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=dnmTX" title="Tests">⚠️</a></td>
669
669
  <td align="center" valign="top" width="20%"><a href="https://github.com/gwarser"><img src="https://avatars.githubusercontent.com/u/886325?v=4?s=100" width="100px;" alt="gwarser"/><br /><sub><b>gwarser</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Agwarser" title="Bug reports">🐛</a> <a href="#data-gwarser" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=gwarser" title="Tests">⚠️</a></td>
670
670
  <td align="center" valign="top" width="20%"><a href="https://github.com/hawkeye116477"><img src="https://avatars.githubusercontent.com/u/19818572?v=4?s=100" width="100px;" alt="hawkeye116477"/><br /><sub><b>hawkeye116477</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Ahawkeye116477" title="Bug reports">🐛</a></td>
671
671
  <td align="center" valign="top" width="20%"><a href="https://github.com/jawz101"><img src="https://avatars.githubusercontent.com/u/14151703?v=4?s=100" width="100px;" alt="jawz101"/><br /><sub><b>jawz101</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Ajawz101" title="Bug reports">🐛</a> <a href="#ideas-jawz101" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-jawz101" title="Answering Questions">💬</a> <a href="#data-jawz101" title="Data">🔣</a></td>
672
672
  <td align="center" valign="top" width="20%"><a href="https://github.com/keczuppp"><img src="https://avatars.githubusercontent.com/u/74409207?v=4?s=100" width="100px;" alt="keczuppp"/><br /><sub><b>keczuppp</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Akeczuppp" title="Bug reports">🐛</a> <a href="#ideas-keczuppp" title="Ideas, Planning, & Feedback">🤔</a> <a href="#question-keczuppp" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=keczuppp" title="Tests">⚠️</a> <a href="#data-keczuppp" title="Data">🔣</a></td>
673
+ <td align="center" valign="top" width="20%"><a href="https://github.com/opav"><img src="https://avatars.githubusercontent.com/u/6770347?v=4?s=100" width="100px;" alt="opav"/><br /><sub><b>opav</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aopav" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=opav" title="Tests">⚠️</a></td>
673
674
  </tr>
674
675
  <tr>
675
- <td align="center" valign="top" width="20%"><a href="https://github.com/opav"><img src="https://avatars.githubusercontent.com/u/6770347?v=4?s=100" width="100px;" alt="opav"/><br /><sub><b>opav</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aopav" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=opav" title="Tests">⚠️</a></td>
676
676
  <td align="center" valign="top" width="20%"><a href="https://github.com/rusty-snake"><img src="https://avatars.githubusercontent.com/u/41237666?v=4?s=100" width="100px;" alt="rusty-snake"/><br /><sub><b>rusty-snake</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Arusty-snake" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=rusty-snake" title="Documentation">📖</a></td>
677
677
  <td align="center" valign="top" width="20%"><a href="https://github.com/smed79"><img src="https://avatars.githubusercontent.com/u/1873139?v=4?s=100" width="100px;" alt="smed79"/><br /><sub><b>smed79</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Asmed79" title="Bug reports">🐛</a> <a href="#ideas-smed79" title="Ideas, Planning, & Feedback">🤔</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=smed79" title="Code">💻</a> <a href="#question-smed79" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=smed79" title="Tests">⚠️</a></td>
678
678
  <td align="center" valign="top" width="20%"><a href="https://speedmann.de/"><img src="https://avatars.githubusercontent.com/u/424659?v=4?s=100" width="100px;" alt="speedmann"/><br /><sub><b>speedmann</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aspeedmann" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=speedmann" title="Tests">⚠️</a></td>
679
679
  <td align="center" valign="top" width="20%"><a href="https://www.mypdns.org/"><img src="https://avatars.githubusercontent.com/u/44526987?v=4?s=100" width="100px;" alt="spirillen"/><br /><sub><b>spirillen</b></sub></a><br /><a href="#a11y-spirillen" title="Accessibility">️️️️♿️</a> <a href="https://github.com/funilrys/PyFunceble/issues?q=author%3Aspirillen" title="Bug reports">🐛</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=spirillen" title="Code">💻</a> <a href="#content-spirillen" title="Content">🖋</a> <a href="#data-spirillen" title="Data">🔣</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=spirillen" title="Documentation">📖</a> <a href="#example-spirillen" title="Examples">💡</a> <a href="#ideas-spirillen" title="Ideas, Planning, & Feedback">🤔</a> <a href="#maintenance-spirillen" title="Maintenance">🚧</a> <a href="#mentoring-spirillen" title="Mentoring">🧑‍🏫</a> <a href="#promotion-spirillen" title="Promotion">📣</a> <a href="#question-spirillen" title="Answering Questions">💬</a> <a href="https://github.com/funilrys/PyFunceble/pulls?q=is%3Apr+reviewed-by%3Aspirillen" title="Reviewed Pull Requests">👀</a> <a href="#tool-spirillen" title="Tools">🔧</a> <a href="https://github.com/funilrys/PyFunceble/commits?author=spirillen" title="Tests">⚠️</a> <a href="#tutorial-spirillen" title="Tutorials">✅</a> <a href="#talk-spirillen" title="Talks">📢</a> <a href="#userTesting-spirillen" title="User Testing">📓</a></td>
680
+ <td align="center" valign="top" width="20%"><a href="https://github.com/tqpcharlie"><img src="https://avatars.githubusercontent.com/u/69423184?v=4?s=100" width="100px;" alt="tqpcharlie"/><br /><sub><b>tqpcharlie</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/commits?author=tqpcharlie" title="Code">💻</a></td>
680
681
  </tr>
681
682
  <tr>
682
683
  <td align="center" valign="top" width="20%"><a href="https://github.com/NeolithEra"><img src="https://avatars.githubusercontent.com/u/52778917?v=4?s=100" width="100px;" alt="watchman-pypi"/><br /><sub><b>watchman-pypi</b></sub></a><br /><a href="https://github.com/funilrys/PyFunceble/issues?q=author%3ANeolithEra" title="Bug reports">🐛</a></td>
@@ -54,7 +54,7 @@ License:
54
54
 
55
55
  import multiprocessing
56
56
  from datetime import datetime
57
- from typing import Dict, List, Optional
57
+ from typing import Any, Dict, List, Optional
58
58
 
59
59
  from sqlalchemy.orm import Session
60
60
 
@@ -110,8 +110,12 @@ class AvailabilityCheckerBase(CheckerBase):
110
110
  Optional, Activates/Disables the check of the status before the actual
111
111
  status gathering.
112
112
  :param bool use_whois_db:
113
- Optional, Activates/Disable the usage of a local database to store the
113
+ Optional, Activates/Disables the usage of a local database to store the
114
114
  WHOIS datasets.
115
+ :param bool use_platform:
116
+ Optional, Activates/Disables the usage of the platform features.
117
+ :param multiprocessing.Lock shared_lock:
118
+ Optional, The shared lock to use to access shared resources.
115
119
  """
116
120
 
117
121
  # pylint: disable=too-many-public-methods, too-many-instance-attributes
@@ -160,6 +164,7 @@ class AvailabilityCheckerBase(CheckerBase):
160
164
  db_session: Optional[Session] = None,
161
165
  use_whois_db: Optional[bool] = None,
162
166
  use_platform: Optional[bool] = None,
167
+ shared_lock: Optional[Any] = None,
163
168
  ) -> None:
164
169
  self.dns_query_tool = DNSQueryTool()
165
170
  self.whois_query_tool = WhoisQueryTool()
@@ -226,6 +231,7 @@ class AvailabilityCheckerBase(CheckerBase):
226
231
  do_syntax_check_first=do_syntax_check_first,
227
232
  db_session=db_session,
228
233
  use_platform=use_platform,
234
+ shared_lock=shared_lock,
229
235
  )
230
236
 
231
237
  @property
@@ -761,7 +767,9 @@ class AvailabilityCheckerBase(CheckerBase):
761
767
  if (
762
768
  PyFunceble.facility.ConfigLoader.is_already_loaded() and self.use_whois_db
763
769
  ): # pragma: no cover ## Not interesting enough to spend time on it.
764
- whois_object = get_whois_dataset_object(db_session=self.db_session)
770
+ whois_object = get_whois_dataset_object(
771
+ db_session=self.db_session, shared_lock=self.shared_lock
772
+ )
765
773
  known_record = whois_object[self.subject]
766
774
 
767
775
  if known_record and not isinstance(known_record, dict):
@@ -115,7 +115,9 @@ class DomainAvailabilityChecker(AvailabilityCheckerBase):
115
115
  self.status.idna_subject,
116
116
  )
117
117
 
118
- lookup_result = DomainReputationChecker(self.status.idna_subject).get_status()
118
+ lookup_result = DomainReputationChecker(
119
+ self.status.idna_subject, shared_lock=self.shared_lock
120
+ ).get_status()
119
121
 
120
122
  # pylint: disable=no-member
121
123
  if lookup_result and lookup_result.is_malicious():
@@ -112,6 +112,7 @@ class DomainAndIPAvailabilityChecker(AvailabilityCheckerBase):
112
112
  db_session=self.db_session,
113
113
  use_whois_db=self.use_whois_db,
114
114
  use_platform=self.use_platform,
115
+ shared_lock=self.shared_lock,
115
116
  )
116
117
  else:
117
118
  query_object = DomainAvailabilityChecker(
@@ -126,6 +127,7 @@ class DomainAndIPAvailabilityChecker(AvailabilityCheckerBase):
126
127
  db_session=self.db_session,
127
128
  use_whois_db=self.use_whois_db,
128
129
  use_platform=self.use_platform,
130
+ shared_lock=self.shared_lock,
129
131
  )
130
132
 
131
133
  query_object.dns_query_tool = self.dns_query_tool
@@ -52,7 +52,7 @@ License:
52
52
 
53
53
  import datetime
54
54
  import functools
55
- from typing import Optional
55
+ from typing import Any, Optional
56
56
 
57
57
  import domain2idna
58
58
  from sqlalchemy.orm import Session
@@ -77,6 +77,12 @@ class CheckerBase:
77
77
 
78
78
  .. warning::
79
79
  This does not apply to the syntax checker - itself.
80
+ :param Session db_session:
81
+ Optional, The database session to use.
82
+ :param bool use_platform:
83
+ Optional, Authorizes the usage of the platform.
84
+ :param Any shared_lock:
85
+ Optional, The shared lock to use to access shared resources.
80
86
  """
81
87
 
82
88
  STD_DO_SYNTAX_CHECK_FIRST: bool = False
@@ -97,6 +103,8 @@ class CheckerBase:
97
103
  status: Optional[CheckerStatusBase] = None
98
104
  params: Optional[CheckerParamsBase] = None
99
105
 
106
+ shared_lock: Optional[Any] = None
107
+
100
108
  def __init__(
101
109
  self,
102
110
  subject: Optional[str] = None,
@@ -104,6 +112,7 @@ class CheckerBase:
104
112
  do_syntax_check_first: Optional[bool] = None,
105
113
  db_session: Optional[Session] = None,
106
114
  use_platform: Optional[bool] = None,
115
+ shared_lock: Optional[Any] = None,
107
116
  ) -> None:
108
117
  self.platform_query_tool = PlatformQueryTool()
109
118
  self.url2netloc = Url2Netloc()
@@ -115,6 +124,9 @@ class CheckerBase:
115
124
  if self.status is None:
116
125
  self.status = CheckerStatusBase()
117
126
 
127
+ if shared_lock is not None:
128
+ self.shared_lock = shared_lock
129
+
118
130
  if subject is not None:
119
131
  self.subject = subject
120
132
 
@@ -50,7 +50,7 @@ License:
50
50
  limitations under the License.
51
51
  """
52
52
 
53
- from typing import List, Optional
53
+ from typing import Any, List, Optional
54
54
 
55
55
  from sqlalchemy.orm import Session
56
56
 
@@ -75,6 +75,12 @@ class ReputationCheckerBase(CheckerBase):
75
75
  :param bool do_syntax_check_first:
76
76
  Optional, Activates/Disables the check of the status before the actual
77
77
  status gathering.
78
+ :param Session db_session:
79
+ Optional, The database session to use.
80
+ :param bool use_platform:
81
+ Optional, Authorizes the usage of the platform.
82
+ :param Any shared_lock:
83
+ Optional, The shared lock to use to access shared resources.
78
84
  """
79
85
 
80
86
  dns_query_tool: Optional[DNSQueryTool] = None
@@ -92,9 +98,10 @@ class ReputationCheckerBase(CheckerBase):
92
98
  do_syntax_check_first: Optional[bool] = None,
93
99
  db_session: Optional[Session] = None,
94
100
  use_platform: Optional[bool] = None,
101
+ shared_lock: Optional[Any] = None,
95
102
  ) -> None:
96
103
  self.dns_query_tool = DNSQueryTool()
97
- self.ipv4_reputation_query_tool = IPV4ReputationDataset()
104
+ self.ipv4_reputation_query_tool = IPV4ReputationDataset(shared_lock=shared_lock)
98
105
  self.domain_syntax_checker = DomainSyntaxChecker()
99
106
  self.ip_syntax_checker = IPSyntaxChecker()
100
107
  self.url_syntax_checker = URLSyntaxChecker()
@@ -110,6 +117,7 @@ class ReputationCheckerBase(CheckerBase):
110
117
  do_syntax_check_first=do_syntax_check_first,
111
118
  db_session=db_session,
112
119
  use_platform=use_platform,
120
+ shared_lock=shared_lock,
113
121
  )
114
122
 
115
123
  @staticmethod
@@ -50,7 +50,7 @@ License:
50
50
  limitations under the License.
51
51
  """
52
52
 
53
- from typing import Optional
53
+ from typing import Any, Optional
54
54
 
55
55
  from sqlalchemy.orm import Session
56
56
 
@@ -78,13 +78,16 @@ class SyntaxCheckerBase(CheckerBase):
78
78
  self,
79
79
  subject: Optional[str] = None,
80
80
  db_session: Optional[Session] = None,
81
+ shared_lock: Optional[Any] = None,
81
82
  ) -> None:
82
83
  self.params = SyntaxCheckerParams()
83
84
 
84
85
  self.status = SyntaxCheckerStatus()
85
86
  self.status.params = self.params
86
87
 
87
- super().__init__(subject=subject, db_session=db_session)
88
+ super().__init__(
89
+ subject=subject, db_session=db_session, shared_lock=shared_lock
90
+ )
88
91
 
89
92
  def subject_propagator(self) -> "CheckerBase":
90
93
  """