v0.15.0
BayramAnnakov/ux-waiting-auditv0.15.0Jul 8, 2024by ppfeister
AI Summary
This is a major packaging overhaul for Sherlock, bringing official availability to PyPI, DockerHub, and Homebrew. The project has adopted Poetry and switched to pytest, while deprecating legacy Tor features and older Python versions.
Key Highlights
- Official packages available on PyPI, DockerHub, and Homebrew.
- Adoption of Poetry and restructuring as a true package.
- Importable module renamed from `sherlock` to `sherlock_project`.
- Deprecated `--tor` and `--unique-tor` flags.
Breaking Changes
- Importable module renamed from `sherlock` to `sherlock_project`.
- Deprecated support for Python 3.6 and 3.7.
- Deprecated `--tor` and `--unique-tor` flags (up for removal).
New Features
- New Sherlock wiki at sherlockproject.xyz
- Added `--dump-response` flag for debugging
- Optional `torrequest` dependency
Full Release Notes
## What's Changed - 📦 Official package now available on [__PyPI__][ext-pypi] (#2127) @ppfeister - 📦 Official package now available on [__DockerHub__][ext-dockerhub] (#2216) @ppfeister - 📦 Official package now available on [__Fedora__][ext-fedora] @ppfeister - 📦 Community package now available on [__Homebrew__][ext-homebrew] @p-linnane - ✨ New Sherlock wiki at [__sherlockproject.xyz__][ext-wiki] @sdushantha - ✨ --dump-response flag added for easier debugging (#2214) @ppfeister - 🪲 Fixed uncaught exception when tor browser not found (#2033) @joaomfbh - 🪲 ‼️ Importable module renamed from sherlock to sherlock_project [__[details]__][ext-deb1072733] @ppfeister - 🛠️ Adopted Poetry and restructured as a true package @mjsir911 @ppfeister @matheusfelipeog @sdushantha - 🛠️ Unit testing rewritten to better support contributors and packagers @ppfeister - Switched from unittest to pytest and tox - Expanded regression testing to include builds on Windows and MacOS - Added offline-only test environments for packagers (see below) - 🛠️ Manifest now uses schema for better regression testing and in-IDE UX (#2212) @ppfeister - 🛠️ Added detection mechanism for users running via legacy/unsupported methods (#2213) @ppfeister - 🛠️ ‼️ Dependency [__torrequest__][ext-torrequest] made optional (#2215) @ppfeister @matheusfelipeog - --tor and --unique-tor are now DEPRECATED (see detail below) - 🛠️ ‼️ Deprecated support for Python 3.6 and 3.7 (now ^3.8) - 🛠️ Several minor UX improvements over the course of development - 🏷️ Adopted properly tagged releases help out our downstream packagers - ✍️ General improvements to and simplification of in-repo documentation Manifest contributors this cycle: @RahalBhupathi @abhirai7 @pandyah5 @roxerj @Wicloz @slavran [__[full changelog]__][release-diff] ___ #### ‼️ Tor deprecation detail `--tor` and `--unique-tor` are now deprecated, and both are up for possible removal in a future release (#2200). Users who need time to adapt to this change can install the now-optional dependency [__torrequest__][ext-torrequest]. If Sherlock has been installed via pip, `pip install 'sherlock-project[tor]'` will include the necessary extras Since torrequest is simply _not available_ as an rpm, those options have already been patched out of the Fedora release. ___ #### 📦 Packaging info Many packages are required to be built entirely offline, as with the official Fedora release and the upcoming community-supported Debian release. Sherlock's unit tests generally require an internet connection, but with the adoption of tox and pytest, we've added offline-only test modes. `tox -e offline` is the preferred offline-only test method, with `pytest -m "not online"` also being supported out of the box. Reference @ppfeister's [__spec file__][ext-rpm-spec] for an example of fully-offline unit testing with tox. [release-diff]: https://github.com/sherlock-project/sherlock/compare/v0.14.4...v0.15.0 [ext-pypi]: https://pypi.org/project/sherlock-project/ [ext-dockerhub]: https://hub.docker.com/r/sherlock/sherlock [ext-fedora]: https://src.fedoraproject.org/rpms/sherlock-project/ [ext-homebrew]: https://formulae.brew.sh/formula/sherlock [ext-wiki]: https://sherlockproject.xyz [ext-wiki-install]: https://sherlockproject.xyz/installation [ext-rpm-spec]: https://src.fedoraproject.org/rpms/sherlock-project/blob/rawhide/f/sherlock-project.spec [ext-torrequest]: https://pypi.org/project/torrequest/ [ext-deb1072733]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1072733