2.55.0

2026-05-14

This version of Tamanu requires Chrome 147 or later.

Artifacts

central container oci://ghcr.io/beyondessential/tamanu-central:v2.55.0
central linux-amd64 https://servers.ops.tamanu.io/2.55.0/central-2.55.0-linux-amd64.tar.zst
Download
central windows-amd64 https://servers.ops.tamanu.io/2.55.0/central-2.55.0-windows.tar.zst
Download
dbt-manifest any https://docs.data.bes.au/tamanu/v2.55.0/manifest.json
Download
facility container oci://ghcr.io/beyondessential/tamanu-facility:v2.55.0
facility linux-amd64 https://servers.ops.tamanu.io/2.55.0/facility-2.55.0-linux-amd64.tar.zst
Download
facility windows-amd64 https://servers.ops.tamanu.io/2.55.0/facility-2.55.0-windows.tar.zst
Download
frontend any https://servers.ops.tamanu.io/2.55.0/web-2.55.0.tar.zst
Download
frontend container oci://ghcr.io/beyondessential/tamanu-frontend:v2.55.0
mobile android https://clients.ops.tamanu.io/2.55.0/android/tamanu/app-release.apk
patient-portal any https://servers.ops.tamanu.io/2.55.0/patient-portal-2.55.0.tar.zst
Download
patient-portal container oci://ghcr.io/beyondessential/tamanu-patient-portal:v2.55.0

Changelog

Bugfixes 🐛

  • SAST: COOL-58 sast vulnerabilities rate limit (#9614)
  • SAST: COOL-58: sast vulnerabilities sensitive cookie (#9615)
  • admin: NASS-1911: Manage reference data in admin panel (#9418)
  • admin: NASS-1911: Manage reference data in admin panel (#9418)
  • admin: NASS-1911: Manage reference data in admin panel (#9418)
  • admin: NASS-1911: Manage reference data in admin panel (#9418)
  • admin: NASS-1911: Manage reference data in admin panel (#9418)
  • adminPanel: Invalid date prop to TimeSlotPicker (#9534)
  • adminPanel: NASS-1912: nest ‘Location assignment’ under ‘Users’ (#9486)
  • adminPanel: Permissions table keyboard accessibility (#9540)
  • adminPanel: NASS-1898: manage program registries (#9517)
  • adminPanel: NASS-1898: manage program registries (#9517)
  • adminPanel: NASS-1898: manage program registries (#9517)
  • adminPanel: NASS-1898: manage program registries (#9517)
  • adminPanel: NASS-1898: manage program registries (#9517)
  • adminPanel: NASS-1898: manage program registries (#9517)
  • charting: Show permission denied message instead of misleading no-charts message (#9535)
  • ci: COOL-64: Improve CI momentarily (#9606)
  • ci: Increase timeout in database package tests (#9663)
  • dateTime: Hotfix 2.55: Date locale parse ordering (#9699)
  • deaths: Death certificate stuck in loading state when no villageId (#9592)
  • deaths: Death certificate stuck in loading state when no villageId (ad0c599e18)
  • deaths: Death certificate stuck in loading state when no villageId (#9590)
  • e2e: fix E2E (#9602)
  • e2e: Fix broken tokens in E2E (#9649)
  • fhir: COOL-63: De-prioritise FHIR jobs created during migrations (#9586)
  • importer: SAV-1137: Populate form responses with custom fields (#9382)
  • integration: SAV-1150: Update mSupply API (#9568)
  • integration: SAV-1150: Update mSupply API (#9568)
  • integrations: SAV-1150: Update config case (#9635)
  • invoices: TAM-6787: Default to current encounter for user (#9784)
  • invoicing: use invoice insurance plans in PDF header instead of legacy patient insurer (#9547)
  • invoicing: 2.54: keep policy number on invoice PDF when insurance plan selected (#9598)
  • invoicing: parse price list rules JSON on import (MAIN) (#9667)
  • invoicing: parse price list rules JSON on import (#9651)
  • labs: TAM-4043: UI tweaks (#9714)
  • labs: TAM-4043: Update date format (#9720)
  • mobile: 2.55 fix: vitals survey freezes (#9723)
  • mobile: fix 2.55: remove patient title from mobile model (#9744)
  • mobile: TAM-6743: Attach diagnosis to most recent encounter (#9773)
  • mobile: TAM-6785: Avoid remounting after first load (#9774)
  • notifications: TAM-4041: Use patient display ID instead of lab display ID (#9705)
  • permissions: TAM-6259: Add missed login permission check (#9703)
  • print: fix attendant field on FSM birth certificate and use enum translations (#9570)
  • print: TAM-6778: Add separator for multi select in form responses (#9759)
  • programRegistry: HOTFIX 2.46: prevent survey submission from overwriting registration date (#9556)
  • programRegistry: TAM-6777: Duplicate program registry conditions category history (#9758)
  • provisioning: Update provisioning data to work with default survey code (#9600)
  • provisioning: Revert duplicate codes in location provisioning (#9607)
  • referenceData: Fix maxFileSizeMB setting (#9496)
  • referenceData: Fix maxFileSizeMB setting (#9496)
  • release: Outstanding review hero items (#9812)
  • reports: NOTAM-566: always include :timezone in report query replacements (#9630)
  • reviewHero: Test coverage custom tamanu agents (#9587)
  • scheduling: Date picker bug in admin location assignments (hotfix 2.55) (#9762)
  • scheduling: Date picker bug in admin location assignments (655c67040b)
  • sync: TAMOC-410: Rebuild encounter_history in sync_lookup for change_type column (MAIN) (#9476)
  • sync: COOL-36: Prevent duplicate patient_ongoing_prescriptions when an encounter is discharged on facility and central (#9172)
  • sync: include prescriptions in sync when patient_ongoing_prescription tick changes (#9608)
  • sync: retain errored snapshot tables for 24h and batch-clean overnight (#9646)
  • sync: Suppress sequelize hooks when persisting sync data (hotfix 2.55) (#9721)
  • syntheticUsage: Fixed up errors when running synthetic usage (#9544)
  • uiComponents: Semantically associate <label> and <input> (#9364)
  • web: Icon button labelling (#9499)
  • web: Inconsistent brand colours (#9487)
  • web: Locale-aware number format in table paginator (#9525)
  • web: Back button labelling (#9456)
  • web: Erroneously forwarded transient <LoadingIndicator> props (#9561)
  • TAMOC-407: Drug suggester “all” route bug (#9345)- Bruno bootstrap serviceRequest filtering (#9679)- Date locale parse ordering (#9694)

Dependencies 📦

  • Update playwright (#9507)

Documentation 📚

  • llm: Endpoint test agent instructions (#9516)

Features ⭐

  • admin: NASS-1911: Manage reference data in admin panel (#9418)
  • admin: COOL-52: Admin impersonate role (#9202)
  • adminPanel: NASS-1898: manage program registries (#9517)
  • adminPanel: NASS-1898: migrate to MUI v7 Tabs and Tab (#9527)
  • adminPanel: NASS-1898: migrate to MUI v7 Tabs and Tab (#9527)
  • bruno: 1 click fhir endpoint testing (#9671)
  • db: COOL-57: replace migration chain with SQL baseline snapshot (#9572)
  • db: COOL-57: extend migration baseline snapshot to v2.41.5 (#9647)
  • email: 2.51: add SMTP and other nodemailer transport support (HOTFIX 2.55) (#9808)
  • email: 2.51: add SMTP and other nodemailer transport support (#9653)
  • fhir: NASS-1871: Allow SENAITE to create reflex tests via the FHIR API (hotfix 2.55) (#9757)
  • fhir: NASS-1871: Allow SENAITE to create reflex tests via the FHIR API (#9119)
  • fhir: TAM-6749: Allow SENAITE to specify the Lab Result method via the FHIR API (hotfix 2.55) (#9768)
  • fhir: NASS-1883: Allow SENAITE to specify a custom reference range for a lab test (hotfix 2.55) (#9781)
  • forms: SAV-1093: Interdependent program forms (#9436)
  • integrations: SAV-1136: Handle SOH with mSupply (#9455)
  • labs: NASS-1875: Lab result history (#8989)
  • migrations: COOL-60: Preserve information about migrations (#9634)
  • patientSearch: SAV-1138: Configurable additional search fields (#9532)
  • pharmacyOrders: TAM-6739: Add setting to control the default prescription type when sending an order to the pharmacy (hotfix 2.55) (#9765)
  • pharmacyOrders: TAM-6739: Add setting to control the default prescription type when sending an order to the pharmacy (#9726)
  • syntheticUsage: TAN-2608: Additional synthetic usage workflows (#9559)

Performance 🌊

  • mobile: Improve survey form performance on low-end devices (#9521)

Revert ⏪

  • db: COOL-57: replace migration chain with SQL baseline snapshot (#9572)
  • db: COOL-57: replace migration chain with SQL baseline snapshot (#9572)

Testing 🧪

  • db: COOL-57: replace migration chain with SQL baseline snapshot (#9572)
  • Update test timeout (#9599)- Update test timeout (#9593)- Update test timeout (#9593)

Tweaks ⚖️

  • E2E: Speed up vaccine E2E spec (#9648)
  • adminPanel: NASS-1912: nest ‘Location assignment’ under ‘Users’ (#9486)
  • bruno: TAN-2531: Add device id to bruno login payload (#9664)
  • e2e: Combine db setup for e2e shards (#9621)
  • playwright: Include visual debug data in failed tests report when running locally (#9645)
  • uiComponents: Don’t stringify primitive errors in forms (#9377)
  • Remove repetitive E2E tests already covered by endpoint tests (#9616)- Enforce E2E pass before merge (#9609)
Copied to clipboard!