v0.5.0
windmill-labs/windmillv0.5.0Aug 14, 2026by github-actions[bot]
Upgrading?
AI Summary
This is a major release targeting Python 3.11-3.14, introducing async scanning and Rust native backends, expanding wordlist capabilities, and improving output formats and session management.
Key Highlights
- Async scanning is now the default runtime with a Rust native backend for supported scans.
- Category-based wordlists and template support with dynamic placeholders.
- New output formats including MySQL and PostgreSQL, alongside a Python API.
- Advanced match/filter controls and improved wildcard/duplicate detection.
Breaking Changes
- Legacy pickle sessions are no longer loaded directly.
- The old dependency installer path was removed.
- Nuitka was removed from the release build matrix.
New Features
- Async scanning and legacy threaded stack support.
- Rust native backend for GET scans and wordlists.
- Category-based wordlists for various frameworks.
- MySQL and PostgreSQL report formats.
- Python API with `FuzzerConfig` and `DirsearchFuzzer`.
- Template wordlist support with placeholders.
- Resumable sessions using JSON controller state.
Full Release Notes
# dirsearch v0.5.0 This release includes all user-facing changes since the last published release, `v0.4.3`. ## Runtime and scanning - Python support now targets Python 3.11-3.14, with release builds prepared on Python 3.14. - Async scanning is available as the default runtime on supported Python versions; the legacy threaded stack remains available with `--sync`. - A Rust native backend is available for supported GET scans and native wordlist generation through `--request-backend native` and `--wordlist-backend native`. - Advanced match/filter controls are available for status, size, word count, line count, regex, and elapsed time. - Wildcard and duplicate-result filtering were improved, including redirect-aware duplicate detection and stealth calibration words. - New scan controls include maximum runtime per target, non-default network interfaces, Nmap XML target import, and `--disable-cli`. - Async pause/stop handling, SSL error classification, proxy handling, streamed response timing, IPv6 handling, and encoded URL edge cases were fixed or improved. ## Wordlists and discovery data - Category-based wordlists are available with `--wordlist-categories`, including PHP, Python, Java, .NET, Node, ColdFusion, and infrastructure categories. - Template wordlists now support placeholders such as `%SUBJECT%`, `%CRUD_OP%`, `%AUTH_OP%`, `%DATE%`, `%API_VERSION%`, `%CATEGORY:name%`, and `%EXT%`. - `--wordlist-status`, `--wordlist-max-size`, and selectable wordlist backends (`auto`, `python`, `native`) were added. - Bundled discovery data was expanded with new framework paths, WordPress and WooCommerce entries, API/Ollama/OpenAI endpoints, traversal-oriented entries, and updated blacklists. ## Output, reports, and API - Multiple output formats can be written from one run. - Report paths and SQL table names can use variables. - MySQL and PostgreSQL reports were added, and DB drivers are now optional extras: `dirsearch[mysql]`, `dirsearch[postgresql]`, and `dirsearch[db]`. - `--verbose` can show response elapsed time and content type. - A Python API was added with `FuzzerConfig`, `DirsearchFuzzer`, structured results, wordlist helpers, and template wordlist support. - `python -m dirsearch` entrypoint support and packaged install metadata were fixed. ## Sessions and resumability - Resumable sessions now use JSON controller state instead of pickle. - `--list-sessions` and session resume by ID were added. - Session paths are safer across platforms, including Windows-safe timestamps. - Bundled builds store sessions under the user home directory. - Ctrl+C pause/resume behavior was improved across threaded, async, and PyInstaller Linux builds. ## Security and dependencies - Runtime requirements are pinned for supply-chain hardening. - The old dependency installer path was removed. - Optional DB dependencies are explicit extras instead of mandatory runtime dependencies. - XML parsing was hardened with safe XML handling and tests. - Legacy pickle sessions are no longer loaded directly; unsupported pickle sessions now warn. ## Packaging and distribution - PyInstaller release builds now cover Windows x64, Linux x64, Linux ARM64, macOS Intel, and macOS Apple Silicon. - Release artifacts are built in three default-stack variants: `async`, `threaded`, and `native-rust`. - Portable CPython archives are provided with compiled dependencies for users affected by PyInstaller antivirus false positives. - Linux x64 Docker images are published to GitHub Container Registry for each release stack. - Nuitka was removed from the release build matrix for this release. - CI, CodeQL, Semgrep, Docker, PyInstaller, and draft-release workflows were refreshed. ## Documentation - The README was split into focused pages under `docs/`. - Installation, usage, configuration, sessions, wordlist, Python API, build, and native-backend benchmark docs were added or refreshed. - Prompt-injection safety guidance was added for agent workflows.
Related Repositories
A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io
An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.
Build smaller, faster, and more secure desktop and mobile applications with a web frontend.
π RuView turns commodity WiFi signals into real-time spatial intelligence, vital sign monitoring, and presence detection — all without a single pixel of video.
Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one