Sorin Davidoi
ecab38fd66
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
7 years ago
kibigo!
bcc30c8697
Merge upstream!! #64 <3 <3
7 years ago
Akihiko Odaki (@fn_aki@pawoo.net)
9669f065af
Set default From address in config ( #3756 )
...
The old implementation sets default From address in mailers. It sets
the address from SMTP_FROM_ADDRESS, or notifications@localhost. The
behavior is occasionally undesired results.
In production environment, notifications@localhost is likely to be
incorrect.
In testing environment, the email address should not be varied by a
environment variable.
After appling this change,
In production environment, it will throw an exception when launching
Mastodon.
In testing environment, the address will be fixed with
notifications@localhost.
7 years ago
beatrix-bitrot
4f54d53a84
update local modifications for cors and cp
8 years ago
nullkal
9335e15763
Support multiple trusted proxy ip addresses ( #3639 )
...
* Support multiple trusted proxy ip addresses
* correct coding style
8 years ago
Matt Jankowski
eea027c5c2
Update Rails to version 5.1.1 ( #3121 )
...
* Update rails to version 5.1.1
* Run `rails app:update`
* Remove the override of polymorphic activity relationship
* Silence warning about otp_secret attribute being unknown to rails
* We will only introduce form_with where we want to use remote data
8 years ago
Clworld
2214d1ecd7
Set config.cache_store in environments file. ( #3219 )
...
* Set config.cache_store in application.rb
* Set config.cache_store in environments.
* fix code format.
8 years ago
Eugen Rochko
47fb42be01
Add back stdout logging to development environment after rails_12factor was removed ( #3011 )
8 years ago
alpaca-tc
4a4e6f59ec
Remove rails_12factor ( #2901 )
8 years ago
Eugen Rochko
78b890cc81
Fix Scheduler::SubscriptionsScheduler ( #2834 )
...
* Fix Scheduler::SubscriptionsScheduler, add worker test for it
* Change production log level of Sidekiq to "warn" instead of "info"
8 years ago
Eugen Rochko
c32e312061
More robust PuSH subscription refreshes ( #2799 )
...
* Fix #2473 - Use sidekiq scheduler to refresh PuSH subscriptions instead of cron
Fix an issue where / in domain would raise exception in TagManager#normalize_domain
PuSH subscriptions refresh done in a round-robin way to avoid hammering a single
server's hub in sequence. Correct handling of failures/retries through Sidekiq (see
also #2613 ). Optimize Account#with_followers scope. Also, since subscriptions
are now delegated to Sidekiq jobs, an uncaught exception will not stop the entire
refreshing operation halfway through
Fix #2702 - Correct user agent header on outgoing http requests
* Add test for SubscribeService
* Extract #expiring_accounts into method
* Make mastodon:push:refresh no-op
* Queues are now defined in sidekiq.yml
* Queues are now in sidekiq.yml
8 years ago
Eugen Rochko
0951a2f9f3
Clean up redis configuration. Allow using REDIS_URL to set advanced ( #2732 )
...
connection options instead of setting REDIS_HOST etc individually
Close #1986
8 years ago
Eugen Rochko
ef2af79a48
Replace sprockets/browserify with Webpack ( #2617 )
...
* Replace browserify with webpack
* Add react-intl-translations-manager
* Do not minify in development, add offline-plugin for ServiceWorker background cache updates
* Adjust tests and dependencies
* Fix production deployments
* Fix tests
* More optimizations
* Improve travis cache for npm stuff
* Re-run travis
* Add back support for custom.scss as before
* Remove offline-plugin and babili
* Fix issue with Immutable.List().unshift(...values) not working as expected
* Make travis load schema instead of running all migrations in sequence
* Fix missing React import in WarningContainer. Optimize rendering performance by using ImmutablePureComponent instead of
React.PureComponent. ImmutablePureComponent uses Immutable.is() to compare props. Replace dynamic callback bindings in
<UI />
* Add react definitions to places that use JSX
* Add Procfile.dev for running rails, webpack and streaming API at the same time
8 years ago
Akihiko Odaki
40a06ce911
Allow to set CA file for SMTP ( #2713 )
8 years ago
Matt Jankowski
f93d4d340d
Return force_ssl to the controller ( #2380 )
8 years ago
Matt Jankowski
9df261e46a
Make HSTS enable optional with force_ssl ( #2364 )
8 years ago
Matt Jankowski
04e2d502e0
Move force_ssl check to production config ( #2165 )
...
The force_ssl method from controllers does not add all of the options that the
sitewide configuration in a config block does. For example, HSTS enforcement is
not added by the controller method, but is added by this style.
8 years ago
Miguel Jacq
2d94636b58
Send nil for SMTP_LOGIN or SMTP_PASSWORD if it was left blank in the envfile, otherwise Ruby still attempts auth even if SMTP_AUTH_METHOD is none ( #2180 )
8 years ago
Miguel Jacq
609fe68e7b
Allow using an SMTP server without authentication ( #1597 )
...
* Allow using an SMTP server without authentication (e.g Postfix relay on the same host) by setting SMTP_LOGIN and SMTP_AUTH_METHOD to 'none'
* Add note in .env.production.sample about SMTP settings for servers where no auth is required
* Assume that SMTP_LOGIN and SMTP_PASSWORD will be blank if we set SMTP_AUTH_METHOD to none
8 years ago
Les Orchard
492e8ec00e
Add REDIS_DB env variable to configure Redis database ( #1366 )
8 years ago
Effy Elden
98aa3c9ccb
Modify ActionMailer configuration to default to ENV['LOCAL_DOMAIN'] if ENV['SMTP_DOMAIN'] is not set. The previous fallback, config.x.local_domain, is undefined when the code is called. ( #1745 )
8 years ago
James Moore
31f72c39a6
smtp delivery type fix ( #1556 )
...
* delivery fix
# Conflicts:
# config/environments/production.rb
* added stub in .env file
* reordered and added a comment
8 years ago
Eugen
9dac43b6d1
Change default log level in production from :debug to :info for less I/O ( #1579 )
8 years ago
Eugen
3120d41c53
Fix #1535 - #1372 set a wrong default on :openssl_verify_mode ( #1563 )
8 years ago
Alexander Mankuta
7ff773bed5
More SMTP customization ( #1372 )
...
* Allow SMTP auth method customization
* Add SMTP openssl_verify_mode option support
Allows one use self-signed certs with their SMTP server.
* Add SMTP enable_starttls_auto option support
8 years ago
Ash Furrow
90101a724c
Allows setting log level in env variable ( #1290 )
...
* Allows setting log level in env variable.
* Made changes based on feedback in #1290 .
8 years ago
Eugen Rochko
0cb5a2a0a7
Add digest e-mails
8 years ago
Eugen Rochko
75d5dc1df8
Improve glow
8 years ago
Eugen Rochko
efa4065029
Preheat status cache
8 years ago
Eugen Rochko
1e89e8e74d
Looks like log level :debug is required for activerecord times to be tracked
8 years ago
Eugen Rochko
8f9729ec2d
Fix activerecord logging in production
8 years ago
Eugen Rochko
096ff9ba38
Removed accidental n+1 query from notifications, updated some deps,
...
improved how "show more" link looks
8 years ago
Eugen Rochko
ef376b0bfd
Allow to specify trusted proxies through env
8 years ago
Eugen Rochko
7344c75a27
Fix code style
8 years ago
Effy Elden
432cc1d3c1
Set remote dev environments to use letter_opener_web, add default .env.vagrant variables
8 years ago
Eugen Rochko
31d48af0d1
Fix statsd null backend not being initialized properly
8 years ago
Eugen Rochko
86264a950c
Add optional StatsD performance tracking
8 years ago
Effy Elden
a898072d76
Add Heroku deployment support
8 years ago
Eugen Rochko
3c1c2b0e06
Adding rack timeout of 30sec, PuSH jobs moved to push queue so they
...
can be processed separately
8 years ago
Eugen Rochko
8b32b212de
Fix CDN_HOST variable requirement
8 years ago
Eugen Rochko
f613f2b84a
Only distribute statuses to followers who signed in in the last 2 weeks, add rake task for clearing feeds of inactive users
8 years ago
Eugen Rochko
0943e98288
Adding option to specify asset server, filter followers query by local accounts
...
during Fan Out On Write to load less stuff into memory
8 years ago
Eugen Rochko
8f0869876b
Improved configuration from ENV, cleaned up timeline filter methods
...
to be more readable, add extra logging to process feed service
8 years ago
Eugen Rochko
834f3c4388
Add tests for recently added API end points
8 years ago
Eugen Rochko
c3c122d2ba
Replace in-memory cache store with redis store, should decrease memory
...
footprint of each running process by 128mb
8 years ago
Eugen Rochko
6657414266
Adding OAuth access scopes, fixing OAuth authorization UI, adding rate limiting
...
to the API
8 years ago
Eugen Rochko
b92c8c3f87
More debugging
8 years ago
Eugen Rochko
032de4b5e8
More debugging
8 years ago
Eugen Rochko
aefc7d7694
Do not compress JS (perhaps it removes source maps, needed for debugging)
8 years ago
Eugen Rochko
fe77921e47
Catching more exceptions that slipped through, removing AR logging from
...
production as it's very verbose and not very useful
8 years ago
Eugen Rochko
85d89b472d
Optimized n+1 queries in accounts Atom and HTML views
...
Added stack trace for SQL queries in development
Removed badly thought out accounts/lookup API
8 years ago
Eugen Rochko
509c18eb13
Fix local follows, 404 in logs
8 years ago
Eugen Rochko
0f4bc56719
Improving production logs, removing n+1 on media attachments in atom,
...
adding attachments display to static views
8 years ago
Eugen Rochko
ae1fac0062
Add API to upload media attachments
8 years ago
Eugen Rochko
413e700fe0
Enhancing test suite but I think the problem might have been caching setting
8 years ago
Eugen Rochko
92afd29650
The frontend will now be an OAuth app, auto-authorized. The frontend will use an access token for API requests
...
Adding better errors for the API controllers, posting a simple status works from the frontend now
8 years ago
Eugen Rochko
49520d6e62
Adding React.js, Redux, revamping dashboard
8 years ago
Eugen Rochko
68c93f8b85
Final fix for ActionCable origin issues
8 years ago
Eugen Rochko
8985f8e66c
Fixing more configuration issues with ActionCable
8 years ago
Eugen Rochko
8459acd123
Fix for force SSL issue with websockets
8 years ago
Eugen Rochko
6deb9f966e
Live timelines using ActionCable
8 years ago
Eugen Rochko
10ba09f546
Upgrade to Rails 5.0.0.1
8 years ago
Eugen Rochko
6c480c8429
Oops, typo
9 years ago
Eugen Rochko
85b00d19b8
Moving Salmon notifications to background processing, fixing mini-profiler
...
behaviour with Turbolinks enabled, optimizing Rabl for production
9 years ago
Eugen Rochko
253ab26520
Adding more tests for helpers
9 years ago
Eugen Rochko
e2b846f630
Adding letter opener for development and Rack::Attack for future rate limiting implementations
9 years ago
Eugen Rochko
48d66a2055
Fixing the docker container setup (with assets compilation &co)
9 years ago
Eugen Rochko
2c374cd97c
Adding e-mail configuration
9 years ago
Eugen Rochko
1dad72bf13
Fixes and general progress
9 years ago
Eugen Rochko
709c6685a9
Made some progress
9 years ago
Eugen Rochko
9c4856bdb1
Initial commit
9 years ago