Skip to content

pyvelm v0.3.0

Release date: 2026-05-22
Base module: 0.18.0 (unchanged)

Apps Sync, Vellum timestamps and _guarded, display_name, and a round of console UX polish (breadcrumbs, record pager, list search bar, toasts).


Highlights

Apps Sync

Installed modules get a Sync button when already up to date: reloads models and DATA, applies an additive schema diff, and re-syncs views/menus without uninstall/reinstall. Use SYNC_HOOK in the manifest for post-sync seeding (e.g. vellum_demo demo notes).

Vellum timestamps and mass assignment

  • created_at / updated_at — maintained automatically on Vellum models (_timestamps = False to disable). Run Apps Sync or a migration for new columns.
  • _guarded — Laravel-style default when neither _fillable nor _guarded is set (id, created_at, updated_at); forms respect the same rules via parse_form_vals.

display_name

Every model exposes a computed display_name for labels and breadcrumbs. Override _rec_name (default name) or _compute_display_name for custom formatting.

Console UX

  • Breadcrumbs: Home → list → record on forms; list pages show Home → view.
  • Form record pager respects list search/filters/sort.
  • List search bar shares a row with page size; focus ring + autofocus on list/graph/pivot.
  • pvToast for Apps action feedback; confirms/alerts use PvDialog chrome.

Install

pip install pyvelm==0.3.0

Upgrade from v0.2.10

  1. pip install -U pyvelm (or pip install -e . in a dev tree).
  2. Restart your app server.
  3. Open Apps and Sync each installed module (or upgrade if a newer module version is available). Vellum models may gain created_at / updated_at columns via the additive diff.
  4. For vellum_demo: bump to 0.3.2 and sync (migration 0_3_1_to_0_3_2 adds timestamp columns if needed).

Review _guarded / _fillable on custom Vellum models if you relied on implicit allow-all mass assignment before this release.


Full diff: v0.2.10…v0.3.0