Commit Graph

94 Commits

Author SHA1 Message Date
binwiederhier b9c176ddba Tests 2024-03-22 22:01:41 -04:00
binwiederhier de65d07518 Simplify(?) templating cases 2024-03-20 21:33:54 -04:00
binwiederhier 94f60fb5b8 Lint 2024-03-07 12:53:39 -05:00
binwiederhier f2cd1edc57 Add some helper for base-url 2024-03-07 12:44:31 -05:00
binwiederhier 243123fd7e Convert duration flags, add docs 2024-03-07 12:22:35 -05:00
binwiederhier 36b33030f3 Add message-{size|delay}-limit 2024-03-07 11:53:12 -05:00
binwiederhier 1c3ed3ea40 Do not allow empty passwords when creating users 2023-11-19 05:47:41 -05:00
binwiederhier 22f48c5ad3 Change mod path 2023-11-16 20:54:58 -05:00
binwiederhier d9387dac99 Refine logic 2023-09-24 17:59:23 -04:00
Gustavo de León 30a913c05c
Ignore Cloudflare Priority header
With these changes, If the web request contains the new Priority header (RFC 9218), The server will ignore it and continue searching for other headers or query parameters.
2023-08-28 23:20:04 -06:00
binwiederhier e96e35b40b Newly created access tokens are now lowercase only 2023-06-14 11:20:29 -04:00
Michael Manganiello ebd4367dda Fix false positive in ContainsAll function
As the `ContainsAll` is working with a match counter, it could return
a false positive when the `haystack` slice contains duplicate elements.

This can be checked with the included testing scenario, with
`haystack = [1, 1]` and `needles = [1, 2]`. Iterating over the haystack
to check for items to be present in needles will increase the match
counter to 2, even if `2` is not present in the first slice.
2023-05-12 09:51:47 -03:00
binwiederhier 1ce92714c4 Add `visitor_seen` to the log context 2023-03-03 13:56:48 -05:00
binwiederhier a3087047b6 Enhance some duration flags 2023-02-27 14:34:05 -05:00
binwiederhier 76d46ec646 Minor tweaks 2023-02-15 10:55:01 -05:00
binwiederhier e6bb5f484c Self-review, round 2 2023-02-09 15:24:12 -05:00
binwiederhier b37cf02a6e Code review (round 1) 2023-02-08 22:57:10 -05:00
binwiederhier d44a11325d More visitor log fields 2023-02-07 16:20:49 -05:00
binwiederhier e3b39f670f WIP tier CLI 2023-02-06 22:38:22 -05:00
binwiederhier c12ecb9f21 More tests 2023-01-29 20:11:58 -05:00
binwiederhier 16c14bf709 Add Access Tokens UI 2023-01-27 23:10:59 -05:00
binwiederhier 62140ec001 Rate limiting refactor, race fixes, more tests 2023-01-27 11:33:51 -05:00
binwiederhier 22c66203a0 Reset message limiter, test 2023-01-27 09:42:54 -05:00
binwiederhier c874a641df Rate limits make sense now! 2023-01-26 22:57:18 -05:00
binwiederhier 236254d907 Add bandwidth limit to tier; fix display name sync issues 2023-01-25 10:05:54 -05:00
binwiederhier 954d919361 Delayed deletion 2023-01-22 22:21:30 -05:00
binwiederhier 9c082a8331 Introduce text IDs for everything (esp user), to avoid security and accounting issues 2023-01-21 23:15:22 -05:00
binwiederhier 3bd6518309 Fix a bunch of FIXMEs 2023-01-18 15:50:06 -05:00
binwiederhier 3dd8dd4288 Stats resetter at midnight UTC 2023-01-10 22:51:51 -05:00
binwiederhier 598d0bdda3 Some tests 2022-12-31 16:08:49 -05:00
binwiederhier bd2ec7b2af More manager tests 2022-12-29 11:09:45 -05:00
binwiederhier 57814cf855 Tests 2022-12-29 09:57:42 -05:00
binwiederhier 367d024a2d Simplify API endpoints; add endpoint tests 2022-12-28 19:55:11 -05:00
binwiederhier 6598ce2fe4 Limits 2022-12-19 09:59:32 -05:00
binwiederhier 42e46a7c22 Limit work 2022-12-18 14:35:05 -05:00
Philipp Heckel db9ca80b69 Fix race condition making it possible for batches to be >batchSize 2022-11-16 11:16:07 -05:00
Philipp Heckel e147a41f92 Fix race in tests 2022-11-16 10:44:10 -05:00
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
Karmanyaah Malhotra 1672322fc1 test ContainsIP utility 2022-10-07 21:22: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 5014bba0b3 Replace interface{} 2022-10-01 16:31:48 -04:00
Philipp Heckel bddde5c637 Bump Go version, Generics whoooo 2022-10-01 15:50:48 -04:00
Philipp Heckel 46fcbdb827 Deprecation warnings 2022-09-27 12:45:43 -04:00
Philipp Heckel 419bfecd6f Reformatting, make update 2022-09-27 12:37:02 -04:00
Philipp Heckel e8953aea3b Fix test, changelog 2022-07-01 09:37:20 -04:00
Philipp Heckel 95bd876be2 Fix HTTP Spec priority header parsing 2022-07-01 09:28:42 -04:00
Philipp Heckel a160da3ad9 Tests 2022-06-21 11:18:35 -04:00
Philipp Heckel 0080ea5a20 All --wait-cmd 2022-06-20 23:03:16 -04:00