What's Changed
Breaking changes ⚠️
- (BREAKING) Drop IMO and don't load arbitrary content in production mode by @ibacher in #1743
- (BREAKING) O3-5645: Prevent open redirect via unvalidated returnToUrl by @omeriinnocent in #1763
Features 🆕
- (feat) O3-5206: Migrate to using RSpack everywhere by @ibacher in #1417
- (feat) O3-5409: Add carbon table's batch action translation string to coreTranslations by @abheeee03 in #1584
- (feat) O3-5181: Allow creation of global stores backed by sessionStorage by @chibongho in #1490
- (feat) Add some additional age and duration helpers by @ibacher in #1680
- (feat) Switch to using the type declarations for framework types by @ibacher in #1679
- (feat) O3-5440: Provide a way to redirect to custom URL on login and logout by @chibongho in #1657
- (feat) O3-5460: Add TableBatchActions to Mock Tests by @abheeee03 in #1699
- (feat) Upgrade the CLI and add comprehensive tests by @ibacher in #1735
- (feat) Add support to invoke develop with package name by @ibacher in #1750
- (feat) Add matchLocale framework function by @ibacher in #1771
- (feat) O3-5027: Make login page configurable by @UjjawalPrabhat in #1762
- (feat) Prevent the shared SWR cache being torn down when a decorated component unmounts by @denniskigen in #1793
Bug Fixes 🐛
- (fix) Downgrade invalid workspace context key error to a warning by @denniskigen in #1649
- (fix) Framework and Styleguide should build as standard libraries by @ibacher in #1643
- (fix) Remove manual inert prop handling from LeftNavMenu by @denniskigen in #1660
- (fix) Reduce the size of the app shell by @ibacher in #1658
- (fix) Start shell dev server after other dev servers start by @ibacher in #1662
- (fix) Restore Jest mocks for usePagination and usePaginationInfo by @ibacher in #1670
- (fix) RxJS imports need to be fully resolved by @ibacher in #1669
- (fix) Don't reset devServer's static path by @ibacher in #1672
- (fix) Primary identifier shouldn't be truncated due to Tag constraints by @vasharma05 in #1671
- (fix) Restore static path and fix port binding check by @ibacher in #1674
- (fix) Update NumericObservation cell styling and add mock by @NethmiRodrigo in #1703
- (fix) Handle zero values correctly in NumericObservation by @denniskigen in #1712
- (fix) Skip useConceptReferenceRange when interpretation is provided by @NethmiRodrigo in #1713
- (fix) Produce new object reference when re-launching an already-open workspace by @denniskigen in #1714
- (fix) Fix GeoPattern background not filling patient avatar on some devices by @denniskigen in #1721
- (fix) O3-5581: Fix base URL of compiled resources from yarn serve by @chibongho in #1726
- (fix) Updates to openmrs CLI by @ibacher in #1729
- (fix) Allow translation overrides when locale doesn't exist by @vasharma05 in #1728
- (fix) Harden logout E2E test against user menu race by @denniskigen in #1737
- (fix) Small optimization to runtime SVG loading by @ibacher in #1742
- (fix) Avoid stray vertical line in OpenmrsDateRangePicker inputs by @denniskigen in #1753
- (fix) O3-4020: Return current app context value synchronously on first render by @praneeth622 in #1751
- (fix) O3-4924: Align expand animation and size prop with Carbon design system by @RajPrakash681 in #1758
- (fix) O3-5651: Update the procedure order icon by @dilankavishka in #1773
- (fix) Restore lg height for Search component by @denniskigen in #1778
- (fix) Add esm-patient-task-list-app to the e2e Docker environment by @denniskigen in #1779
- (fix) Restore pagination container text left padding by @denniskigen in #1783
- (fix) Remove doubled heading padding in EmptyCard and ErrorState by @denniskigen in #1790
- (fix) Render UI Editor extension overlays and stop leaking overlay containers by @denniskigen in #1784
- (fix) O3-5646: Remove extra padding from NumericObs cell variant in tablet mode by @solomonfortune in #1769
- (fix) Add install-script to bundle-size workflow by @NethmiRodrigo in #1791
- (fix) O3-5588: Correctly apply Login Location tag filter in useLocationCount by @sudeshkar in #1734
Housekeeping 🧹
- (chore) Improve consistency of actionable notification label by @ImZb22 in #1650
- (chore) Add Storybook for the Styleguide by @ibacher in #1641
- (chore) Fix react-utils mock to not import from ./src/index by @ibacher in #1656
- (chore) Update E2E workflow actions and Node.js version by @denniskigen in #1668
- (chore) Add PR title check workflow by @denniskigen in #1665
- (chore) Add PR description check workflow by @NethmiRodrigo in #1701
- (chore) Pin axios to 1.13.4 to avoid compromised versions by @olewandowski1 in #1722
- (chore) O3-5449: Register chart line icon by @dilankavishka in #1732
- (chore) CI updates to cancel in progress runs by @ibacher in #1744
- (chore) Add a semi-automated documentation workflow by @ibacher in #1770
- (chore) Workspace2 is not longer experimental; deprecate currentVisit by @chibongho in #1781
Tests 🧪
- (test) O3-5457: Add comprehensive tests for useLayoutType hook by @sohamdhande in #1638
- (test) Add regression tests for 401 Location-header redirect in openmrsFetch by @AshThe25 in #1754
New Contributors
- @ImZb22 made their first contribution in #1650
- @dilankavishka made their first contribution in #1732
- @praneeth622 made their first contribution in #1751
- @AshThe25 made their first contribution in #1754
- @solomonfortune made their first contribution in #1769
- @sudeshkar made their first contribution in #1734
- @omeriinnocent made their first contribution in #1763
Full Changelog: v9.0.2...v10.0.0