Skip to content

Latest commit

 

History

History
68 lines (51 loc) · 3.2 KB

File metadata and controls

68 lines (51 loc) · 3.2 KB

FolderView Plus Support Policy

This project follows a compatibility-first policy for migrations from folder.view, folder.view2, and folder.view3.

Backward Compatibility Commitments

  • Legacy import payloads from folder.view2/folder.view3 remain supported.
  • Legacy Docker label keys remain supported: folder.view, folder.view2, folder.view3, folderview.plus.
  • Existing folder-level regex values remain readable, importable, backed up, and evaluated at runtime. New automation should use Advanced Auto-Rules; the modern editor offers a guarded conversion that creates a backup before clearing the legacy value.
  • Legacy custom override roots remain supported:
    • /boot/config/plugins/folder.view/styles
    • /boot/config/plugins/folder.view2/styles
    • /boot/config/plugins/folder.view3/styles
    • /boot/config/plugins/folder.view/scripts
    • /boot/config/plugins/folder.view2/scripts
    • /boot/config/plugins/folder.view3/scripts

Stable Selector/Tag Contracts

Selectors listed below are treated as stable customization hooks and protected by CI contract tests.

Docker

  • td.ct-name.folder-name
  • div.folder-name-sub
  • button.dropDown-* + .folder-dropdown
  • td.updatecolumn.folder-update
  • div.folder-preview
  • img.img.folder-img
  • span.state.folder-state
  • Tooltip hooks: .preview-outbox, .action-info, .info-ct, .tooltipster-docker-folder

VM

  • td.vm-name.folder-name
  • div.folder-name-sub
  • button.dropDown-* + .folder-dropdown
  • div.folder-preview
  • img.img.folder-img
  • span.state.folder-state

Dashboard

  • .folder-showcase-outer-*
  • .folder-img-docker, .folder-state-docker
  • .folder-img-vm, .folder-state-vm

Deprecation Policy

  • If a stable selector or payload shape must change, it is first marked as deprecated.
  • Deprecations must be announced in release notes with a migration note.
  • Removal is delayed for at least 2 stable releases after deprecation notice.
  • Contract tests are updated only after replacement hooks exist and are documented.
  • The legacy folder-level regex editor is deprecated in favor of Advanced Auto-Rules. Runtime/import compatibility will not be removed earlier than two stable releases after a separate removal notice; this conversion release is not a removal notice.

Legacy Regex Migration

  • Empty legacy regex controls are hidden in the modern editor, so new folders use Advanced Auto-Rules.
  • A folder with an existing legacy regex shows a read-only compatibility summary, live match/conflict counts, and a Convert to Auto-Rule action.
  • Conversion creates an Include / Name regex rule at the end of the global rule list. Existing advanced policy therefore keeps priority.
  • The server creates a backup and updates the rule preferences plus folder record as one guarded operation. If either write fails, the original data is restored.
  • Invalid legacy patterns retain a focused repair action because they cannot be represented as a valid advanced rule.
  • Imported or restored legacy values continue to run until explicitly converted.

Regression Policy

  • Compatibility contracts are validated in CI (tests + release guards).
  • Changes that break documented legacy support are treated as release blockers.