Claire 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							7bc301e184 
							
						 
					 
					
						
						
							
							Make Web::PushSubscription#user and Web::PushSubscription#access_token relationships non-optional ( #34498 )  
						
						... 
						
						
						
						Co-authored-by: Emelia Smith <ThisIsMissEm@users.noreply.github.com> 
						
					 
					
						2025-04-23 08:12:31 +00:00 
						 
				 
			
				
					
						
							
							
								S1m 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4a2813158d 
							
						 
					 
					
						
						
							
							Add support for standard webpush ( #33528 )  
						
						... 
						
						
						
						Co-authored-by: Claire <claire.github-309c@sitedethib.com> 
						
					 
					
						2025-01-14 09:14:00 +00:00 
						 
				 
			
				
					
						
							
							
								David Roetzel 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							05f23df3b7 
							
						 
					 
					
						
						
							
							Add endpoint to remove web push subscription ( #32626 )  
						
						
						
					 
					
						2024-10-23 08:02:31 +00:00 
						 
				 
			
				
					
						
							
							
								Matt Jankowski 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4aa26eba53 
							
						 
					 
					
						
						
							
							Extract WebPushRequest from push notification worker and subscription ( #32208 )  
						
						
						
					 
					
						2024-10-02 11:11:52 +00:00 
						 
				 
			
				
					
						
							
							
								Matt Jankowski 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							665f6f09a0 
							
						 
					 
					
						
						
							
							Add expired/revoked scopes for doorkeeper models via extension modules ( #29936 )  
						
						
						
					 
					
						2024-06-11 08:50:51 +00:00 
						 
				 
			
				
					
						
							
							
								Emelia Smith 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4655be0da6 
							
						 
					 
					
						
						
							
							Fix add validation to webpush subscription keys ( #30542 )  
						
						
						
					 
					
						2024-06-05 19:16:47 +00:00 
						 
				 
			
				
					
						
							
							
								Emelia Smith 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							eef2cc054f 
							
						 
					 
					
						
						
							
							Add url validation to Web::PushSubscription endpoints ( #30540 )  
						
						
						
					 
					
						2024-06-05 08:06:06 +00:00 
						 
				 
			
				
					
						
							
							
								Matt Jankowski 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f70f39dd04 
							
						 
					 
					
						
						
							
							Add explicit dependent: nil to associations ( #28169 )  
						
						
						
					 
					
						2023-12-01 15:52:47 +00:00 
						 
				 
			
				
					
						
							
							
								Nick Schonning 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							717683d1c3 
							
						 
					 
					
						
						
							
							Autofix Rubocop remaining Layout rules ( #23679 )  
						
						
						
					 
					
						2023-02-20 06:58:28 +01:00 
						 
				 
			
				
					
						
							
							
								Nick Schonning 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							2177daeae9 
							
						 
					 
					
						
						
							
							Autofix Rubocop Style/RedundantBegin ( #23703 )  
						
						
						
					 
					
						2023-02-19 07:09:40 +09:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							ce2148c571 
							
						 
					 
					
						
						
							
							Add policy param to POST /api/v1/push/subscriptions ( #16040 )  
						
						... 
						
						
						
						With possible values `all`, `followed`, `follower`, and `none`,
control from whom notifications will generate a Web Push alert 
						
					 
					
						2021-04-15 05:00:25 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							120965eb0b 
							
						 
					 
					
						
						
							
							Change Web Push API deliveries to use request pooling ( #16014 )  
						
						
						
					 
					
						2021-04-12 14:25:34 +02:00 
						 
				 
			
				
					
						
							
							
								dependabot-preview[bot] 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							78202e9138 
							
						 
					 
					
						
						
							
							Bump doorkeeper from 5.3.3 to 5.4.0 ( #13733 )  
						
						... 
						
						
						
						* Bump doorkeeper from 5.3.3 to 5.4.0
Bumps [doorkeeper](https://github.com/doorkeeper-gem/doorkeeper ) from 5.3.3 to 5.4.0.
- [Release notes](https://github.com/doorkeeper-gem/doorkeeper/releases )
- [Changelog](https://github.com/doorkeeper-gem/doorkeeper/blob/master/CHANGELOG.md )
- [Commits](https://github.com/doorkeeper-gem/doorkeeper/compare/v5.3.3...v5.4.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
* Fix tests
* Fix use of Doorkeeper::AccessToken.find_or_create_for
* Fix tests?
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Thibaut Girka <thib@sitedethib.com> 
						
					 
					
						2020-05-12 15:25:33 +02:00 
						 
				 
			
				
					
						
							
							
								abcang 
							
						 
					 
					
						
						
						
						
							
						
						
							07b057eabb 
							
						 
					 
					
						
						
							
							Validate Web::PushSubscription ( #11971 )  
						
						
						
					 
					
						2019-09-27 15:24:13 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							628da11e38 
							
						 
					 
					
						
						
							
							Do no retry web push workers if the server returns a 4xx response ( #9434 )  
						
						... 
						
						
						
						Add timeout of 10s to web push requests 
						
					 
					
						2018-12-17 03:14:13 +01:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							17dc07f667 
							
						 
					 
					
						
						
							
							Fix has_one association on Web::PushSubscription ( #7767 )  
						
						... 
						
						
						
						* Fix has_one association on Web::PushSubscription
* Fix code style issues 
						
					 
					
						2018-06-09 21:11:14 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							8378b72eba 
							
						 
					 
					
						
						
							
							Ensure push subscription is immediately removed when application is revoked ( #7548 )  
						
						... 
						
						
						
						* Ensure push subscription is immediately removed when application is revoked
* When token is revoked from app, unsubscribe too 
						
					 
					
						2018-05-19 21:05:08 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							4b94e9c65e 
							
						 
					 
					
						
						
							
							Improve payload format of Web Push API now that it's open ( #7521 )  
						
						... 
						
						
						
						> Good lord what is happening in there
Previously the contents of the Web Push API payloads closely resembled the structure of JavaScript's [Notification](https://developer.mozilla.org/en-US/docs/Web/API/Notification ). But now that the API is open to non-browser apps, and given that there is no required coupling between contents of the payload and a Notification object, here is how I changed the payload:
```json
{ 
  "access_token": "...",
  "preferred_locale": "en",
  "notification_id": "12345",
  "notification_type": "follow",
  "title": "So and so followed you",
  "body": "This is my bio",
  "icon": "https://example.com/avatar.png "
}
```
The title, body and icon attributes are included as a fallback so you can construct a minimal notification if you cannot perform a network request to the API to get more data. 
						
					 
					
						2018-05-19 14:46:47 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							b4fb766b23 
							
						 
					 
					
						
						
							
							Add REST API for Web Push Notifications subscriptions ( #7445 )  
						
						... 
						
						
						
						- POST /api/v1/push/subscription
- PUT /api/v1/push/subscription
- DELETE /api/v1/push/subscription
- New OAuth scope: "push" (required for the above methods) 
						
					 
					
						2018-05-11 11:49:12 +02:00 
						 
				 
			
				
					
						
							
							
								Yamagishi Kazutoshi 
							
						 
					 
					
						
						
						
						
							
						
						
							9613a53cb3 
							
						 
					 
					
						
						
							
							Update dependencies for Ruby (2018-04-23) ( #7237 )  
						
						... 
						
						
						
						* Update annotate to version 2.7.3
* Update aws-sdk-s3 to version 1.9.2
* Update browser to version 2.5.3
* Update capistrano to version 3.10.2
* Update domain_name to version 0.5.20180417
* Update http to version 3.2.0
* Update lograge to version 0.10.0
* Update oj to version 3.5.1
* Update parallel_tests to version 2.21.3
* Update puma to version 3.11.4
* Update rubocop to version 0.55.0
* Update scss_lint to version 0.57.0
* Update simplecov to version 0.16.1
* Update tty-command to version 0.8.0
* Update tty-prompt to version 0.16.0
* Update pkg-config to version 1.3.0
* Update fog-local to version 0.5.0
* Update fog-openstack to version 0.1.25
* Update devise-two-factor to version 3.0.3
* bundle update 
						
					 
					
						2018-04-23 11:29:17 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							24cafd73a2 
							
						 
					 
					
						
						
							
							Lists ( #5703 )  
						
						... 
						
						
						
						* Add structure for lists
* Add list timeline streaming API
* Add list APIs, bind list-account relation to follow relation
* Add API for adding/removing accounts from lists
* Add pagination to lists API
* Add pagination to list accounts API
* Adjust scopes for new APIs
- Creating and modifying lists merely requires "write" scope
- Fetching information about lists merely requires "read" scope
* Add test for wrong user context on list timeline
* Clean up tests 
						
					 
					
						2017-11-18 00:16:48 +01:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
						
						
							
						
						
							3e90987c8b 
							
						 
					 
					
						
						
							
							Fix some rubocop style issues ( #5730 )  
						
						
						
					 
					
						2017-11-17 10:06:26 +09:00 
						 
				 
			
				
					
						
							
							
								Daniel Hunsaker 
							
						 
					 
					
						
						
						
						
							
						
						
							cf7e840990 
							
						 
					 
					
						
						
							
							Update model annotations to use BIGINT for IDs ( #5461 )  
						
						... 
						
						
						
						All the migrations have been updated to use BIGINTs for ID fields in the DB, but ActiveRecord needs to be told to treat those values as BIGINT as well. This PR does that. 
						
					 
					
						2017-11-12 16:18:50 +01:00 
						 
				 
			
				
					
						
							
							
								unarist 
							
						 
					 
					
						
						
						
						
							
						
						
							bfa7f9ebf2 
							
						 
					 
					
						
						
							
							Fix WebPush (regression from  #4524 ) ( #4778 )  
						
						... 
						
						
						
						* Fix NoMethodError in Web::PushSubscription
```
undefined method `site_contact_email' for #<Class:0x00005976d13c40>
/usr/local/bundle/gems/activerecord-5.1.3/lib/active_record/dynamic_matchers.rb:22:in `method_missing'
/usr/local/bundle/gems/attr_encrypted-3.0.3/lib/attr_encrypted.rb:295:in `method_missing'
/usr/local/bundle/gems/attr_encrypted-3.0.3/lib/attr_encrypted/adapters/active_record.rb:129:in `method_missing_with_attr_encrypted'
/mastodon/app/models/web/push_subscription.rb:53:in `push_payload'
```
* Specify serializer in Web::NotificationSerializer 
						
					 
					
						2017-09-02 16:50:42 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
						
						
							
						
						
							74437c6bff 
							
						 
					 
					
						
						
							
							Refactor Web::PushSubscription, remove welcome message ( #4524 )  
						
						... 
						
						
						
						* Refactor Web::PushSubscription, remove welcome message
* Add missing helper
* Use locale of the receiver on push notifications (#4519 )
* Remove unused translations
* Fix dir on notifications 
						
					 
					
						2017-09-01 13:35:23 +02:00 
						 
				 
			
				
					
						
							
							
								Sorin Davidoi 
							
						 
					 
					
						
						
						
						
							
						
						
							d4c4820c03 
							
						 
					 
					
						
						
							
							fix(web_push_notifications): Send message with welcome notifications ( #4471 )  
						
						... 
						
						
						
						* fix(web_push_notifications): Send grouping title in welcome notification
* fix(web_push_notifications): Read message from last notification 
						
					 
					
						2017-08-01 06:00:13 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
						
						
							
						
						
							f0bb2c6d1e 
							
						 
					 
					
						
						
							
							Fix web push notifications "boost" icon not being loaded (regression from  #4426 ) ( #4431 )  
						
						
						
					 
					
						2017-07-28 20:26:54 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
						
						
							
						
						
							13bb1ddc7f 
							
						 
					 
					
						
						
							
							Use consistent icons for web push notifications, same as web UI ( #4426 )  
						
						
						
					 
					
						2017-07-28 18:13:42 +02:00 
						 
				 
			
				
					
						
							
							
								Sorin Davidoi 
							
						 
					 
					
						
						
						
						
							
						
						
							e67fc997dc 
							
						 
					 
					
						
						
							
							feat(web_push_notifications): Group notifications ( #4388 )  
						
						
						
					 
					
						2017-07-28 05:06:22 +02:00 
						 
				 
			
				
					
						
							
							
								Sorin Davidoi 
							
						 
					 
					
						
						
						
						
							
						
						
							e1798d0eb0 
							
						 
					 
					
						
						
							
							fix(push_subscription): Use star icon for favourite action ( #4396 )  
						
						
						
					 
					
						2017-07-27 15:46:33 +02:00 
						 
				 
			
				
					
						
							
							
								Sorin Davidoi 
							
						 
					 
					
						
						
						
						
							
						
						
							dcb9497148 
							
						 
					 
					
						
						
							
							fix(push_subscription): Guard against malformed favourite notification ( #4271 )  
						
						
						
					 
					
						2017-07-19 22:37:52 +02:00 
						 
				 
			
				
					
						
							
							
								Eugen Rochko 
							
						 
					 
					
						
						
						
						
							
						
						
							c2c93f8cd6 
							
						 
					 
					
						
						
							
							Fix deprecation warning for non-pipeline assets ( #4267 )  
						
						
						
					 
					
						2017-07-19 12:00:05 +02:00 
						 
				 
			
				
					
						
							
							
								Sorin Davidoi 
							
						 
					 
					
						
						
						
						
							
						
						
							8387b3928e 
							
						 
					 
					
						
						
							
							fix(push-subscriptions): Refactor how Sidekiq jobs are handled ( #4226 )  
						
						
						
					 
					
						2017-07-18 16:25:40 +02:00 
						 
				 
			
				
					
						
							
							
								Sorin Davidoi 
							
						 
					 
					
						
						
						
						
							
						
						
							0c7c188c45 
							
						 
					 
					
						
						
							
							Web Push Notifications ( #3243 )  
						
						... 
						
						
						
						* feat: Register push subscription
* feat: Notify when mentioned
* feat: Boost, favourite, reply, follow, follow request
* feat: Notification interaction
* feat: Handle change of public key
* feat: Unsubscribe if things go wrong
* feat: Do not send normal notifications if push is enabled
* feat: Focus client if open
* refactor: Move push logic to WebPushSubscription
* feat: Better title and body
* feat: Localize messages
* chore: Fix lint errors
* feat: Settings
* refactor: Lazy load
* fix: Check if push settings exist
* feat: Device-based preferences
* refactor: Simplify logic
* refactor: Pull request feedback
* refactor: Pull request feedback
* refactor: Create /api/web/push_subscriptions endpoint
* feat: Spec PushSubscriptionController
* refactor: WebPushSubscription => Web::PushSubscription
* feat: Spec Web::PushSubscription
* feat: Display first media attachment
* feat: Support direction
* fix: Stuff broken while rebasing
* refactor: Integration with session activations
* refactor: Cleanup
* refactor: Simplify implementation
* feat: Set VAPID keys via environment
* chore: Comments
* fix: Crash when no alerts
* fix: Set VAPID keys in testing environment
* fix: Follow link
* feat: Notification actions
* fix: Delete previous subscription
* chore: Temporary logs
* refactor: Move migration to a later date
* fix: Fetch the correct session activation and misc bugs
* refactor: Move migration to a later date
* fix: Remove follow request (no notifications)
* feat: Send administrator contact to push service
* feat: Set time-to-live
* fix: Do not show sensitive images
* fix: Reducer crash in error handling
* feat: Add badge
* chore: Fix lint error
* fix: Checkbox label overlap
* fix: Check for payload support
* fix: Rename action "type" (crash in latest Chrome)
* feat: Action to expand notification
* fix: Lint errors
* fix: Unescape notification body
* fix: Do not allow boosting if the status is hidden
* feat: Add VAPID keys to the production sample environment
* fix: Strip HTML tags from status
* refactor: Better error messages
* refactor: Handle browser not implementing the VAPID protocol (Samsung Internet)
* fix: Error when target_status is nil
* fix: Handle lack of image
* fix: Delete reference to invalid subscriptions
* feat: Better error handling
* fix: Unescape HTML characters after tags are striped
* refactor: Simpify code
* fix: Modify to work with #4091 
* Sort strings alphabetically
* i18n: Updated Polish translation
it annoys me that it's not fully localized :P
* refactor: Use current_session in PushSubscriptionController
* fix: Rebase mistake
* fix: Set cacheName to mastodon
* refactor: Pull request feedback
* refactor: Remove logging statements
* chore(yarn): Fix conflicts with master
* chore(yarn): Copy latest from master
* chore(yarn): Readd offline-plugin
* refactor: Use save! and update!
* refactor: Send notifications async
* fix: Allow retry when push fails
* fix: Save track for failed pushes
* fix: Minify sw.js
* fix: Remove account_id from fabricator 
						
					 
					
						2017-07-13 22:15:32 +02:00