about summary refs log tree commit diff
path: root/app
AgeCommit message (Collapse)Author
2019-07-15Do not keep polls pre-filled in thread modeThibaut Girka
2019-07-15Fix error boundary CSSThibaut Girka
2019-07-13Add a spam check (#11217)Eugen Rochko
* Add a spam check * Use Nilsimsa to generate locality-sensitive hashes and compare using Levenshtein distance * Add more tests * Add exemption when the message is a reply to something that mentions the sender * Use Nilsimsa Compare Value instead of Levenshtein distance * Use MD5 for messages shorter than 10 characters * Add message to automated report, do not add non-public statuses to automated report, add trust level to accounts and make unsilencing raise the trust level to prevent repeated spam checks on that account * Expire spam check data after 3 months * Add support for local statuses, reduce expiration to 1 week, always create a report * Add content warnings to the spam check and exempt empty statuses * Change Nilsimsa threshold to 95 and make sure removed statuses are removed from the spam check * Add all matched statuses into automatic report
2019-07-12Change the retry limit in error of web push notification (#11292)han@highemelry
- Change the maximum count of retry for web push notification (Default -> 5). - In case of high load of subscribe server, the retries will be repeated many times. - Because the retries occupy the default queue, maximum retry count should be reduced.
2019-07-11Add ActivityPub secure mode (#11269)Eugen Rochko
* Add HTTP signature requirement for served ActivityPub resources * Change `SECURE_MODE` to `AUTHORIZED_FETCH` * Add 'Signature' to 'Vary' header and improve code style * Improve code style by adding `public_fetch_mode?` method
2019-07-11Fix BlockService trying to reject incorrect follow request (#11288)ThibG
Fixes #11148
2019-07-11Add HTTP signatures to all outgoing ActivityPub GET requests (#11284)Eugen Rochko
2019-07-10Fix report dialog crashing when a toot gets deletedThibaut Girka
Fixes #1155
2019-07-10Refactor fetching of remote resources (#11251)Eugen Rochko
2019-07-10Drop magic-public-key from webfinger replies as it's only used for OStatus ↵ThibG
(#11280)
2019-07-10Fix handling of webfinger redirects in ResolveAccountService (#11279)ThibG
2019-07-10Fix activity being rendered within activity due to caching (#11271)Eugen Rochko
Fix #11270
2019-07-09Refactor domain block checks (#11268)Eugen Rochko
2019-07-08Fix Status.remote scope matching *all* statuses (#11265)ThibG
2019-07-08Remove unused remote unfollow controller (#11250)Eugen Rochko
2019-07-08Refactor controllers for statuses, accounts, and more (#11249)Eugen Rochko
2019-07-08Fix BackupService crashing when an attachment is missing (#11241)ThibG
* Fix BackupService crashing when an attachment is missing For various reasons such as admin error or out-of-sync media and database backups, it might be possible for local attachments to be lost. This commit allows the BackupService to continue its work even if some media file is missing. * Change error message
2019-07-07Merge pull request #1152 from ThibG/glitch-soc/merge-upstreamThibG
Merge upstream changes
2019-07-07Remove Atom feeds and old URLs in the form of `GET /:username/updates/:id` ↵Eugen Rochko
(#11247)
2019-07-07[Glitch] Only scroll to the compose form if it's not horizontally in the ↵ThibG
viewport Port c07cca4727041ea5a5721acbc603d4bfb45a15a6 to glitch-soc
2019-07-07Fix support for HTTP proxies (#11245)ThibG
* Disable incorrect check for hidden services in Socket Hidden services can only be accessed with an HTTP proxy, in which case the host seen by the Socket class will be the proxy, not the target host. Hidden services are already filtered in `Request#initialize`. * Use our Socket class to connect to HTTP proxies Avoid the timeout logic being bypassed * Add support for IP addresses in Request::Socket * Refactor a bit, no need to keep the DNS resolver around
2019-07-07Merge commit 'c07cca4727041ea5a5721acbc603d4bfb45a15a6' into ↵Thibaut Girka
glitch-soc/merge-upstream Unlike upstream, kept the direct timeline endpoint, as it is still of use in glitch-soc.
2019-07-07Fix URLs appearing twice in errors of ActivityPub::DeliveryWorker (#11231)Eugen Rochko
2019-07-07Fix support for HTTP proxies (#11245)ThibG
* Disable incorrect check for hidden services in Socket Hidden services can only be accessed with an HTTP proxy, in which case the host seen by the Socket class will be the proxy, not the target host. Hidden services are already filtered in `Request#initialize`. * Use our Socket class to connect to HTTP proxies Avoid the timeout logic being bypassed * Add support for IP addresses in Request::Socket * Refactor a bit, no need to keep the DNS resolver around
2019-07-06Remove Salmon and PubSubHubbub (#11205)Eugen Rochko
* Remove Salmon and PubSubHubbub endpoints * Add error when trying to follow OStatus accounts * Fix new accounts not being created in ResolveAccountService
2019-07-06Only scroll to the compose form if it's not horizontally in the viewport ↵ThibG
(#11246) Avoids jumping the scroll around vertically when giving it focus and editing long toots.
2019-07-06Fix option to send e-mail notification about account action always being ↵Eugen Rochko
true (#11242)
2019-07-05Fix HTTP requests to IPv6 hosts (#11240)ThibG
2019-07-05Allow serializing local-only toots in backup serviceThibaut Girka
Fixes #1153
2019-07-05Remove deprecated REST API `GET /api/v1/statuses/:id/card` (#11213)Eugen Rochko
2019-07-05Remove deprecated REST API `GET /api/v1/timelines/direct` (#11212)Eugen Rochko
2019-07-04[Glitch] Memoize ancestorIds and descendantIds in detailed status viewThibG
Port 99924f282f53593e670c70a38450a1c0e2d24c20 to glitch-soc
2019-07-04[Glitch] When deleting & redrafting a poll, fill in closest expires_inThibG
Port dc88d226e1fdb20499d6e81838b81894b2d0be2d to glitch-soc
2019-07-04Merge branch 'master' into glitch-soc/merge-upstreamThibaut Girka
2019-07-02Memoize ancestorIds and descendantIds in detailed status view (#11234)ThibG
2019-07-02Fix statsd UDP sockets not being cleaned up in Sidekiq (#11230)Eugen Rochko
2019-07-02Change ActivityPub::DeliveryWorker to not retry HTTP 501 errors (#11233)Eugen Rochko
2019-07-02When deleting & redrafting a poll, fill in closest expires_in (#11203)ThibG
Use the smallest preset expires_in such that the new poll would not expire before the old one. In the typical case of a quick delete & redraft, this results in using the same poll duration. Fixes #10567
2019-07-02Add request pool to improve delivery performance (#10353)Eugen Rochko
* Add request pool to improve delivery performance Fix #7909 * Ensure connection is closed when exception interrupts execution * Remove Timeout#timeout from socket connection * Fix infinite retrial loop on HTTP::ConnectionError * Close sockets on failure, reduce idle time to 90 seconds * Add MAX_REQUEST_POOL_SIZE option to limit concurrent connections to the same server * Use a shared pool size, 512 by default, to stay below open file limit * Add some tests * Add more tests * Reduce MAX_IDLE_TIME from 90 to 30 seconds, reap every 30 seconds * Use a shared pool that returns preferred connection but re-purposes other ones when needed * Fix wrong connection being returned on subsequent calls within the same thread * Reduce mutex calls on flushes from 2 to 1 and add test for reaping
2019-07-01Minor cleanup and maybe minor performance improvementsThibaut Girka
2019-07-01Minor optimization regarding regexp filtering in timelinesThibaut Girka
2019-07-01Use strict equality rather than Immutable.is as the compared props are valuesThibaut Girka
2019-07-01Assume children of visible IntersectionObserverArticle always changeThibaut Girka
This fixes multiple issues, while adding few computations
2019-07-01Revert to using upstream's optimisationsThibaut Girka
This *does* break things, as `shouldComponentUpdate` assume the children to never change!
2019-07-01Fix error boundary DOMThibaut Girka
2019-07-01Fix some React warningsThibaut Girka
2019-07-01Change domain block behaviour to prevent creation of accounts from suspended ↵Eugen Rochko
domains (#11219)
2019-06-30Fix expiration date of filters being set to “Never” when editing them ↵ThibG
(#11204) When editing a custom filter, select the shortest preset duration that still covers the remaining time of that filter. Fixes #9506
2019-06-30Fix support for MP4 files that are actually M4V files (#11210)Eugen Rochko
Resolve #11187
2019-06-30[Glitch] When sending a toot, ensure a CW is only set if the CW field is visibleThibaut Girka
Partial port of ccc7fe3e1d04c7cabad916e4e57c7739743d5c91 to glitch-soc It doesn't ensure the field isn't changed, just that it isn't submitted if the field isn't visible. Ensuring the field isn't changed would require reworking the “always show CW field” feature.