Skip to content

v16.1.0 — Stable v16 Migration Release

Choose a tag to compare

@JeansReal JeansReal released this 08 May 16:10
· 58 commits to develop since this release

This release marks the stable migration of Cargo Management from ERPNext/Frappe v15 to the v16

The main focus of this version is compatibility with Frappe Framework v16, cleanup of legacy v15 UI behavior, workspace/sidebar updates, carrier management improvements, translation updates, and code compliance adjustments for the new app structure

Major Changes

  • Updated project configuration for the v16 app structure, including pyproject.toml, linting configuration, pre-commit hooks, and formatting rules.
  • Updated hooks and migration patch structure for the v16 layout, including clearer pre/post model sync sections
  • DocType Fields migrated, references of Package to Parcel

Workspace and UI Updates

  • Removed legacy v15 sidebar-hiding behavior.
  • Updated workspaces for Parcels, Sea Parcels, Air Parcels, Warehouse Operations, Shipments, Issues, and Tasks.
  • Added the new v16-compatible Desktop Icon and Workspace Sidebar structure for Parcels.
  • Improved the Parcel search popup so dialog size is selected dynamically based on the number of fields

Carrier Management Refactor

  • Added a more “Frappe-native” carrier model using DocTypes instead of relying only on static JSON.
  • Added the Carrier DocType and the child table Carrier Tracking URL.
  • Added support for 17Track, AfterShip, and EasyPost as tracking API options.
  • Added regex validation on the Carrier DocType to prevent invalid carrier detection patterns from being saved.
  • Added the new Cargo Core module to that will have logistics engines.
  • Published carrier fixtures and carrier detection patterns.

Bootinfo and Frontend Cleanup

  • Moved carrier-related data toward bootinfo-based loading instead of relying on carriers.json.
  • Removed old JavaScript logic that loaded carrier settings from the static carrier JSON file.
  • Refactored carrier frontend behavior to better match the new DocType-based carrier architecture

Dependencies and Tooling

  • Pinned easypost to 10.3

Translations

  • Updated POT and Spanish PO translation files for v16
  • Added ignore_translatable_strings_from structure in hooks, intended to avoid pulling unnecessary translatable strings from frappe, erpnext, and hrms

Important Notes / Breaking Changes
This release should be treated as a major platform migration, not a small patch

  • requires-python = ">=3.14"
  • Carrier configuration has moved toward DocType/fixtures-based management
  • Workspace and sidebar fixtures changed significantly for v16
  • Migration of Historic field package to parcel
  • Refactor of the Whole Warehouse Receipt Doctype