binwiederhier
0d537c8a24
Reserve icons
2023-01-23 20:04:04 -05:00
binwiederhier
bce71cb196
Kill existing subscribers when topic is reserved
2023-01-23 14:05:41 -05:00
binwiederhier
e82a2e518c
Add password confirmation to account delete dialog, v1/tiers test
2023-01-23 10:58:39 -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
88abd8872d
Changing password should confirm the old password
2023-01-21 20:52:16 -05:00
binwiederhier
c66a9851cc
Re-add password confirmation
2023-01-21 20:07:39 -05:00
binwiederhier
14f3571e67
More TODOs
2023-01-21 16:19:48 -05:00
binwiederhier
5a7cedce95
More TODOs, hurray
2023-01-21 16:02:56 -05:00
binwiederhier
5b14c76e54
Revert home page to existing page
2023-01-21 08:55:31 -05:00
binwiederhier
31a3bb7cd6
Payments webhook test, delete attachments/messages when reservations are removed,
2023-01-20 22:47:37 -05:00
binwiederhier
45b97c7054
Deleting account deletes subscription
2023-01-19 14:03:39 -05:00
binwiederhier
4e51a715c1
Allow mocking the Stripe API
2023-01-18 23:01:26 -05:00
binwiederhier
3bd6518309
Fix a bunch of FIXMEs
2023-01-18 15:50:06 -05:00
binwiederhier
f945fb4cdd
A little polishing, make upgrade banner work when not logged in
2023-01-18 13:46:40 -05:00
binwiederhier
cead305a9a
Make prettier
2023-01-17 20:21:19 -05:00
binwiederhier
4092f7fd51
Upgrade dialog looks nice now
2023-01-17 19:40:03 -05:00
binwiederhier
695c1349e8
Upgrade dialog
2023-01-17 10:09:37 -05:00
binwiederhier
83de879894
publishSyncEvent, Stripe endpoint changes
2023-01-16 16:35:37 -05:00
binwiederhier
7faed3ee1e
Add "Canceled" banner
2023-01-16 10:35:12 -05:00
binwiederhier
c06bfb989e
Payment stuff, cont'd
2023-01-15 23:29:46 -05:00
binwiederhier
01fd4754f9
WIP: Stripe integration
2023-01-14 06:43:44 -05:00
binwiederhier
7007c0a0bd
Docs
2023-01-12 12:04:18 -05:00
binwiederhier
24529bd0ad
Rename /access to /reservation
2023-01-12 10:50:09 -05:00
binwiederhier
fdee54f921
Account sync in action
2023-01-11 21:38:10 -05:00
binwiederhier
3dd8dd4288
Stats resetter at midnight UTC
2023-01-10 22:51:51 -05:00
binwiederhier
2908c429a5
Set sync_topic in migration
2023-01-10 15:41:08 -05:00
binwiederhier
7e528d9c10
Sync topic (begin), rename user fields
2023-01-09 21:53:21 -05:00
binwiederhier
b27c608508
useContext work in JS
2023-01-09 20:37:13 -05:00
binwiederhier
a4529617cc
Make upgrade banner bigger
2023-01-09 17:56:51 -05:00
binwiederhier
a6564fb43c
Add "expires" stuff to message cache migration
2023-01-09 16:21:00 -05:00
binwiederhier
3aba7404fc
Tiers make sense for admins now
2023-01-09 15:40:46 -05:00
binwiederhier
d8032e1c9e
Tier based tests
2023-01-08 20:46:46 -05:00
binwiederhier
1f54adad71
Rename plan->tier, topics->reservations, more tests, more todos
2023-01-07 21:04:13 -05:00
binwiederhier
df512d0ba2
Add todo
2023-01-07 13:23:45 -05:00
binwiederhier
a54a11db88
Plan-based message and attachment expiry
2023-01-07 09:34:02 -05:00
binwiederhier
ac4042ca04
Tests for /access endpoints
2023-01-06 10:45:38 -05:00
binwiederhier
a51d95743a
Reject reservation limits in endpoint
2023-01-05 21:15:10 -05:00
binwiederhier
1e7dd8fc80
TODOs
2023-01-05 20:43:36 -05:00
binwiederhier
7fa63c8e19
Prune excess tokens per user
2023-01-05 20:22:34 -05:00
binwiederhier
60f1882bec
Startup queries, foreign keys
2023-01-05 15:20:44 -05:00
binwiederhier
3280c2c440
Upgrade banner
2023-01-04 22:47:12 -05:00
binwiederhier
a91da7cf2c
Reserved topic stuff
2023-01-04 20:34:22 -05:00
binwiederhier
36c0be1097
Upgrade smtp library, but not tests
2023-01-04 09:31:32 -05:00
binwiederhier
4b9d40464c
Replace read/write flags with Permission
2023-01-02 21:12:42 -05:00
binwiederhier
1733323132
Introduce Reservation
2023-01-02 20:08:37 -05:00
binwiederhier
e650f813c5
TopicsLimit
2023-01-01 20:42:33 -05:00
binwiederhier
2267d27c9b
User-owned ACL entries
2023-01-01 15:21:43 -05:00
binwiederhier
598d0bdda3
Some tests
2022-12-31 16:08:49 -05:00
binwiederhier
0bb3c84b9e
More tests
2022-12-31 10:16:14 -05:00
binwiederhier
3d921f4570
Not really an improvemenNot really an improvementt
2022-12-31 09:31:46 -05:00
binwiederhier
bd86e3d951
Basic user access endpoint
2022-12-30 14:20:48 -05:00
binwiederhier
b131d676c4
Gradient header
2022-12-30 10:31:52 -05:00
binwiederhier
036f08a729
Make homepage slightly nicer looking
2022-12-29 21:53:41 -05:00
binwiederhier
f4ffcebb14
User database migration
2022-12-29 13:08:47 -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
66cb35b5fc
Translations
2022-12-29 08:20:53 -05:00
binwiederhier
9be8be49ef
Translations
2022-12-29 02:32:05 -05:00
binwiederhier
3512db1fe7
Test account api (WIP)
2022-12-28 22:16:11 -05:00
binwiederhier
367d024a2d
Simplify API endpoints; add endpoint tests
2022-12-28 19:55:11 -05:00
binwiederhier
7ca9afad57
Account API endpoint fixes
2022-12-28 15:51:09 -05:00
binwiederhier
f79348817f
More tests
2022-12-28 13:46:18 -05:00
binwiederhier
a2e474c375
Fix all the tests
2022-12-28 13:28:28 -05:00
binwiederhier
d9722a9825
Fix almost all tests
2022-12-27 22:14:14 -05:00
binwiederhier
95a8e64fbb
Figure out user manager for account user
2022-12-26 21:27:07 -05:00
binwiederhier
dbd8efbf16
Todo
2022-12-25 22:30:58 -05:00
binwiederhier
2fb4bd4975
Display name sync
2022-12-25 22:29:55 -05:00
binwiederhier
7ae8049438
Extend session token from web app
2022-12-25 13:42:44 -05:00
binwiederhier
d4c7ad4beb
Rename auth package to user; add extendToken feature
2022-12-25 11:41:38 -05:00
binwiederhier
3aac1b2715
Redirect UI if unauthorized API response
2022-12-24 15:51:22 -05:00
binwiederhier
1b39ba70cb
Merge branch 'main' into user-account
2022-12-24 12:26:56 -05:00
binwiederhier
dd282963c3
Health API endpoint
2022-12-24 12:22:54 -05:00
binwiederhier
fb470eec79
Sign up rate limit
2022-12-24 12:10:51 -05:00
binwiederhier
7bd1c6e115
Check username taken
2022-12-24 08:15:39 -05:00
binwiederhier
7a507505aa
Merge branch 'main' into user-account
2022-12-23 09:37:47 -05:00
binwiederhier
92d7e5c58a
Bump version
2022-12-23 08:38:45 -05:00
binwiederhier
b5e2c83fba
stuff
2022-12-21 21:55:39 -05:00
binwiederhier
d982ce13f5
UI work, config.js stuff
2022-12-21 13:19:07 -05:00
binwiederhier
cc55bec521
Write stats to user table asynchronously
2022-12-20 21:18:33 -05:00
binwiederhier
2f567af80b
more TODOs, IP basis section
2022-12-19 22:19:44 -05:00
binwiederhier
2b78a8cb51
Associate messages with a user
2022-12-19 21:42:36 -05:00
binwiederhier
84785b7a60
Restructure limits
2022-12-19 16:22:13 -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
binwiederhier
56ab34a57f
v1/account API response, rate limiting bla
2022-12-17 23:54:19 -05:00
binwiederhier
ac56fa36ba
Plan stuff WIPWIPWIP
2022-12-17 15:17:52 -05:00
binwiederhier
8752680233
Account delete, mock user stats UI
2022-12-17 13:49:32 -05:00
binwiederhier
81a8efcca3
Change password, delete account, etc.
2022-12-15 22:07:04 -05:00
binwiederhier
c2f16f740b
Stuff
2022-12-14 23:11:22 -05:00
binwiederhier
4bf2fb85e3
Bla
2022-12-13 15:19:40 -05:00
binwiederhier
4e4d410803
TODOs
2022-12-12 14:52:37 -05:00
binwiederhier
cf68414c40
Merge branch 'main' into user-account
2022-12-12 11:12:05 -05:00
binwiederhier
67221b015d
Changelog
2022-12-12 09:55:17 -05:00
Nick Farrell
1235ea5bb5
Use prepared statement for bulk writes
...
When executing the same statement multiple times, avoid
the overhead of re-parsing the statement for each insert.
2022-12-12 14:13:40 +11:00
Philipp Heckel
92bf7ebc52
blerp
2022-12-08 20:50:48 -05:00
Philipp Heckel
c5b6971447
OMG all the things are horrible
2022-12-07 21:26:18 -05:00
Philipp Heckel
8dcb4be8a8
Token login
2022-12-07 20:44:20 -05:00
Philipp Heckel
d499d20a9c
Token stuff
2022-12-03 15:20:59 -05:00
Philipp Heckel
2772a38dae
WIPWIPWIP
2022-12-02 15:37:48 -05:00
Philipp Heckel
679b075ecc
Fix #503 , bump version for release
2022-11-17 20:47:27 -05:00
Philipp Heckel
497f871447
Docs
2022-11-16 10:33:12 -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
Philipp Heckel
a43a4aea5e
Docs
2022-11-12 14:41:28 -05:00
Philipp Heckel
54eae00774
Intermittent test failure
2022-10-09 08:53:40 -04: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
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
419bfecd6f
Reformatting, make update
2022-09-27 12:37:02 -04:00
Philipp Heckel
6476978a2e
Move things
2022-09-11 16:31:39 -04:00
Philipp Heckel
ae1fb74ac6
Merge branch 'main' of github.com:binwiederhier/ntfy into icons
2022-09-10 23:22:48 -04:00
Philipp Heckel
b0d58a618e
Fix test
2022-08-21 21:32:53 -04:00
Christophe Henry
ec64b412a8
Document Matrix pushkey error + set log level to warnings for Matrix errors
2022-08-21 17:03:56 +02: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
88a77cb132
Fix race
2022-07-08 10:16:23 -04: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
e874f3516e
Docs
2022-07-03 19:36:58 -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
Koro
9f358d4793
Add socket mode to configuration struct.
2022-07-03 15:39:19 -04:00
Philipp Heckel
95bd876be2
Fix HTTP Spec priority header parsing
2022-07-01 09:28:42 -04:00
Philipp Heckel
5f2ce5e542
Fix intermittent test failure; bump version
2022-06-23 15:01:35 -04:00
Philipp Heckel
113900d3eb
Cache startup queries
2022-06-23 11:02:45 -04:00
Philipp Heckel
b4a824aa38
Format actions PR, changelog
2022-06-22 20:23:15 -04:00
Philipp C. Heckel
e8569c6008
Merge pull request #341 from wunter8/custom-intent-broadcast-action
...
allow custom intent in broadcast action without JSON
2022-06-22 20:21:11 -04:00
Philipp Heckel
b74defef14
Enable WAL mode, add changelog
2022-06-22 20:17:47 -04:00
Hunter Kehoe
ee38d76bc2
allow custom intent in broadcast action without JSON
2022-06-22 15:29:16 -06:00
Philipp Heckel
3334d84861
Fix another race, add test
2022-06-22 15:11:50 -04:00
Philipp Heckel
9cee8ab888
Call subscriber funtions in individual goroutines
2022-06-22 13:52:49 -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
df2362e1a7
Update deps
2022-06-16 12:48:43 -04:00
Philipp Heckel
8a56b82813
500-test
2022-06-16 12:42:19 -04:00
Philipp Heckel
6122cf20aa
More tests
2022-06-16 12:37:02 -04:00
Philipp Heckel
18bd3c0e55
Docs and Matrix tests
2022-06-16 11:40:56 -04:00
Philipp Heckel
0ff8e968ca
Docs
2022-06-15 20:51:42 -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
41096ef1b0
Update base-url docs
2022-06-12 10:47:12 -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
850c6725f5
Remove new line
2022-06-02 14:40:19 -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
bd865fd55d
Merge branch 'main' into logging
2022-06-01 13:07:12 -04:00
Philipp Heckel
eb0847392c
Fix staticcheck
2022-06-01 09:05:21 -04:00
Philipp Heckel
8c32f029fb
Fix data races
2022-05-31 23:55:05 -04:00
Philipp Heckel
a04cf5fcb6
Merge branch 'main' into logging
2022-05-31 23:39:11 -04:00
Philipp Heckel
9202d85532
Make linter happy
2022-05-31 23:36:06 -04:00
Philipp Heckel
769e071593
Refining, changelog
2022-05-31 23:27:24 -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
1f38a4a531
Upgrade Firebase Admin SDK version
2022-05-29 20:48: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
4dabc56952
Subscribe filter for querying by ID
2022-05-26 18:52:55 -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
2abd6a57ee
Support emails without Content-Type, closes #265
2022-05-21 20:20:44 -04:00
Philipp Heckel
cd27d47f4b
APNs data
2022-05-20 15:59:58 -04:00
Philipp Heckel
60c5ccf34b
Merge branch 'main' of github.com:binwiederhier/ntfy into macos-server
2022-05-20 15:59:12 -04:00
Philipp Heckel
91594faf28
Support for underscores in server.yml config options
2022-05-16 11:32:21 -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
577cd0fcea
ios
2022-05-11 13:29:23 -04:00
Philipp Heckel
edfed24c27
Make Upgrade header check for websockets case insensitive, closes #228
2022-04-29 13:23:04 -04:00
Philipp Heckel
28bb8d4446
More actions tests
2022-04-27 14:28:58 -04:00
Philipp Heckel
adea3c38be
Remove backslash from quoted strings
2022-04-27 13:56:21 -04:00
Philipp Heckel
72aea2613a
Remove superflous if statement
2022-04-27 11:23:44 -04:00
Philipp Heckel
6bd4e4bd7c
User actions docs, tests and release notes
2022-04-27 10:25:01 -04:00
Philipp Heckel
1f6118f068
Finish up better parsing
2022-04-27 09:51:23 -04:00
Philipp Heckel
574e72a974
WIP: More advanced action parsing
2022-04-26 23:07:31 -04:00
Philipp Heckel
9c91ae2744
Make sure clear= values are checked
2022-04-23 15:23:18 -04:00
Philipp Heckel
b805d49cfd
Disallow HEAD/GET requests with body
2022-04-23 13:40:26 -04:00
Philipp Heckel
12f85cceb1
Add clear=true|false support to actions
2022-04-22 23:07:35 -04:00
Philipp Heckel
8f4a1db1f0
Changelog, add tests
2022-04-22 14:51:44 -04:00
Philipp Heckel
a779434bab
More docs
2022-04-21 09:58:28 -04:00
Philipp Heckel
712c292183
More docs
2022-04-20 16:31:25 -04:00
Philipp Heckel
8900df27c9
Docs, still WIP
2022-04-19 23:26:46 -04:00
Philipp Heckel
3c3b2477af
Docs (WIP), Firebase
2022-04-19 19:22:19 -04:00
Philipp Heckel
5a9b2122c2
Make simple actions parsing work
2022-04-19 09:14:32 -04:00
Philipp Heckel
55869f551e
Add ID
2022-04-17 14:29:43 -04:00
Philipp Heckel
967cde1fb5
JSON format
2022-04-16 20:12:01 -04:00
Philipp Heckel
26efd481e3
WIP Actions
2022-04-16 16:17:58 -04:00
Philipp Heckel
73349cd423
Add test
2022-04-03 20:19:43 -04:00
Philipp Heckel
aba7e86cbc
Attachment behavior fix for Firefox
2022-04-03 12:39:52 -04:00
Philipp Heckel
f98743dd9b
Continued work on send dialog and drag and drop
2022-04-02 17:06:26 -04:00
Philipp Heckel
59ec2de8bd
Fix race in test
2022-03-30 14:37:42 -04:00
Philipp Heckel
b67d9fc85d
Added missing 'delay' and 'email' params to publish as json
2022-03-29 15:40:26 -04:00
Philipp Heckel
03ad5dcff6
Add Allow-Origin: *, because YOLO
2022-03-25 17:17:24 -04:00
Philipp Heckel
b409c89d3b
Do not allow comma in topic name in publish via GET endpoint (no ticket)
2022-03-23 14:29:55 -04:00
Philipp Heckel
8fcc40942f
Publish as JSON
2022-03-16 14:16:54 -04:00
Philipp Heckel
37d4d5d647
PUT/POST as JSON, relates to #133
2022-03-15 16:00:59 -04:00
Philipp Heckel
207e990798
Fix brittle test
2022-03-13 21:30:14 -04:00
Philipp Heckel
750be7f07e
Fix content type for config.js
2022-03-11 15:56:54 -05:00
Philipp Heckel
3f978bc45f
Better test messages
2022-03-10 22:58:24 -05:00
Philipp Heckel
488aeb119b
Gzip static responses
2022-03-10 21:55:56 -05:00
Philipp Heckel
160c72997f
Fix auth base64, fix iPhone things
2022-03-10 18:11:12 -05:00
Philipp Heckel
840cb5b182
Add server-generated /config.js; add error boundary
2022-03-09 23:28:55 -05:00
Philipp Heckel
acde2e5b6e
Remove indexPage
2022-03-05 22:18:03 -05:00
Philipp Heckel
c5ce51f242
Add --web-root switch
2022-03-05 21:28:25 -05:00
Philipp Heckel
36ccfac787
Fix tests
2022-03-05 20:48:27 -05:00
Philipp Heckel
e27d5719f0
Embed new web UI into server
2022-03-05 20:24:10 -05:00
Philipp Heckel
1a3816c1ff
Strip down old web app
2022-03-05 14:48:42 -05:00
Philipp Heckel
cda9dfa9d0
Merge branch 'main' into ui
2022-02-27 16:10:21 -05:00
Philipp Heckel
4cd30c35ce
Rename cache to messageCache
2022-02-27 14:47:28 -05:00
Philipp Heckel
e29a18a076
Add another scheduled message to since ID test
2022-02-27 14:31:22 -05:00
Philipp Heckel
f17df1e926
Combine entirely
2022-02-27 14:25:26 -05:00
Philipp Heckel
c21737d546
Combine tests and all that
2022-02-27 14:21:34 -05:00
Philipp Heckel
6dc4e441e4
Fix tests; remove memory implementation entirely
2022-02-27 14:05:13 -05:00
Philipp Heckel
7d93b0596b
Almost there; Replace memCache with :memory: SQLite cache
2022-02-27 09:38:46 -05:00
Philipp Heckel
8b32cfaaff
Implement since=ID logic in mem cache; add tests; still failing
2022-02-26 20:19:28 -05:00
Philipp Heckel
18b91cf250
Merge branch 'since-id' into ui
2022-02-26 16:01:31 -05:00
Philipp Heckel
4af9c07577
WIP: Since ID, works
2022-02-26 15:57:10 -05:00
Philipp Heckel
aa79fe2861
Desktop notifications
2022-02-26 10:14:43 -05:00
Philipp Heckel
530f55c234
Fully support auth in Web UI; persist users in localStorage (for now); add ugly ?auth=... param
2022-02-25 23:25:04 -05:00
Philipp Heckel
6d343c0f1a
Login page of "subscribe dialog", still WIP, but looking nice
2022-02-25 16:07:25 -05:00
Philipp Heckel
ce9e9f3e0d
Add test for IP exempt setting
2022-02-14 19:23:57 -05:00
Philipp Heckel
eed233a793
Double requests/sec limit; update docs
2022-02-14 17:07:17 -05:00
Philipp Heckel
2ad0802b65
Rate limit exemption; relates to #144
2022-02-14 16:09:59 -05:00
Philipp Heckel
0df8aa9a5d
Replace \\n with \n in X-Message header
2022-02-13 09:23:55 -05:00
Philipp Heckel
3902599c52
More tests; enough!
2022-02-03 22:26:22 -05:00
Philipp Heckel
5cf92c55c6
Docs and minor improvements to "ntfy access"
2022-02-01 16:40:33 -05:00
Philipp Heckel
e56eb0c178
Allow 'ntfy access --reset'
2022-02-01 12:23:11 -05:00
Philipp Heckel
a77f89d302
Test Firebase stuff
2022-02-01 08:47:01 -05:00
Philipp Heckel
b1bbbf0103
Simplify again
2022-01-31 20:12:47 -05:00
Philipp Heckel
c2f31b9c9f
Move firebase to seperate file
2022-01-31 20:06:48 -05:00
Philipp Heckel
198e2cfd90
Do not forward messages to Firebase if topic is not world-readable
2022-01-31 19:33:22 -05:00
Philipp Heckel
c56814e7da
Add wildcard access control
2022-01-31 11:44:58 -05:00
Philipp Heckel
631ade5430
Support multiple topics in auth
2022-01-27 12:49:05 -05:00
Philipp Heckel
e61a0c2f78
Add /auth endpoint and tests
2022-01-25 23:04:09 -05:00
Philipp Heckel
460162737a
More auth
2022-01-24 00:54:28 -05:00
Philipp Heckel
393f95aeac
Auth CLI, continued
2022-01-23 23:02:39 -05:00
Philipp Heckel
e309775ac1
More auth CLi
2022-01-23 00:54:18 -05:00
Philipp Heckel
f388fd9c90
Move to package
2022-01-23 00:02:16 -05:00
Philipp Heckel
b908f07355
.
2022-01-22 23:07:55 -05:00
Philipp Heckel
1287594505
Simplify tables
2022-01-22 23:01:20 -05:00
Philipp Heckel
86b20e8ccd
All the auth things are working now
2022-01-22 14:47:27 -05:00
Philipp Heckel
2181227a6e
WIP: Auth in 80 lines of code :-)
2022-01-21 22:22:27 -05:00
Philipp Heckel
aab705f4a4
Fix baseURL check
2022-01-21 14:17:59 -05:00
Philipp Heckel
8af9a97518
Update server.yml docs
2022-01-20 20:40:12 -05:00
Philipp Heckel
df6611e8de
Store encoding in cache database
2022-01-17 19:14:51 -05:00
Philipp Heckel
7e817f408c
Send encoding in Firebase (even though that doesn't make a ton of sense right now)
2022-01-17 13:49:02 -05:00
Philipp Heckel
4ceb058a40
Handle binary messages for UnifiedPush
2022-01-17 13:28:07 -05:00
Philipp Heckel
75f8607d75
Bail out early if HTTP is spoken to /ws endpoint
2022-01-16 17:54:15 -05:00
Philipp Heckel
9b0e7eedb2
Fix data race
2022-01-16 00:07:32 -05:00
Philipp Heckel
2b6363474e
Combine things, move stuff
2022-01-15 23:17:46 -05:00
Philipp Heckel
707c58a120
Do not print ugly WS error; tests
2022-01-15 22:33:35 -05:00
Philipp Heckel
846ee0fb2d
Websockets; working
2022-01-15 13:23:35 -05:00
Philipp Heckel
b079cb99a4
Merge branch 'main' into unix-socket
2022-01-14 20:16:12 -05:00
Philipp Heckel
a75f74b471
Bump version; update docs
2022-01-14 12:23:58 -05:00
Philipp Heckel
e50779664d
Remove peaking, addresses #93
2022-01-14 12:13:14 -05:00
Philipp Heckel
034c81288c
Docs docs docs
2022-01-13 15:17:30 -05:00
Philipp Heckel
38b28f9bf4
CLI; docs docs docs
2022-01-12 21:24:48 -05:00
Philipp Heckel
aa94410308
Daily traffic limit
2022-01-12 18:52:07 -05:00
Philipp Heckel
c76e55a1c8
Making RateLimiter and FixedLimiter, so they can both work with LimitWriter
2022-01-12 17:03:28 -05:00
Philipp Heckel
f6b9ebb693
Lots of tests
2022-01-12 11:05:04 -05:00
Philipp Heckel
68a324c206
Fail early for too-large attachments
2022-01-11 12:58:11 -05:00
Philipp Heckel
0b0595384e
Listen on Unix socket
2022-01-10 16:28:13 -05:00
Philipp Heckel
289a6fdd0f
Add attachment expiry option
2022-01-10 15:36:12 -05:00
Philipp Heckel
e8cb9e7fde
Better mime type probing
2022-01-10 13:38:51 -05:00
Philipp Heckel
b5183612be
Fix attachment pruning logging; .mp4 extension issue
2022-01-09 22:06:31 -05:00
Philipp Heckel
44a9509cd6
Properly handle different attachment use cases
2022-01-08 15:47:08 -05:00
Philipp Heckel
cefe276ce5
Tests for fileCache
2022-01-08 12:14:43 -05:00
Philipp Heckel
e7c19a2bad
Expire attachments properly
2022-01-07 15:15:33 +01:00
Philipp Heckel
c45a28e6af
Attachments limits; working visitor limit
2022-01-07 14:49:28 +01:00
Philipp Heckel
9171e94e5a
Fix file extension detection; fix HTTPS port
2022-01-06 14:45:23 +01:00
Philipp Heckel
5eca20469f
Attachment size limit
2022-01-06 01:04:56 +01:00
Philipp Heckel
24eb27d41c
Merge branch 'main' into attachments
2022-01-05 00:25:49 +01:00
Philipp Heckel
41c1189fee
Persist "click"
2022-01-04 23:40:41 +01:00
Philipp Heckel
2e40b895a7
Fix message truncation, relates to #84
2022-01-04 21:09:47 +01:00
Philipp Heckel
76d102f964
Add "truncated" flag to let Android app know
2022-01-04 20:53:32 +01:00
Philipp Heckel
807d2b0d9d
Truncate FCM messages if they are too long; This was trickier than expected; relates to #84
2022-01-04 20:43:37 +01:00
Philipp Heckel
722c579db0
Increase FCM priority for ntfy priority high and max, closes #70
2022-01-04 19:59:54 +01:00
Philipp Heckel
2930c4ff62
Preview URL
2022-01-04 19:45:29 +01:00
Philipp Heckel
38788bb2e9
WIP: attachments
2022-01-04 00:55:08 +01:00
Philipp Heckel
eb5b86ffe2
WIP: Attachments
2022-01-02 23:56:12 +01:00
Philipp Heckel
47b491b6e2
55s keepalive, 65s did not work; unsure why
2022-01-01 22:48:17 +01:00
Philipp Heckel
91ad69dd00
Bump keepalive interval to 65s after testing
2022-01-01 22:21:47 +01:00
Philipp Heckel
521aad7db5
Increase keepalive duration to 55s
2022-01-01 22:11:09 +01:00
Philipp Heckel
fe2988bb38
Reduce Firebase control channel keepalive message
2022-01-01 22:08:55 +01:00
Philipp Heckel
595ea87465
Switch VARCHAR(N) to TEXT, as they are equivalent in SQLite
2021-12-31 16:19:41 +01:00