feature:detach

Introduction

feature:detach unpins a released version from the selected product, the reverse of feature:attach. The entry goes back to the bare, editable <namespace>/<feature>, and the feature is uninstalled from the running app. The snapshot in .splent_cache stays for the next time.

splent feature:detach splent-io/splent_feature_notes v1.2.0
  notes@v1.2.0 removed from pyproject.toml
    uninstalling from web container...
  done.

The feature stays declared, now as the editable copy. Run feature:remove next to take it out. Comments, blank lines, key order and quote style stay as they were in pyproject.toml.


When it refuses

  Cannot detach 'notes': the following features depend on it:
    - splent_feature_reports
  Remove those first, or use --force.

Another installed feature requires it in its contract. Detach or remove that one first.

  notes has migrations applied (state: migrated).
  Roll them back first: splent db:rollback splent_feature_notes --steps 999
  Or use --force.

Roll its migrations back first, so no orphaned tables stay. The state active does not block. --force skips both checks.


Reference

Argument or option Description
FEATURE_IDENTIFIER <namespace>/<feature>, or <feature> for splent-io
VERSION The attached version, such as v1.2.0
--force Skip the dependency and migration checks
Message Exit What to do
<short>@<version> is not attached to this product. Declared: ... 1 Pass the version the product declares
<short> is not declared in this product under '<namespace>'. 1 Check the namespace
<path> was left as it was, because <reason> 1 Make the edit by hand. Nothing was written

Requirements

  • A selected product (SPLENT_APP) with a pyproject.toml.

See also


Back to top

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