Skip to main content

January 2025 Release Notes

January 1st Release Overview (v3.10.0)

This release focuses on making day‑to‑day operations faster, clearer, and more reliable—especially around payments, routing, and deliveries—while laying important groundwork behind the scenes. On the web side, teams will notice a smoother payment experience, more powerful map and routing tools, and a more polished, responsive interface across driver workflows, invoicing, and settings. Behind these improvements is a broad modernization effort, including core framework upgrades and targeted refactors that improve performance, stability, and long‑term maintainability.

For customers and operators, the biggest wins are in how work gets done. Payment setup and checkout flows are now more flexible and easier to manage, routing and map interactions are significantly more intuitive (with tools like route reuse, lasso selection, and drag‑and‑drop), and delivery and inventory tracking has been tightened to better reflect what happens in the field. Invoicing, ledger views, and analytics have also been refined to provide clearer insight with fewer edge cases, reducing manual follow‑ups and confusion.

On the backend, this release strengthens the platform’s foundation. New authentication and accounting capabilities, improved payment gateway handling, and dedicated search infrastructure improve reliability today while enabling future features. Several internal models, exports, and calculations were refined to ensure consistency across the system, with added safeguards and test coverage to reduce regressions. While most of these changes are invisible to end users, they directly support a more dependable, scalable experience as the platform continues to grow.

Overall, this release balances visible usability improvements with essential infrastructure upgrades—delivering immediate quality‑of‑life gains now, and a stronger, more adaptable system for what comes next.

Web Overview

This Cycle was spent delivering payment‑gateway streamlining, major routing/map and deliveries enhancements (route reuse, lasso tool, drag‑and‑drop, inventory tracking), and several UX/bug fixes. Core stack and infra were updated (Angular 21, Docker/CI tweaks, testing migration), with focused refactors for ledger, maps, and payment settings.

Changes by Category

  • Payments & Gateways

    • Features: Qualpay + NMI adapter support; updated add‑card gateway selection; payment gateway settings UI/layout updates.
    • Bug fixes: fixed gateway URLs; removed hard‑coded gateway; opened Qualpay flow; spinner/class styling tweaks.
    • Refactor: payment gateway settings streamlined in settings UI.
    • Important: payment selection/flow changed — validate card add / checkout flows.
  • Deliveries & Driver tools (pickups, purges, inventory)

    • Features: makeDelivery implemented for inventory tracking (driver list & deliveries); purge/pickup dialogs improved; saving of shorts/cans/additives re‑added; delivery drag‑and‑drop.
    • Bug fixes: load/state fixes, remaining deliveries bug, coversheet fuel ID fix, pickup/purge error messaging and capacity display.
    • Improvements: driver report and pickup/purge UX polish.
  • Routing, Map & Sidebar

    • Features: lasso tool; search caching and route‑reuse strategy; vehicle compatibility checks for routes; always show deliveries on hold.
    • Bug fixes: truck‑selection inconsistency; routing warnings and confirm‑delivery message fixes; short‑delivery override handling.
    • Refactor/UX: sidebar layout/styling updates and map control relocation; route optimizer fixes.
  • Invoicing & Ledger

    • Features: controls to change assigned customer on unchecked invoices before posting.
    • Bug fixes: invoice link handling; posting progress logging for service bills.
    • Refactor: ledger & invoices migrated to ISO date format.
    • Important: ISO date change may impact exports/integrations — test downstream systems.
  • Pricing & Transitions

    • Features: wholesale/commercial margins added to price charts.
    • Bug fixes: rendering issues, debounce on notes, save notification.
    • Refactor: modernized transition adjustment dialog.
  • Subscriptions & Dashboard

    • Improvements: subscription‑template association, sortable subscriptions, dashboard subscription updates.
    • Bug fixes: date type cleanup in edit subscription dialog.
  • Delivery History, Analytics & Degree‑day / Zones

    • Features: delivery history UI overhaul and new analytics components; zone management status + activate/deactivate controls; expandable degree‑day details.
    • Improvements: refined degree‑day calculations; delivery history best practices migration.
    • Bug fixes: delivery history display fixes.
  • Settings, Containers & Branding, Vehicle Management

    • Features: container management in settings (create/name containers); branding management refactor to handle oil/tank assets.
    • Bug fixes: settings payload type check; vehicle management post‑rebase fixes.
  • Google Maps & Tests

    • Refactor: Google Maps switched to lazy loading; infobox.js removed in favor of components; map components updated to new system.
    • Testing: migrated toward Vitest & Playwright and added tests.
    • Important: map API & test framework changes require CI/dev environment updates.
  • CI/CD, Docker & Releases

    • Improvements: standardized Dockerfile; CI updates (.gitlab‑ci); release tooling (tag script); package/pnpm lock cleanup.
    • Chore: dependency cleanup and Angular 21 upgrade; SDK/model updates.
    • Important: Angular 21 upgrade requires dependency validation and regression testing.
  • UI / UX & Misc fixes

    • Bug fixes: texting reactivity, label display, sidebar scrolling, chips, menus z‑index, spinner class consistency.
    • Documentation: payment README updates; new instruction/agent docs added in routing refactor.

Metrics

  • Total commits: 102
  • Date range: 2025-12-03 → 2026-01-02

Backend API

This sprint delivered core auth and accounting infrastructure (OAuth token support, General Ledger work), a dedicated search/index table, and new fuel‑assistance models while stabilizing tests and fixing multiple billing, routing and PDF issues. Several DB migrations and mapping refactors were introduced that require coordinated deployment.

Changes by Category

  • Authentication & OAuth

    • Features
      • Added OAuth factory, token models and gateway support; auth token factory now handles distribution tokens.
      • New oauth2 service and route/handler scaffolding (WIP).
      • Expanded auth scopes to include Driver and SuperAdmin.
    • Bug fixes / Improvements
      • Branding default scopes corrected.
    • Refactoring / Docs
      • Related migrations and docs added for OAuth flows.
  • Accounting & General ledger

    • Features
      • Added/updated ledger export handlers and frontend mapping notes; new migrations for accounting gateways and ledger‑card exports.
    • Refactoring
      • Sage mapping refactor: map around accounts/journals pulled from the endpoint (changes export mapping).
    • Improvements
      • Accounting bill‑type and ledger mapping updates.
  • Billing, Invoicing & Payments

    • Features / Improvements
      • Automatic emailing attached to service‑plan invoices where applicable.
      • Fuel assistance: vendor and backend models/effects added.
    • Bug fixes
      • Pending funds table name corrected in invoice handler.
      • NMI gateway: card expiry normalization (pads to 4 digits) and updated gateway tests.
      • Various invoice/test fixes and template updates.
  • Payment Gateways & Adapters

    • Features / Tests
      • NMI and Kozy Payments adapter test updates to cover more situations.
    • Bug fixes
      • Expiry date normalization in NMI adapter to handle formats like 5300530.
  • Fuel, Deliveries & Routing

    • Features
      • Fuel assistance backend models added.
      • Pickup logic updated to allow source containers other than terminals.
    • Bug fixes / Improvements
      • Load optimizer now clears previous orders before building a route.
      • Fuel loads and fuel invoice test fixes; degree‑day calculations improved.
  • Search, Data & Migrations

    • Features
      • Created dedicated search table and indexes for cached search (migration added).
    • Refactoring / Improvements
      • Migrations refactored to use bulk updates for performance.
    • Bug fixes
      • dataChangeLog: removed customerId requirement and updated foreign key constraints (schema change).
  • Utilities, Codegen & Refactors

    • Refactoring
      • round utility refactored to accept options.
      • Enum generator adopted globally.
      • Validator fixes (UUID validation for exchange).
    • Bug fixes
      • logRequest updated to use server.log.
  • PDF, Coversheets & Docs

    • Bug fixes
      • PDF generation mocks fixed to return valid PDFs for tests.
      • Coversheet generation fixed for no‑terminal cases.
    • Documentation / Chores
      • API Developer.agent.md updates; simple browser removed.
      • .gitignore and build typing fixes.
  • Tests, CI & Linting

    • Improvements / Fixes
      • Multiple test stabilizations and mock fixes (PDFs, fuel, invoices, subscription template).
      • ESLint test config fixed.

Breaking changes / Important updates

  • Several DB migrations added/modified (search table, fuel assistance, OAuth tokens/gateways, accounting gateway exports, dataChangeLog) — DB migration and monitoring is required for all upgrades
  • Sage accounting mapping refactor may change exported ledger mappings; integrations should be validated.
  • Post‑invoice automatic emailing behavior changed for service plans — review notification flow.
  • Auth scope changes (Driver, SuperAdmin) may affect permission matrices.