Commit Graph

197 Commits (38f7843861d52258572aaecc8bb8a96bcffdd305)

Author SHA1 Message Date
Philipp Heckel ad860afb8b Polish async batching 2022-11-16 10:28:20 -05:00
Philipp Heckel b4933a5645 WIP: Batch message INSERTs 2022-11-15 14:24:56 -05:00
Philipp Heckel 16ad94441b Personal preference 2022-10-08 17:58:05 -04:00
Karmanyaah Malhotra 3b29294679 minor modification to tests involving ips 2022-10-07 20:27:22 -05:00
Karmanyaah Malhotra de2ca33700 recommended fixes [1 of 2] 2022-10-07 16:17:04 -05:00
Karmanyaah Malhotra c2382d29a1 refactor visitor IPs and allow exempting IP Ranges
Use netip.Addr instead of storing addresses as strings. This requires
conversions at the database level and in tests, but is more memory
efficient otherwise, and facilitates the following.

Parse rate limit exemptions as netip.Prefix. This allows storing IP
ranges in the exemption list. Regular IP addresses (entered explicitly
or resolved from hostnames) are IPV4/32, denoting a range of one
address.
2022-10-05 16:04:42 -05:00
Philipp Heckel bddde5c637 Bump Go version, Generics whoooo 2022-10-01 15:50:48 -04:00
Philipp Heckel 419bfecd6f Reformatting, make update 2022-09-27 12:37:02 -04:00
Hunter Kehoe 3c5a10de17 combine attachment and icon url regex 2022-07-17 15:47:21 -06:00
Hunter Kehoe 99886d7f66 change icon from object to string 2022-07-17 15:40:24 -06:00
Hunter Kehoe d519fd999b notification icons 2022-07-16 14:13:46 -06:00
Philipp Heckel 10a9aca2a1 Delete expired attachments based on mod time instead of DB entry to avoid races 2022-07-08 10:00:04 -04:00
Philipp Heckel bf8077626e Permissions of unix socket 2022-07-03 19:33:01 -04:00
Koro ed1673beed Set socket mode after creation. 2022-07-03 17:39:08 -04:00
Philipp Heckel 113900d3eb Cache startup queries 2022-06-23 11:02:45 -04:00
Philipp Heckel 3334d84861 Fix another race, add test 2022-06-22 15:11:50 -04:00
Philipp Heckel ed9d99fd57 "Fix" data race 2022-06-22 13:47:54 -04:00
Philipp Heckel edfc1b78a1 Delayed message lock shorter 2022-06-21 20:07:08 -04:00
Philipp Heckel c1f7bed8d1 Fix tests, lock topic as short as possible 2022-06-21 19:45:23 -04:00
Philipp Heckel 85f2252a77 WIP: Shorter lock, for #338 2022-06-21 19:07:27 -04:00
Philipp Heckel d05211648d Fix `since=<id>` implementation for multiple topics, closes #336 2022-06-20 12:11:52 -04:00
Philipp Heckel 25a4b29ffc Return HTTP 500 on Matrix discovery GET if base-url not configured; log entire HTTP request when TRACE enabled 2022-06-19 21:25:35 -04:00
Philipp Heckel 9918f4965d Only use last X-Forwarded-For address as visitor address, closes #328 2022-06-16 15:31:09 -04:00
Philipp Heckel 18bd3c0e55 Docs and Matrix tests 2022-06-16 11:40:56 -04:00
Philipp Heckel ebbc2838ba Move error handling to main error handling; move matrix logic to its own file 2022-06-15 20:36:49 -04:00
Philipp Heckel 91375b2e8e Minor refactor, added GET 2022-06-15 16:03:12 -04:00
Philipp Heckel 27910772f0 Derpyderp 2022-06-14 20:43:17 -04:00
Philipp Heckel e9f3edb76b WIP: Matrix 2022-06-13 22:07:30 -04:00
Philipp Heckel cf0f002bfa Add version number to ntfy serve output 2022-06-12 11:54:58 -04:00
Philipp Heckel 2b42cea1a3 Allow HEAD requests for file attachments 2022-06-10 21:33:39 -04:00
Philipp Heckel 0521f19ea4 Fix docs header color; tiny other fixes with logging 2022-06-02 20:59:07 -04:00
Philipp Heckel e12995e218 Logging in subscribe and publish command 2022-06-02 11:59:22 -04:00
Philipp Heckel 5cc0b194d3 Add --trace and --no-log-dates; add docs 2022-06-02 10:50:05 -04:00
Philipp Heckel 7845eb0124 So much logging 2022-06-01 23:24:44 -04:00
Philipp Heckel ab955d4d1c Logging 2022-06-01 16:57:35 -04:00
Philipp Heckel a04cf5fcb6 Merge branch 'main' into logging 2022-05-31 23:39:11 -04:00
Philipp Heckel c80e4e1aa9 Make Firebase logic testable, test it 2022-05-31 23:16:44 -04:00
Philipp Heckel f9284a098a Store Sender IP in DB for delayed messages 2022-05-31 21:39:19 -04:00
Philipp Heckel 8283b6be97 Firebase quota limit 2022-05-31 20:38:56 -04:00
Philipp Heckel dc0e699fb5 WIP: Logging 2022-05-29 22:14:14 -04:00
Philipp Heckel b2c2bd1e4b Remove "poll" alias for X-Poll-ID 2022-05-28 22:06:46 -04:00
Philipp Heckel 96bb357435 Polish the poll_request stuff 2022-05-27 20:30:20 -04:00
Philipp Heckel 6a43c1a126 WIP: iOS poll_request forwarder 2022-05-27 07:55:57 -04:00
Philipp Heckel af76a2606d Support for Firebase ~poll keepalive topic that wakes up iOS devices every 20 minutes 2022-05-25 21:39:46 -04:00
Philipp Heckel c684a39191 Fine tuning 2022-05-13 14:42:25 -04:00
Curid 9684629549 Add disable option to web-root
Closes #238
2022-05-13 17:08:07 +00:00
Philipp Heckel edfed24c27 Make Upgrade header check for websockets case insensitive, closes #228 2022-04-29 13:23:04 -04:00
Philipp Heckel 1f6118f068 Finish up better parsing 2022-04-27 09:51:23 -04:00
Philipp Heckel b805d49cfd Disallow HEAD/GET requests with body 2022-04-23 13:40:26 -04:00
Philipp Heckel 712c292183 More docs 2022-04-20 16:31:25 -04:00