Thibaut Girka
16b79a6237
Add options to configure filtering behavior
2019-07-15 00:48:28 +02:00
Thibaut Girka
bde7a415b9
Add a way to know why a status has been filtered, and show it anyway
2019-07-15 00:48:28 +02:00
Thibaut Girka
e9fac2def9
Do not keep polls pre-filled in thread mode
2019-07-15 00:41:09 +02:00
Thibaut Girka
e0bfa685c6
Fix error boundary CSS
2019-07-15 00:28:31 +02:00
Thibaut Girka
0baaee495f
Fix report dialog crashing when a toot gets deleted
...
Fixes #1155
2019-07-10 19:53:31 +02:00
ThibG
fce885f271
Merge pull request #1152 from ThibG/glitch-soc/merge-upstream
...
Merge upstream changes
2019-07-07 22:26:10 +02:00
Thibaut Girka
5ff9970c8d
Re-add route for direct timeline
2019-07-07 14:12:41 +02:00
ThibG
64f3bc77ac
[Glitch] Only scroll to the compose form if it's not horizontally in the viewport
...
Port c07cca4727
to glitch-soc
2019-07-07 14:03:12 +02:00
ThibG
a0b614f10a
Fix support for HTTP proxies ( #11245 )
...
* 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-07 13:53:09 +02:00
Thibaut Girka
7039dca12c
Merge commit 'c07cca4727041ea5a5721acbc603d4bfb45a15a6' into glitch-soc/merge-upstream
...
Unlike upstream, kept the direct timeline endpoint, as it is still of use in
glitch-soc.
2019-07-07 13:49:31 +02:00
ThibG
c07cca4727
Only scroll to the compose form if it's not horizontally in the viewport ( #11246 )
...
Avoids jumping the scroll around vertically when giving it focus and
editing long toots.
2019-07-06 18:18:08 +02:00
Eugen Rochko
ae003d54f9
Fix option to send e-mail notification about account action always being true ( #11242 )
2019-07-06 13:54:32 +02:00
ThibG
ed544f3166
Fix HTTP requests to IPv6 hosts ( #11240 )
2019-07-05 22:03:00 +02:00
Thibaut Girka
e5f4d83e60
Allow serializing local-only toots in backup service
...
Fixes #1153
2019-07-05 21:50:19 +02:00
Eugen Rochko
0c1b1069c9
Remove deprecated REST API GET /api/v1/statuses/:id/card
( #11213 )
2019-07-05 02:15:24 +02:00
Eugen Rochko
30f5bcf3e7
Remove deprecated REST API POST /api/v1/notifications/dismiss?id=:id
( #11214 )
2019-07-05 02:15:13 +02:00
Eugen Rochko
3fd6ab99e6
Remove deprecated REST API GET /api/v1/timelines/direct
( #11212 )
2019-07-05 02:14:56 +02:00
ThibG
47c30be8d8
[Glitch] Memoize ancestorIds and descendantIds in detailed status view
...
Port 99924f282f
to glitch-soc
2019-07-04 16:26:17 +02:00
ThibG
894d82a325
[Glitch] When deleting & redrafting a poll, fill in closest expires_in
...
Port dc88d226e1
to glitch-soc
2019-07-04 16:24:48 +02:00
Thibaut Girka
6ab84c12a7
Merge branch 'master' into glitch-soc/merge-upstream
2019-07-04 16:21:39 +02:00
ThibG
99924f282f
Memoize ancestorIds and descendantIds in detailed status view ( #11234 )
2019-07-02 16:03:54 +02:00
Eugen Rochko
3bc0c4a884
Remove unused StatsD code and expose StatsD as a global variable ( #11232 )
...
The instrumentation code was used for StatsD metrics collection
prior to the switch to the nsa gem and should have been removed
at that point as it no longer does anything at all
2019-07-02 11:34:39 +02:00
Eugen Rochko
1a747f7020
Fix statsd UDP sockets not being cleaned up in Sidekiq ( #11230 )
2019-07-02 01:01:17 +02:00
Eugen Rochko
bc60d794f8
Change ActivityPub::DeliveryWorker to not retry HTTP 501 errors ( #11233 )
2019-07-02 00:59:53 +02:00
ThibG
dc88d226e1
When deleting & redrafting a poll, fill in closest expires_in ( #11203 )
...
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-02 00:36:16 +02:00
Eugen Rochko
0d9ffe56fb
Add request pool to improve delivery performance ( #10353 )
...
* 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-02 00:34:38 +02:00
Thibaut Girka
c94966891a
Minor cleanup and maybe minor performance improvements
2019-07-01 19:31:21 +02:00
Thibaut Girka
9d6b46fe34
Minor optimization regarding regexp filtering in timelines
2019-07-01 19:31:21 +02:00
Thibaut Girka
c49f7d5d16
Use strict equality rather than Immutable.is as the compared props are values
2019-07-01 19:31:10 +02:00
Thibaut Girka
82a76f03a4
Assume children of visible IntersectionObserverArticle always change
...
This fixes multiple issues, while adding few computations
2019-07-01 19:31:10 +02:00
Thibaut Girka
c0b5ee315d
Revert to using upstream's optimisations
...
This *does* break things, as `shouldComponentUpdate` assume the
children to never change!
2019-07-01 19:31:10 +02:00
Thibaut Girka
0ef6a114e7
Fix error boundary DOM
2019-07-01 19:30:59 +02:00
Thibaut Girka
82cd138c89
Fix some React warnings
2019-07-01 19:30:59 +02:00
ThibG
687680f241
Merge pull request #1148 from ThibG/glitch-soc/merge-upstream
...
Merge upstream changes
2019-07-01 19:30:46 +02:00
Eugen Rochko
2cfa427ea7
Change domain block behaviour to prevent creation of accounts from suspended domains ( #11219 )
2019-07-01 19:13:30 +02:00
dependabot-preview[bot]
13f54f41ad
Bump rubocop from 0.71.0 to 0.72.0 ( #11229 )
...
Bumps [rubocop](https://github.com/rubocop-hq/rubocop ) from 0.71.0 to 0.72.0.
- [Release notes](https://github.com/rubocop-hq/rubocop/releases )
- [Changelog](https://github.com/rubocop-hq/rubocop/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rubocop-hq/rubocop/compare/v0.71.0...v0.72.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-01 22:36:45 +09:00
dependabot-preview[bot]
ffb6da8b78
Bump capybara from 3.24.0 to 3.25.0 ( #11225 )
...
Bumps [capybara](https://github.com/teamcapybara/capybara ) from 3.24.0 to 3.25.0.
- [Release notes](https://github.com/teamcapybara/capybara/releases )
- [Changelog](https://github.com/teamcapybara/capybara/blob/master/History.md )
- [Commits](https://github.com/teamcapybara/capybara/compare/3.24.0...3.25.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-01 22:34:51 +09:00
dependabot-preview[bot]
8c4287c239
Bump memory_profiler from 0.9.13 to 0.9.14 ( #11227 )
...
Bumps [memory_profiler](https://github.com/SamSaffron/memory_profiler ) from 0.9.13 to 0.9.14.
- [Release notes](https://github.com/SamSaffron/memory_profiler/releases )
- [Changelog](https://github.com/SamSaffron/memory_profiler/blob/master/CHANGELOG.md )
- [Commits](https://github.com/SamSaffron/memory_profiler/compare/v0.9.13...v0.9.14 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-01 22:34:25 +09:00
dependabot-preview[bot]
47b4cd0fff
Bump bullet from 6.0.0 to 6.0.1 ( #11228 )
...
Bumps [bullet](https://github.com/flyerhzm/bullet ) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/flyerhzm/bullet/releases )
- [Changelog](https://github.com/flyerhzm/bullet/blob/master/CHANGELOG.md )
- [Commits](https://github.com/flyerhzm/bullet/compare/6.0.0...6.0.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-01 22:33:54 +09:00
dependabot-preview[bot]
3936404911
Bump eslint-plugin-promise from 4.1.1 to 4.2.1 ( #11223 )
...
Bumps [eslint-plugin-promise](https://github.com/xjamundx/eslint-plugin-promise ) from 4.1.1 to 4.2.1.
- [Release notes](https://github.com/xjamundx/eslint-plugin-promise/releases )
- [Changelog](https://github.com/xjamundx/eslint-plugin-promise/blob/master/CHANGELOG.md )
- [Commits](https://github.com/xjamundx/eslint-plugin-promise/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-01 21:29:56 +09:00
dependabot-preview[bot]
d33a30377c
Bump webpack-cli from 3.3.4 to 3.3.5 ( #11221 )
...
Bumps [webpack-cli](https://github.com/webpack/webpack-cli ) from 3.3.4 to 3.3.5.
- [Release notes](https://github.com/webpack/webpack-cli/releases )
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md )
- [Commits](https://github.com/webpack/webpack-cli/compare/v3.3.4...v3.3.5 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-07-01 21:23:40 +09:00
ThibG
082b3b282f
Fix expiration date of filters being set to “Never” when editing them ( #11204 )
...
When editing a custom filter, select the shortest preset duration that
still covers the remaining time of that filter.
Fixes #9506
2019-06-30 16:11:21 +02:00
Eugen Rochko
06424786a1
Fix support for MP4 files that are actually M4V files ( #11210 )
...
Resolve #11187
2019-06-30 16:10:43 +02:00
Thibaut Girka
b6e9b7d1cd
[Glitch] When sending a toot, ensure a CW is only set if the CW field is visible
...
Partial port of ccc7fe3e1d
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.
2019-06-30 14:35:03 +02:00
ThibG
cbb41e2dad
[Glitch] Optimize makeGetStatus
...
Port f895bf1984
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2019-06-30 11:06:04 +02:00
ThibG
46829e009e
[Glitch] Use ScrollToOptions for smooth scrolling if supported
...
Port 84ff393842
to glitch-soc
Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2019-06-30 11:01:01 +02:00
Thibaut Girka
c5495a448c
Merge branch 'master' into glitch-soc/merge-upstream
2019-06-30 10:59:45 +02:00
ThibG
f895bf1984
Optimize makeGetStatus ( #11211 )
...
* Optimize makeGetStatus
Because `ImmutableList.filter` always returns a new object and `createSelector`
memoizes based on object identity, the selector returned by `makeGetStatus`
would *always* execute.
To avoid that, we wrap `getFilters` into a new memoizer that memoizes based on
deep equality, thus returning the same object as long as the filters haven't
changed, allowing the memoization of `makeGetStatus` to work.
Furthermore, we memoize the compiled regexs instead of recomputing them each
time the selector is called.
* Fix memoized result being cleared too often
* Make notifications use memoized getFiltersRegex
2019-06-30 00:12:38 +02:00
ThibG
ccc7fe3e1d
When sending a toot, ensure a CW is only set if the CW field is visible ( #11206 )
...
In some occasions, such as the browser or a browser extension auto-filling
the existing but disabled/hidden CW field, a CW can be set without the user
knowing.
2019-06-29 18:32:36 +02:00
ThibG
84ff393842
Use ScrollToOptions for smooth scrolling if supported ( #11207 )
2019-06-29 18:32:06 +02:00