check:deps

Verify that every feature’s declared dependencies are satisfied and that signal-based connections between features are intact.


Usage

splent check:deps

What it checks

Check Pass Fail/Warn
Declared dependencies All requires entries in feature.toml resolve to an installed feature Fail: missing dependency
Signal connections Importing a feature’s signals.py succeeds and all @<signal>.connect handlers register without errors Warn: import error or missing signal source
Circular dependencies No circular requires chains detected Fail: cycle found
Version compatibility Dependent feature’s version constraint is satisfied by the installed version Warn: version mismatch

Signal validation

Since v1.2.7, features use blinker signals for cross-feature business logic. check:deps verifies that:

  1. The emitting feature (e.g., splent_feature_auth) is installed and its signal (e.g., user_registered) is importable.
  2. Each listening feature’s signals.py can import and connect to the signal without errors.
  3. No listener references a signal from a feature that is not declared in pyproject.toml.

Example output

  Dependency check — sample_splent_app
  ─────────────────────────────────────────────────────────────────────
  splent_feature_profile
    [✔] requires splent_feature_auth          → v1.2.7 installed
    [✔] signal  user_registered               → connected

  splent_feature_confirmemail
    [✔] requires splent_feature_mail          → v1.2.7 installed
    [✔] signal  user_registered               → connected

  splent_feature_reset
    [✔] requires splent_feature_mail          → v1.2.7 installed

  ─────────────────────────────────────────────────────────────────────
  All dependency checks passed.

See also


Back to top

splent. Distributed by an LGPL license v3. Contact us: drorganvidez@us.es