Skip to content

pyvelm v0.9.0

Release date: 2026-05-25

Kanban boards, schema diff/migrate, dialog-style relational fields, Odoo-style breadcrumb history, and automatic timestamps on every model.


Highlights

Kanban

  • Flat board (no arch group_by) — responsive card grid with the same search bar, filters, group-by dropdown, and pagination as list views.
  • Grouped board — columns with drag handles; move cards between columns (updates the grouping field) and reorder when the arch declares sequence="…".
  • Declare: kanban_view(..., group_by="stage_id", sequence="sequence", ...).

Open a record from Kanban and the trail shows Home → … → Kanban (not only the list view). The view switcher pushes ancestors via bc=; form links carry ref= with filters and group-by restored on back navigation.

Schema tooling

pyvelm db diff [module]
pyvelm db migrate

Detects new tables/columns and safe constraint changes; warns when NOT NULL cannot apply until NULLs are backfilled. See migrations.md.

Relational UX

One2many and Many2many fields default to dialog editing (read-only summary + Add / row links) when the comodel has a form view. Use widget="inline" or widget="table" for editable inline tables on the parent form.

Timestamps

BaseModel adds created_at and updated_at automatically on create/write. Shown read-only on edit forms.


Upgrade

pip install -U pyvelm
  1. Sync modules that gained columns (e.g. vellum_demo comment sequence, timestamp columns on existing models).
  2. Run pyvelm db migrate if you use schema autogen against a live database.
  3. Upgrade demo modules from Apps (or restart examples/serve.py) so kanban and view changes load.
  4. Hard-refresh the browser for new kanban and breadcrumb JavaScript.

Also in this release

  • pyvelm make:view <model> scaffolds list + form (+ kanban stub) from the model definition; reads PYVELM_MODULE_ROOTS from .env like db diff.
  • Partners example: tag_ids / child_ids use dialog; SYNC_HOOK backfills code before NOT NULL migrate.