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 the following.

  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