Commit graph

337 commits

Author SHA1 Message Date
André Medeiros
b1f266bf91 migrate out of logrus (#76) 2022-05-23 14:17:25 -04:00
Andre Medeiros
ccba530255 fix tests 2022-05-23 11:51:22 -04:00
Andre Medeiros
ef3f3ff18b fix error handling on postgres repositories 2022-05-23 11:49:48 -04:00
Andre Medeiros
c35ec006f1 simplify reddit error handling 2022-05-23 11:33:15 -04:00
Andre Medeiros
6f8f93f3ab reduce account updates by half 2022-05-22 19:57:29 -04:00
Andre Medeiros
b92e3fc374 tweak scheduler 2022-05-22 19:35:03 -04:00
Andre Medeiros
fc94bef379 optimize queries 2022-05-21 17:15:24 -04:00
Andre Medeiros
413b46631c chill with the poll 2022-05-21 13:17:04 -04:00
Andre Medeiros
09d5457436 fix migrations 2022-05-21 13:08:30 -04:00
Andre Medeiros
f6f13bbd2f Allow editing watcher subreddits too 2022-05-21 10:26:23 -04:00
Andre Medeiros
0afa10d64d HTTP code updates 2022-05-21 10:00:21 -04:00
Andre Medeiros
17a37a3b01 Fix test notification 2022-05-21 09:46:12 -04:00
Andre Medeiros
adbaeb9e54 Tweak stuck notifications a bit mroe 2022-05-19 13:02:16 -04:00
Andre Medeiros
af592c446f Fix watcher list endpoint 2022-05-19 12:43:37 -04:00
Andre Medeiros
8c5422af20 edge case for stuck notifications 2022-05-19 12:37:03 -04:00
Andre Medeiros
cc6e862ba6 be less noisy about rate limits 2022-05-19 11:51:56 -04:00
Andre Medeiros
527552eb6d Use raw_json on all reddit calls 2022-05-17 17:36:59 -04:00
Andre Medeiros
6cfdc1ba74 Tweak username length 2022-05-13 10:29:09 -04:00
Andre Medeiros
69a9101499 Fix Subreddit length 2022-05-13 10:27:56 -04:00
Andre Medeiros
1919b36f57 fix subreddit watchers for 2 letter subreddits 2022-05-12 16:23:16 -04:00
Andre Medeiros
132374fb6b freaking sql types 2022-05-08 21:02:59 -04:00
Andre Medeiros
3803fea055 fix watcher creation 2022-05-08 20:56:04 -04:00
Andre Medeiros
bc80526251 Send JSON body, not URL param 2022-05-07 19:30:07 -04:00
Andre Medeiros
b55b52bf2c tweak a bit more 2022-05-07 15:16:04 -04:00
Andre Medeiros
ebe7437bfa log errors on API 2022-05-07 15:10:57 -04:00
Andre Medeiros
10d2e77c4f use request context 2022-05-07 15:04:35 -04:00
Andre Medeiros
b001a51a30 return after error 2022-05-07 13:38:23 -04:00
Andre Medeiros
eaf6a707ca fix bugsnag exception 2022-05-07 13:38:04 -04:00
Andre Medeiros
5e2a846bc1 Fix header for old API 2022-05-07 13:36:23 -04:00
Andre Medeiros
f8b6c062e8 Revert "Don't lowcase subreddits"
This reverts commit b7e5d3860c.
2022-05-07 13:31:52 -04:00
Andre Medeiros
b7e5d3860c Don't lowcase subreddits 2022-05-07 13:30:05 -04:00
Andre Medeiros
fe8baf7989 make watcher keywords more flexible 2022-05-07 13:22:06 -04:00
Andre Medeiros
53a4bbee25 Avoid Sandbox things 2022-05-07 13:01:57 -04:00
Andre Medeiros
596636ee60 formatting 2022-05-07 12:57:14 -04:00
Andre Medeiros
a42ddbeeb3 add notification test endpoints 2022-05-07 12:53:42 -04:00
André Medeiros
f9b9c595cf Better testing (#62)
* some tests

* more tests

* tidy up go.mod

* more tests

* add postgres

* beep

* again

* Set up schema

* fix device test
2022-05-07 12:37:21 -04:00
Andre Medeiros
17019cecfb fix grace period expiry check 2022-05-07 12:05:47 -04:00
André Medeiros
a94aa11845 Merge pull request #66 from christianselig/chore/schema-changes
Changes to schema
2022-05-07 11:52:52 -04:00
Andre Medeiros
4fad10bade fix tests 2022-05-07 11:51:56 -04:00
Andre Medeiros
93052d2770 log account ID 2022-05-07 11:42:20 -04:00
Andre Medeiros
69ea7494f3 write tests 2022-05-07 11:21:01 -04:00
Andre Medeiros
8cdb8bb621 avoid double escaping 2022-05-07 11:08:10 -04:00
Andre Medeiros
8a8431fc0f Add subreddit validation and de-register from old API 2022-05-07 11:06:21 -04:00
Andre Medeiros
310567fde2 change pool size for redis 2022-05-02 11:11:36 -04:00
André Medeiros
ead14c8bf0 Merge branch 'main' into chore/schema-changes 2022-05-01 14:07:34 -04:00
Andre Medeiros
e5bf631a0b check itunes receipts 2022-05-01 14:05:30 -04:00
Andre Medeiros
41f504d10c add contact endpoint 2022-05-01 13:57:30 -04:00
Andre Medeiros
49b1acc906 Add threadID 2022-05-01 13:36:35 -04:00
Andre Medeiros
9ba4498c08 Add post thumbnails too 2022-05-01 13:33:09 -04:00
Andre Medeiros
63344348df Fix notification categories for watchers 2022-05-01 13:28:12 -04:00
Andre Medeiros
e48460572a include subreddit fields too 2022-05-01 13:24:10 -04:00
Andre Medeiros
c2a77e7c66 add comment_id on username mention 2022-05-01 13:22:18 -04:00
Andre Medeiros
91456dc9b9 include comment_id for private messages 2022-05-01 13:20:36 -04:00
Andre Medeiros
b886dd3fab Fix post reply notifications 2022-05-01 13:18:16 -04:00
Andre Medeiros
a429ee9987 change remaining notification titles 2022-05-01 13:09:08 -04:00
Andre Medeiros
8502a67352 Change trending notification 2022-05-01 13:04:05 -04:00
Andre Medeiros
2027760e1e Change Subreddit watcher notification 2022-05-01 13:00:34 -04:00
Andre Medeiros
f267db8497 fix ambiguous expires_at 2022-04-07 11:35:59 -04:00
Andre Medeiros
7c7e1e5e1c More proper types 2022-03-28 17:33:01 -04:00
Andre Medeiros
69675d4d5c add schema 2022-03-28 17:27:07 -04:00
Andre Medeiros
dbcda74ab8 Changes to schema 2022-03-28 17:05:01 -04:00
Andre Medeiros
5e48ab682b Add app commit to config 2022-03-28 13:50:06 -04:00
Andre Medeiros
451a1a96fb add bugsnag test endpoint 2022-03-28 13:39:19 -04:00
Andre Medeiros
7e36609cda right env variable 2022-03-28 13:23:24 -04:00
Andre Medeiros
493f449802 add bugsnag 2022-03-28 13:20:01 -04:00
Andre Medeiros
294243b02d fix ci 2022-03-26 13:40:51 -04:00
Andre Medeiros
fc617b535c fix tests 2022-03-26 13:29:58 -04:00
Andre Medeiros
188036a838 postgres is a stickler for types 2022-03-26 12:54:51 -04:00
Andre Medeiros
88a3e0a21f short circuit on notifications job 2022-03-26 12:52:10 -04:00
Andre Medeiros
e5670c9828 Add a device grace period so that it gets notified but not removed 2022-03-26 12:48:51 -04:00
Andre Medeiros
9cc60972dc Allow setting a global mute that does not overwrite the other settings 2022-03-26 12:39:28 -04:00
Andre Medeiros
84b5959aa2 an extra comma... 2022-03-26 10:49:18 -04:00
Andre Medeiros
a6abda91a7 add accept header to request json 2022-03-14 09:42:47 -04:00
Andre Medeiros
455788a9c4 strip .json from urls 2022-03-14 09:40:18 -04:00
Andre Medeiros
3bf38b0630 record timestamp and crazy ratelimit cases 2022-03-12 16:00:41 -05:00
Andre Medeiros
b9389511f6 log requests per account 2022-03-12 14:46:36 -05:00
Andre Medeiros
195bd55426 more info on ratelimit; change useragent 2022-03-12 14:22:00 -05:00
Andre Medeiros
7bff205523 report rate limit 100% 2022-03-12 14:07:15 -05:00
Andre Medeiros
907dc5510d i am idiot 2022-03-12 13:45:50 -05:00
Andre Medeiros
5ad98494ee fix rate limiter part 2 2022-03-12 13:25:34 -05:00
Andre Medeiros
77162dd513 fix rate limiting parsing 2022-03-12 13:15:59 -05:00
Andre Medeiros
7a6955212b fix rate limiting 2022-03-12 12:58:07 -05:00
Andre Medeiros
a1a098b448 ch-ch-changes 2022-03-12 12:50:05 -05:00
Andre Medeiros
c149606f24 fix more sql 2022-03-01 17:29:43 -05:00
Andre Medeiros
2c2ae76574 fix sql 2022-03-01 17:25:26 -05:00
Andre Medeiros
e5ea131145 include watcher original name in response 2022-03-01 17:20:36 -05:00
Andre Medeiros
dfae5d6c77 check if notification was sent too 2022-01-14 15:29:56 -05:00
Andre Medeiros
39ccc1972a keep devices around for a month 2021-10-29 11:03:58 -04:00
Andre Medeiros
ec12775621 retry logic 2021-10-28 10:57:09 -04:00
Andre Medeiros
e86dd3266a fixes 2021-10-17 12:45:12 -04:00
Andre Medeiros
815b577bf5 enable/disable notifications per account/device pair 2021-10-17 12:41:12 -04:00
Andre Medeiros
70d73eab4c defer func on stats for scheduler 2021-10-17 12:04:09 -04:00
Andre Medeiros
7d41c4ae3a change info to debug on a chatty log line 2021-10-17 11:56:23 -04:00
Andre Medeiros
6f2c956082 more tweaks 2021-10-17 11:48:41 -04:00
Andre Medeiros
b5bc51dfd7 fix edge cases 2021-10-17 11:27:52 -04:00
Andre Medeiros
b07bf599de only alert on non deleted messages 2021-10-17 11:05:40 -04:00
Andre Medeiros
78e48a8f3b check for last alerted thing that wasn't deleted 2021-10-17 11:02:31 -04:00
Andre Medeiros
ad982edcd7 oops 2021-10-17 10:53:14 -04:00
Andre Medeiros
42243def97 fix the things for messages 2021-10-17 10:47:43 -04:00
Andre Medeiros
62796df6de fix logging 2021-10-17 10:20:07 -04:00
Andre Medeiros
f5d2fe5e81 check for stuck accounts every 2 minutes 2021-10-17 10:18:13 -04:00
Andre Medeiros
c8bec95bed add stuck notifications worker 2021-10-17 10:17:41 -04:00
Andre Medeiros
077cf7cf09 set label so that trending goes through for now 2021-10-14 01:31:37 -04:00
Andre Medeiros
80256b0465 fix validation 2021-10-14 00:26:06 -04:00
Andre Medeiros
06b715fa6a don't let weird watchers through 2021-10-14 00:25:29 -04:00
Andre Medeiros
95b58b2c01 allow 4 chars too 2021-10-13 23:50:34 -04:00
Andre Medeiros
cb0e05ac62 allow more chars for ids 2021-10-13 23:47:50 -04:00
Andre Medeiros
7714046de2 responses 2021-10-13 15:11:27 -04:00
Andre Medeiros
08fd2ef9a5 allow editing watchers too 2021-10-13 11:11:28 -04:00
Andre Medeiros
db3268b0d0 catch the subreddit criteria 2021-10-13 10:44:47 -04:00
Andre Medeiros
0674ddf730 allow user notifications to be filtered by subreddit 2021-10-13 10:43:05 -04:00
Andre Medeiros
eb0d6230d7 add tags and validations 2021-10-12 12:04:20 -04:00
Andre Medeiros
553dc53eed Add validations 2021-10-12 10:18:40 -04:00
Andre Medeiros
65792abd94 add subreddit trending posts watcher 2021-10-10 11:51:42 -04:00
Andre Medeiros
009d60dc2f don't alert user posts in private subreddits 2021-10-09 12:19:52 -04:00
Andre Medeiros
19ed17b086 honor user perference to not be followed and delete them 2021-10-09 11:44:19 -04:00
Andre Medeiros
4955f74f52 user following 2021-10-09 10:59:20 -04:00
Andre Medeiros
9854c0ecc4 fix lint 2021-09-27 15:54:29 -04:00
Andre Medeiros
a63171f833 tweak notification 2021-09-27 15:23:56 -04:00
Andre Medeiros
a26b1f6a32 delete devices heuristic fix 2021-09-25 14:56:14 -04:00
Andre Medeiros
65202112f9 Sandbox thing 2021-09-25 14:47:14 -04:00
Andre Medeiros
203b6600d5 don't be clever with server errors 2021-09-25 14:42:53 -04:00
Andre Medeiros
537d1711fe record watcher hits 2021-09-25 14:27:58 -04:00
Andre Medeiros
24ef6cce6b list watchers endpoint 2021-09-25 14:17:23 -04:00
Andre Medeiros
bc9456cba2 tweak notification content 2021-09-25 14:05:34 -04:00
Andre Medeiros
698c65b1f4 tweaks 2021-09-25 14:02:00 -04:00
Andre Medeiros
a5bd4c2ce4 check last 100 hot posts too 2021-09-25 13:05:05 -04:00
Andre Medeiros
3361403379 subreddit notifications 2021-09-25 12:56:01 -04:00
Andre Medeiros
fc1065deb5 fix ci 2021-09-25 09:19:42 -04:00
Andre Medeiros
aa08278670 receipts and device active until 2021-09-11 10:53:19 -04:00
Andre Medeiros
d4fad82264 write header before body 2021-08-14 20:19:45 -04:00
Andre Medeiros
e746edfdb9 de-christian sanbox 2021-08-14 20:10:07 -04:00
Andre Medeiros
99f76c8cca fix queue delay reporting 2021-08-14 14:15:05 -04:00
Andre Medeiros
42a9fb415e report timeout errors separately 2021-08-14 14:07:19 -04:00
Andre Medeiros
7f8d0c3375 write errors with proper go api 2021-08-14 13:57:26 -04:00
Andre Medeiros
282ff6ef3e remove the data package 2021-08-14 13:56:03 -04:00
Andre Medeiros
c17a39b9eb remove redundant log field 2021-08-14 13:53:11 -04:00
Andre Medeiros
12b67879ee fix more logs 2021-08-14 13:51:18 -04:00
Andre Medeiros
4c5e47e749 don't delete after any error 2021-08-14 13:50:03 -04:00
Andre Medeiros
d17151a3b3 test reddit 2021-08-14 13:42:28 -04:00
Andre Medeiros
9a5d699f66 Remove stale devices 2021-08-14 12:08:17 -04:00
Andre Medeiros
84e499a7af schedule stale and orphaned accounts 2021-08-14 11:59:13 -04:00
Andre Medeiros
f6e05a6fd8 clean orphaned accounts 2021-08-14 11:54:48 -04:00
Andre Medeiros
905235a8ff Set device pinged at 2021-08-14 11:51:27 -04:00
Andre Medeiros
50cdc3aafa skip logging for health check 2021-08-14 11:34:32 -04:00
Andre Medeiros
bcb53235f8 Add a few more fields to http logging 2021-08-14 11:30:43 -04:00
Andre Medeiros
9df9999a0a remove lingering bad code 2021-08-14 11:26:20 -04:00
André Medeiros
37f2e2aedd Merge branch 'main' into chore/refactor 2021-08-14 11:24:36 -04:00
Andre Medeiros
002851efe7 Save account info 2021-08-14 11:21:17 -04:00
Andre Medeiros
993c07938c ALL THE API 2021-08-08 14:19:47 -04:00