Commit Graph
6668 Commits
Author SHA1 Message Date
Mike Cao 25d6c14f5a Enable Next.js TypeScript CLI and prune unused dependencies 2026-07-28 21:56:58 -07:00
Mike Cao ed39aa1942 Upgrade Prisma, jsdom, and jest-dom dependencies 2026-07-28 21:36:55 -07:00
Mike Cao 3ad1e3ee9a Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-07-28 20:57:18 -07:00
Mike Cao ac446b9b00 Upgrade app dependencies and lockfile 2026-07-28 20:57:04 -07:00
Mike Cao f84635b7a5 Merge pull request #4408 from maxiride/feature/bounce-calculation-v3
Feat: Improve bounce calculations with configurable threshold v3
2026-07-28 20:55:12 -07:00
Mike Cao 59aa5f22eb Merge pull request #4413 from sushant-kataria/fix/dashboard-edit-label
fix(dashboard): use Edit label to match empty-state copy
2026-07-28 17:03:19 -07:00
Mike Cao 1fcbf67af6 Merge branch 'dev' into fix/dashboard-edit-label 2026-07-28 17:03:03 -07:00
Mike Cao b5d27620e7 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-07-28 14:07:19 -07:00
Mike Cao adba113b04 Load subscription data from API before rendering replay and heatmap views 2026-07-28 14:07:09 -07:00
Sushant Kataria c9122c0bec fix(dashboard): use Edit label to match empty-state copy
Empty dashboard message tells users to click Edit, but the header
button was hardcoded as Design. Use t(labels.edit) so the control
matches the i18n empty-state string.

Fixes #4398
2026-07-28 09:43:09 -04:00
Mike Cao 00faf04d5c Merge pull request #4356 from Niki2k1/runtime-allowed-frame-urls
Resolve ALLOWED_FRAME_URLS from the runtime environment in Docker
2026-07-27 21:05:12 -07:00
Mike Cao 385088d53a Tighten navigation section header spacing 2026-07-27 16:02:27 -07:00
Francis Cao 3136e3590a Revert "Move timezone selection to query parameters"
This reverts commit 4d7930060c.
2026-07-27 10:32:28 -07:00
Mike Cao 4d7930060c Move timezone selection to query parameters 2026-07-27 02:24:59 -07:00
Federico D'Eredità 92e9b276d2 fix(queries): count custom events correctly on the hourly rollup, trying to address greptile findings
`website_event_stats_hourly` sets `views` to
`sumIf(1, event_type NOT IN (2, 5))`, so `views` is 0 on custom event
rows and the `events_count` join was summing zeroes. Switched it to
`sum(length(event_name))`, which is how `getWebsiteSessionStats`
already counts custom events on that table.

Also dropped the `getEventExpandedMetrics` change from the previous
commit. That report is filtered to custom events, so every visit it
lists has already fired at least one, and its `bounces` column counts
visits where the event fired exactly once rather than visits with a
single pageview. The threshold rule does not apply there, so the query
is left untouched.
2026-07-26 18:49:59 +02:00
Federico D'Eredità 82a5a12208 refactor(constants): simplify BOUNCE_THRESHOLD parsing
`parseInt(undefined, 10)` returns NaN and the `|| 1` fallback already
covers it, so the `|| '1'` default was redundant.
2026-07-26 18:49:59 +02:00
Federico D'Eredità cb035fdc1a feat(queries): add BOUNCE_THRESHOLD and enhance bounce calculation logic
Updated bounce calculations to account for visits with custom events
(`EVENT_TYPE.customEvent`). A visit counts as a bounce only when its
custom event count is below `BOUNCE_THRESHOLD`, so engaged single
pageview visits are no longer misreported.

Since #3614 was opened v3 moved `getInsights` into `getBreakdown` and
copied the old formula into the channel, pageview and session
breakdowns, so those are updated too.
2026-07-26 18:49:59 +02:00
Federico D'Eredità 19fcde2c9c refactor(queries): replace hardcoded event types with constants
Replaced hardcoded `event_type` values with named constants from
`EVENT_TYPE`, as in #3614. Added the `BOUNCE_THRESHOLD` constant and
documented it in `docker-compose.yml`.
2026-07-26 18:49:58 +02:00
Mike Cao 9b41053d47 Merge pull request #4312 from mamal72/fix/improve-ir-fa-support
Add IRR currency and improve Persian (fa-IR) support
2026-07-25 10:43:02 -07:00
Mike Cao fb56a8f922 Merge branch 'dev' into fix/improve-ir-fa-support 2026-07-25 10:42:33 -07:00
Mike Cao 7bbf3f8ff6 Merge pull request #4302 from m0sth8/manifest-crossorigin-use-credentials
Send credentials when fetching the web app manifest (crossorigin="use-credentials")
2026-07-24 21:27:12 -07:00
Mike Cao 0714ebdbe3 Merge pull request #4397 from Sagittarius/codex/clickhouse-22-date-format
fix: support ClickHouse 22 date formats
2026-07-24 21:26:39 -07:00
Mike Cao 08030db836 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-07-24 18:49:23 -07:00
Mike Cao dab6180056 Escape channel metrics literals and bypass website transfer lookup for admins 2026-07-24 18:49:02 -07:00
Francis Cao 44eb78f553 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-07-24 15:47:05 -07:00
Francis Cao f9850f02b3 add session delete feature to relational only. add test, share conditions, and permissions. Closes #2940 2026-07-24 15:47:01 -07:00
Mike Cao 8148d775b0 Add coverage for send route and core permission and query logic 2026-07-24 15:27:17 -07:00
Mike Cao 3a8f268d21 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-07-24 14:37:09 -07:00
Mike Cao 0b31d3a274 Mark Hebrew locale as RTL 2026-07-24 14:36:54 -07:00
Francis Cao 0dcba7d388 sync translations for 2FA and misc messages/labels 2026-07-24 14:25:31 -07:00
Mike Cao 65e810ec79 Add coverage for core utility behavior 2026-07-24 13:52:37 -07:00
Francis Cao ba741eb617 clean message order and remove extra keys 2026-07-24 11:17:09 -07:00
Francis Cao 3b4d5b9575 2FA reset feature 2026-07-24 10:46:19 -07:00
Francis Cao 896d63df94 add new test files and fix migration 2026-07-24 08:45:17 -07:00
Mike Cao b70eda56e6 Merge pull request #4394 from luca-seemann/fix/client-ip-header-xff-chain
Fix client IP resolution when CLIENT_IP_HEADER is set to x-forwarded-for
2026-07-23 15:27:51 -07:00
Mike Cao c573a2bdb3 Merge pull request #4374 from brantsrasmus/fix/session-modal-dismiss-outside-click
fix: dismiss session modals when clicking the side margins
2026-07-23 14:59:38 -07:00
Mike Cao 5188b18cc4 Merge pull request #4392 from imparpaulo01/i18n/pt-pt-missing-strings
i18n: add missing pt-PT (European Portuguese) strings
2026-07-23 14:58:50 -07:00
Mike Cao 33ac648d1f Merge pull request #4402 from sarmah-rup/fix/format-long-number-billions
fix: formatLongNumber shows billions ~1000x too large on metric tiles
2026-07-23 14:21:08 -07:00
Francis Cao ed2c0804ae Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-07-23 12:46:57 -07:00
Francis Cao 32170eed00 2FA migration and schema clean-up 2026-07-23 12:46:55 -07:00
Mike Cao 8187bb3336 Update lockfile for auth and test dependency upgrades 2026-07-23 12:06:41 -07:00
Francis Cao 13d18c0880 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-07-23 11:50:39 -07:00
Francis Cao d05d9c4f34 Session and event property filtering. Closes #2945. Closes #4008. 2026-07-23 11:50:35 -07:00
Mike Cao 36bd9d33b8 Merge pull request #4205 from boutterudy/feat-2FA
feat(login): add 2FA
2026-07-23 11:45:20 -07:00
Mike Cao aafe068bc1 Merge branch 'dev' into feat-2FA 2026-07-23 11:14:59 -07:00
Francis Cao 78346795eb Fix revenue query filtering. Closes #4286 2026-07-23 09:41:59 -07:00
Francis Cao 934c028a53 Merge pull request #4387 from rogerhmar/security/trivy-cve-patches
fix(docker): drop bundled npm from runtime image to clear base-image CVEs
2026-07-22 13:26:56 -07:00
Francis Cao 21fe2d8e75 Merge branch 'dev' into security/trivy-cve-patches 2026-07-22 13:12:25 -07:00
Francis Cao 03ef78724b add design translations. Fix empty-dashboard message. Closes #4398 2026-07-22 12:56:11 -07:00
Francis Cao 11e57d726a fix missing extension. Closes #4400 2026-07-22 12:35:38 -07:00