Skip to main content

Scout out for transitive versions of Drupal modules for the upgrade of the core.

Project description

Drupal Scout

Search for Drupal module entries with transitive core version requirements to help to upgrade the Drupal Core.

Installation

Using uv (Recommended)

uv tool install drupal-scout

Or run directly without installing:

uvx drupal-scout --help

Using pip

pip install drupal-scout

Quick Start

Get a compatibility report for your current Drupal project:

drupal-scout

Scan a specific module for Drupal 11 compatibility:

drupal-scout --core 11.0.0 --modules drupal/webform

Features

  • Asyncio Concurrency: High-performance parallel module scanning using asyncio to speed up dependency analysis.
  • Rich TUI Integration: Beautiful terminal output with structured tables and real-time progress bars powered by the rich library.
  • MCP Server Support: Built-in Model Context Protocol server for integration with AI IDEs (like Claude Desktop or Cursor).
  • Environment Diagnostics: Quick self-diagnostic check of the environment and dependencies using the info command.
  • Multiple Output Formats:
    • table: High-fidelity color-coded table for human readability.
    • json: Machine-readable raw data for automation scripts.
    • suggest: Generates a suggested composer.json with updated version requirements.

Limitations

  • Python 3.11+: The application requires Python 3.11 or higher.
  • Composer v2: The application works with Composer-based (Composer v2) Drupal 8+ projects.

Usage/Examples

drupal-scout [-h] [-v] [-d DIRECTORY] [-n] [-l LIMIT] [-f {table,json,suggest}] [-s] [-c CORE] [-m MODULES [MODULES ...]] {info} ...

Arguments

  • -h, --help: Show help message and exit.
  • -v, --version: Show program's version number and exit.
  • -d DIRECTORY, --directory DIRECTORY: Directory of the Drupal installation (default: .).
  • -n, --no-lock: Do not use the composer.lock file to determine installed versions.
  • -l LIMIT, --limit LIMIT: Concurrency limit for async requests. Default is 10.
  • -f {table,json,suggest}, --format {table,json,suggest}: Output format (default: table).
  • -s, --save-dump: Use with --format suggest to save the suggested composer.json to disk.
  • -c CORE, --core CORE: Optional Drupal core version override (e.g., 10.0.0).
  • -m MODULES [MODULES ...], --modules MODULES [MODULES ...]: Scan only specific modules, skipping full project discovery.

Subcommands

  • info: Show diagnostic information about the tool, jq availability, and the current Drupal environment.

MCP Server Usage

To use Drupal Scout as an MCP server in your AI assistant:

drupal-scout-mcp

Or with uvx:

uvx --from drupal-scout drupal-scout-mcp

Targeted Scan Examples

Scan one specific module with an explicit core version:

drupal-scout --core 10.0.0 --modules drupal/webform

Scan multiple modules and output JSON:

drupal-scout --core 10.0.0 --modules drupal/webform drupal/ctools --format json

Scan modules with auto-detected core from a local directory:

drupal-scout --directory /path/to/drupal --modules drupal/webform

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

drupal_scout-3.0.1.tar.gz (30.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

drupal_scout-3.0.1-py3-none-any.whl (37.1 kB view details)

Uploaded Python 3

File details

Details for the file drupal_scout-3.0.1.tar.gz.

File metadata

  • Download URL: drupal_scout-3.0.1.tar.gz
  • Upload date:
  • Size: 30.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for drupal_scout-3.0.1.tar.gz
Algorithm Hash digest
SHA256 bfa3eed260b81b90c9ad856c400b36d2b38c88047537a137ae1c4075124d9533
MD5 317986a9259d221eec7381b0d729ab37
BLAKE2b-256 ce16c446c8fbb97cc56bf57c52cf50a9be5756c99e7e05b2a1d3aa9ebc97670d

See more details on using hashes here.

Provenance

The following attestation bundles were made for drupal_scout-3.0.1.tar.gz:

Publisher: release.yml on rtech91/drupal-scout

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file drupal_scout-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: drupal_scout-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 37.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for drupal_scout-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d002a21c2dc9d26f11ad890e688b037947c49b0a99e0ecc2c686968440905b97
MD5 ced31167979817e8df370720d17e7493
BLAKE2b-256 a860480a6269cec093c27f228c957287ba8343e279cfaed497685dbf94bdb8e2

See more details on using hashes here.

Provenance

The following attestation bundles were made for drupal_scout-3.0.1-py3-none-any.whl:

Publisher: release.yml on rtech91/drupal-scout

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page