Ferdinand Mütsch
a3acdc7041
fix: duration aggregation for heartbeats with identical timestamps ( resolve #340 )
2022-03-18 12:29:43 +01:00
Ferdinand Mütsch
e7e5254673
feat: ability to clear all user data ( resolve #339 )
2022-03-17 11:55:13 +01:00
Ferdinand Mütsch
647bf1781d
chore: apply filters in database query (see #335 )
2022-03-13 08:49:03 +01:00
Ferdinand Mütsch
965d8e22b3
chore: fix typo in error message
2022-03-06 11:52:03 +01:00
Soner Sayakci
ed6e51b4df
add error when no authentication is configured
2022-03-04 17:03:04 +01:00
Steven Tang
6d762f5fd6
ref: remove unnecessary unicode characters
2022-02-18 19:52:55 +11:00
Ferdinand Mütsch
e21788b8b5
chore: minor fixes
2022-02-13 11:03:10 +01:00
Steven Tang
e7f3432113
feat: GET /heartbeat endpoint ( resolves #241 )
2022-02-13 11:03:10 +01:00
Ferdinand Mütsch
7159df30c2
feat: allow to configure custom api url for relay and import ( resolve #105 )
2022-01-21 12:35:05 +01:00
Ferdinand Mütsch
67f0d19a65
fix: allow to create labels for aliased projects ( resolve #231 )
2022-01-13 17:10:24 +01:00
Ferdinand Mütsch
2bc53e6f11
feat: basic implementation of branch statistics
2022-01-02 13:39:20 +01:00
Ferdinand Mütsch
fd6c36832e
fix: critical infinite loop at the date of switch to daylight saving time
2022-01-02 13:17:30 +01:00
Ferdinand Mütsch
bf82935849
chore: add more filtering unit tests
2022-01-02 12:03:20 +01:00
Ferdinand Mütsch
d80c1a4c4b
feat: ability to filter by project labels
2022-01-02 12:03:20 +01:00
Ferdinand Mütsch
a279548c89
feat: comprehensive summary-level filtering ( resolve #262 )
2022-01-02 12:03:19 +01:00
Ferdinand Mütsch
8a3e6f0179
chore: more verbose logging with regard to reports
2022-01-02 12:02:17 +01:00
Ferdinand Mütsch
92f6d44606
feat: total heartbeats per summary ( resolve #283 )
2022-01-02 12:02:12 +01:00
Ferdinand Mütsch
ee501ca3c5
fix: mocks
2022-01-02 12:02:12 +01:00
Ferdinand Mütsch
148f581906
fix: properly sort durations to prevent heartbeats from being counted twice
2022-01-02 12:02:12 +01:00
Ferdinand Mütsch
0039f67a2f
fix: duration test
2022-01-02 12:02:12 +01:00
Ferdinand Mütsch
c8a07cee36
refactor: introduce concept of durations ( resolve #261 )
2022-01-02 12:02:11 +01:00
Ferdinand Mütsch
f363135261
chore: minor code changes
2022-01-02 11:06:00 +01:00
jabra98
c7e12ba3b5
fix: consider all Machine/UserAgent entries
2022-01-01 20:33:58 +01:00
Ferdinand Mütsch
adcd7b35ae
fix: adapt tests
2021-12-15 12:52:24 +01:00
Ferdinand Mütsch
7cae3c43d0
chore: enhanced caching for user entity sets ( resolve #264 )
2021-10-14 10:22:59 +02:00
Ferdinand Mütsch
2c7977cf63
chore: invert visualization of project labels ( resolve #263 )
2021-10-13 17:12:55 +02:00
Ferdinand Mütsch
30de96950b
chore: persist raw user agent value
2021-08-29 10:54:00 +02:00
Ferdinand Mütsch
87fadf46f7
chore: use partial includes in mail templates to avoid code duplication
2021-08-08 12:33:40 +02:00
Ferdinand Mütsch
2088987a0c
chore: implement diagnostics endpoint ( resolve #225 )
2021-08-07 10:16:50 +02:00
Ferdinand Mütsch
9e3203ac41
fix: tests
2021-08-07 00:12:45 +02:00
Ferdinand Mütsch
58719182c4
chore: notify users about failing wakatime connection
2021-08-06 23:28:03 +02:00
Ferdinand Mütsch
93bdb48d95
fix: resolve project labels before resolving aliases ( resolve #222 )
2021-08-06 17:08:11 +02:00
Ferdinand Mütsch
533b5d62fc
fix: speed up settings page ( resolve #226 )
2021-08-06 16:37:01 +02:00
Ferdinand Mütsch
0af5fab75f
refactor: resolve project labels at runtime ( resolve #227 )
2021-08-06 16:36:56 +02:00
Ferdinand Mütsch
48513b660d
chore: configurable count cache ttl
2021-06-27 12:08:11 +02:00
Ferdinand Mütsch
181aefa2f9
chore: further optimizations and caching to speed up metrics endpoint ( resolve #215 )
2021-06-27 11:33:14 +02:00
Ferdinand Mütsch
5e96e2a601
chore: cache active users with hourly precision
2021-06-26 12:42:51 +02:00
Ferdinand Mütsch
466f2e1786
fix: summary caching ( resolve #211 )
2021-06-19 12:47:35 +02:00
Ferdinand Mütsch
650fffa344
fix: exclude zero entries again
2021-06-12 12:06:24 +02:00
Ferdinand Mütsch
561198b203
chore: minor ui improvements
2021-06-12 12:01:20 +02:00
Ferdinand Mütsch
7bcd6890d1
chore: adapt tests and bump version
2021-06-12 11:26:15 +02:00
Ferdinand Mütsch
1e4e530c21
chore: adapt tests
2021-06-12 11:09:24 +02:00
Ferdinand Mütsch
490cca05eb
feat: ui for managing project labels
2021-06-12 10:44:19 +02:00
Ferdinand Mütsch
3780ae4255
fix: invalidate user summary cache ( fix #209 )
2021-06-12 10:43:56 +02:00
Ferdinand Mütsch
0d64858721
feat: implement project labels ( resolve #204 )
2021-06-11 20:59:34 +02:00
Ferdinand Mütsch
9dbc2039fc
chore: add random time offset to scheduled reports jobs
2021-05-04 21:04:11 +02:00
Ferdinand Mütsch
cf3d293688
feat: implement wakatime projects endpoint ( resolve #196 )
2021-05-01 13:52:03 +02:00
Ferdinand Mütsch
0673c26043
fix: attempt to fix race condition when counting
2021-04-30 17:19:17 +02:00
Ferdinand Mütsch
cf14fc46ef
chore: less verbose logging
2021-04-30 16:22:28 +02:00
Ferdinand Mütsch
ef9303e61e
feat: settings dialog for mail reports
2021-04-30 16:20:24 +02:00
Ferdinand Mütsch
a4e7158db2
refactor: mail service abstraction layer
2021-04-30 15:17:07 +02:00
Ferdinand Mütsch
29c04c3ac5
feat: email reports ( resolve #124 )
2021-04-30 14:07:14 +02:00
Ferdinand Mütsch
1beca82875
feat: implement wakatime users endpoint ( resolve #193 )
2021-04-30 10:13:32 +02:00
Ferdinand Mütsch
75e61c0dc3
chore: guess user timezone on signup
2021-04-25 20:02:45 +02:00
Ferdinand Mütsch
8b9a9a1a42
fix: merge summaries by unique from date only
2021-04-19 21:14:35 +02:00
Ferdinand Mütsch
1a10a4fb21
fix: prevent duplicate summaries from being counted twice ( resolve #179 )
2021-04-19 20:48:07 +02:00
Ferdinand Mütsch
0e3ce1e9e4
fix: lock aggregation jobs to one at a time on a per-user basis ( resolve #180 )
2021-04-19 20:36:37 +02:00
Ferdinand Mütsch
dca736752e
refactor: logging ( resolve #169 )
2021-04-16 16:02:55 +02:00
Ferdinand Mütsch
9fd9ffbb3d
fix: missing summary aggregation after days without heartbeats (see #168 )
2021-04-12 23:36:22 +02:00
Ferdinand Mütsch
915436822b
fix: make mail provider configs non-nullable
2021-04-12 22:57:52 +02:00
Ferdinand Mütsch
0f1d1bce4d
fix: summary missing interval calculation ( fix #168 )
2021-04-12 22:57:15 +02:00
Steven Tang
6256c8e10a
ref: embed files, bump to go 1.16 ( #167 )
...
* ref: embed portion of files
* fix: readd pkger
* ref: embed version.txt
* fix: wrong mail template import path
* refactor: get rid of sql-migrate
refactor: get rid of pkger in favor of go embed (resolve #164 )
* chore: remove unused var [ci-skip]
Co-authored-by: Ferdinand Mütsch <ferdinand@muetsch.io>
2021-04-11 10:42:43 +00:00
Ferdinand Mütsch
2a9fbfdfd7
chore: send notification on successful import
2021-04-10 10:48:06 +02:00
Ferdinand Mütsch
56247b4e1e
fix: throttle wakatime api requests (attempt to fix #152 )
2021-04-10 10:18:09 +02:00
Ferdinand Mütsch
4706809170
feat: smtp mail provider implementation
2021-04-10 00:07:13 +02:00
Ferdinand Mütsch
6ad33e3c3b
feat: password resets ( resolve #133 )
2021-04-05 22:57:57 +02:00
Ferdinand Mütsch
e6e134678a
wip: password resets
2021-04-05 16:25:13 +02:00
Ferdinand Mütsch
7f3a654b26
fix: import bug with small number of heartbeats ( fix #160 )
2021-04-04 09:45:32 +02:00
Ferdinand Mütsch
81ca703501
fix: disable recompute caching ( resolve #149 )
2021-03-24 23:31:04 +01:00
Ferdinand Mütsch
292ae41c58
fix: batch insert conflict bug ( resolve #139 )
2021-03-05 21:39:21 +01:00
Ferdinand Mütsch
017530ac4a
chore: introduce user email addresses ( resolve #132 )
2021-02-21 13:02:11 +01:00
Ferdinand Mütsch
daf67b844a
refctor: change active users query
2021-02-13 11:23:58 +01:00
Ferdinand Mütsch
301cab4be4
feat: per-user heartbeats count metrics
2021-02-12 23:06:48 +01:00
Ferdinand Mütsch
703805412b
chore: code smell [ci skip]
2021-02-12 19:26:23 +01:00
Ferdinand Mütsch
88eb68b1a9
feat: add prometheus metrics without external standalone exporter
2021-02-12 18:50:13 +01:00
Ferdinand Mütsch
8191a52ce1
chore: make very first user have admin privileges
2021-02-12 18:49:47 +01:00
Ferdinand Mütsch
e4c413a33c
fix: include machine names when importing wakatime data
2021-02-10 22:08:00 +01:00
Ferdinand Mütsch
fca12f522f
feat: option to publicly share stats data ( resolve #36 )
2021-02-06 23:02:35 +01:00
Ferdinand Mütsch
161e375f74
chore: optimize import date range
2021-02-06 23:02:35 +01:00
Ferdinand Mütsch
fd9e2acdf1
feat: wakatime data import ( resolve #87 )
2021-02-06 23:02:35 +01:00
Ferdinand Mütsch
8bed266110
feat: account deletion ( #99 )
2021-02-02 22:54:22 +01:00
Ferdinand Mütsch
1dc5be4784
fix: selective summary generation
2021-02-02 22:49:29 +01:00
Ferdinand Mütsch
617d9ad7e4
refactor: include logging framework ( resolve #92 )
2021-01-30 11:17:37 +01:00
Ferdinand Mütsch
a552073d18
feat: ui for configuring wakatime integration
2021-01-21 23:26:50 +01:00
Ferdinand Mütsch
de0401d4bb
fix: move caching out of authentication middleware
2021-01-21 23:19:17 +01:00
Ferdinand Mütsch
d57c02af7c
feat: add ui for managing aliases ( resolve #91 )
2021-01-21 00:26:52 +01:00
Ferdinand Mütsch
cd97976ed5
chore: show total hours on index page ( resolve #88 )
2021-01-17 09:32:08 +01:00
Ferdinand Mütsch
98b62b33c8
fix: concurrent access to language mappings ( resolve #83 )
2021-01-07 10:56:00 +01:00
Ferdinand Mütsch
e8067bb13e
fix: crash when running aggregation job on schedule ( fix #78 )
...
chore: move from gocron to its maintained fork
2020-12-11 10:05:17 +01:00
Ferdinand Mütsch
4a78f66778
chore: set samesite attributes and configurable max age for cookies ( resolve #75 )
...
fix: sort entities by total time descending (resolve #74 )
2020-11-21 22:30:56 +01:00
Ferdinand Mütsch
f4328c452f
test: add essential unit tests for core functionality ( resolve #6 )
2020-11-14 12:30:45 +01:00
Ferdinand Mütsch
ad8168801c
test: add first few unit tests
2020-11-08 12:46:12 +01:00
Ferdinand Mütsch
35cdc7b485
refactor: define interface types for all services and repositories
2020-11-08 10:12:49 +01:00
Ferdinand Mütsch
7befb82814
chore: remove clean up related parameters
2020-11-07 12:34:17 +01:00
Ferdinand Mütsch
2f12d8efde
refactor: simplify summary generation ( resolve #68 )
2020-11-07 12:01:35 +01:00
Ferdinand Mütsch
e269b37b0e
feat: add ability to regenerate summaries
...
fix: database cascade settings
chore: debug log mode for gorm queries is back
2020-11-06 17:09:41 +01:00
Ferdinand Mütsch
e6a04cc76d
chore: remove cleanup functionality
...
chore: minor code changes
2020-11-06 14:07:07 +01:00
Ferdinand Mütsch
8efc3854ab
refactor: migrate to latest gorm version
...
refactor: language mappings implementation
2020-11-01 20:14:10 +01:00
Ferdinand Mütsch
755cabb5f4
refactor: introduce repositories as an additional layer of abstraction to allow for better testability
2020-11-01 16:56:36 +01:00
Ferdinand Mütsch
96ff490d8d
fix: crash when calling badge endpoint with no filters applied ( resolve #66 )
2020-11-01 16:04:30 +01:00