Introduce the `next_page_or_end` method in `githubcode.py` to handle pagination. Additionally, modify the test case and upgrade pytest settings in `pyproject.toml` to the latest versions, ensuring compatibility and updated configurations.
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.
Within core.py, the import statement for the 'Sized' attribute from 'collections.abc' is moved under a TYPE_CHECKING condition for better import flow control. The Ruff lint configuration in pyproject.toml has been simplified to select specific error codes and the `show-fixes` option has been enabled, allowing visibility of possible fixes for erring lines.
This commit removes individual linters and formatters such as black, flake8 and isort and replaces them with Ruff. The relevant configuration files have been deleted and the settings have been merged into pyproject.toml. Also, python-version in the GitHub workflow file has been updated to include 3.12. Ruff's linter and formatter is now used in the GitHub workflows as well.