Upgraded the minimum required Python version to 3.11 across various files. Removed `pyre-check` from dependencies and temporarily disabled mypy static type checker in the CI configuration. Additionally, simplified several condition checks and fixed formatting inconsistencies in theHarvester modules.
Improves the readability and consistency of the codebase by replacing double quotes with single quotes where applicable. Also refactors several `if` statements and list/set comprehensions for brevity. The update does not affect functionality or performance. Unnecessary module imports were also removed for optimization.
* Added call to api endpoint to explicitly gather subdomains from zoomeye, updated user agents, replaced orjson with ujson, and fixed substring not found error.
* Updated orjson to ujson.
* Fixed semantic error in html check in google workaround.
* Fixed flake8 errors.
* Fixed VT to use API.
* Fixed virustotal module.
* Fixed possible edge case that could possibly cause an infinite loop.
* Removed broken modules.
* Added 4 new sources: brave, criminalip, hunterhow, and subdomainfinderc99, added dnsresolve, and other misc changes.
* Added TODO comment.
* Fixed bin\theHarvester to allow python3.9
* Pep8 newline at end of file.
* Fixed error when passing in comma seperated resolvers and allow for user to pass in --dns-resolve flag with no arguments to use default resolvers that user has.
* Added call to api endpoint to explicitly gather subdomains from zoomeye, updated user agents, replaced orjson with ujson, and fixed substring not found error.
* Updated orjson to ujson.
* Fixed semantic error in html check in google workaround.
* Fixed flake8 errors.
* Fixed VT to use API.
* Fixed virustotal module.
* Fixed possible edge case that could possibly cause an infinite loop.
Manually tested with Python 3.8.3. Using SelectorEventLoop because
of issues with default ProactorEventLoop on Windows (e.g., missing
add_reader implementation needed by aiodns). Made the uvloop install
requirement conditional on the operating system (skipped on
Windows platforms). This change doesn't allow setup.py to run on
Windows (because of /etc/theHarvester reference), but supports running
theHarvester.py directly from a cloned workspace.
Delay importing the main to avoid the SyntaxError.
$ ./theHarvester.py
Traceback (most recent call last):
File "./theHarvester.py", line 5, in <module>
from theHarvester import __main__
File
"theHarvester/__main__.py",
line 96
print(f'\033[94m[*] Target: {word} \n \033[0m')
^
SyntaxError: invalid syntax
Don't mix line endings. Always use LF for text files when committing.
Ensure your `core.eol` is set to `native` using `git config` to get
native line endings for your platform on checkout.