Ivan Tashkinov
5992382cf8
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
...
# Conflicts:
# CHANGELOG.md
# lib/mix/tasks/pleroma/database.ex
# lib/pleroma/web/templates/feed/feed/_activity.rss.eex
2021-02-11 19:31:57 +03:00
Ivan Tashkinov
a996ab46a5
[ #3213 ] Reorganized hashtags cleanup. Transaction-wrapped Hashtag.get_or_create_by_names/1. Misc. improvements.
2021-02-11 19:30:21 +03:00
008499f65a
Merge branch 'develop' into 'fix/2412-filters'
...
# Conflicts:
# CHANGELOG.md
2021-02-03 14:23:23 +00:00
Ivan Tashkinov
1b49b8efe5
Merge remote-tracking branch 'remotes/origin/develop' into feature/object-hashtags-rework
...
# Conflicts:
# CHANGELOG.md
2021-01-31 20:38:58 +03:00
Ivan Tashkinov
9948ff3356
[ #3213 ] Added HashtagsCleanupWorker periodic job.
2021-01-31 18:24:19 +03:00
d7af0294e6
Merge branch 'service-worker-allowed-header' into 'develop'
...
Ability to set custom HTTP headers per each frontend
See merge request pleroma/pleroma!3247
2021-01-26 18:14:01 +00:00
Alexander Strizhakov
875fbaae35
support for expires_in/expires_at in filters
2021-01-26 08:27:45 +03:00
sadposter
3aa25b008d
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2021-01-23 22:38:07 +00:00
003402df40
Add ability to invalidate cache entries for Apache
2021-01-21 14:20:13 -06:00
eugenijm
7fcaa188a0
Allow to define custom HTTP headers per each frontend
2021-01-21 21:55:23 +03:00
Alexander Strizhakov
5ade430e46
changed naming in changelog
2021-01-21 10:13:02 +03:00
Alexander Strizhakov
b4ff63d020
configurable limits for ConcurrentLimiter
...
Pleroma.Web.RichMedia.Helpers & Pleroma.Web.MediaProxy
2021-01-21 09:47:21 +03:00
2926713fe5
Merge branch 'deprecate-public_endpoint' into 'develop'
...
Deprecate Uploaders.S3, :public_endpoint
See merge request pleroma/pleroma!3251
2021-01-20 22:48:48 +00:00
086100e3b7
Consistent comment style for :ex_aws
2021-01-20 16:39:39 -06:00
f9e0c05ca4
Only run one attachment cleanup job per node
...
The previous limit of 5 was probably causing massing performance issues due to concurrent full table scans.
2021-01-15 14:50:32 -06:00
f0ab60189e
truncated_namespace should default to nil
2021-01-13 11:54:00 -06:00
8b28dce82a
Deprecate Pleroma.Uploaders.S3, :public_endpoint
2021-01-12 16:31:35 -06:00
Alex Gleason
1438fd9583
Merge remote-tracking branch 'upstream/develop' into block-behavior
2021-01-06 15:22:35 -06:00
d69c78ceb9
Remove configurability of upload proxy opts, simplify
2021-01-05 15:06:00 -06:00
sadposter
6cd0586ef9
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-12-29 13:16:14 +00:00
lain
e4f1d8f48c
Merge branch 'cachex-test' into 'develop'
...
Test framework overhaul (speed, reliability)
See merge request pleroma/pleroma!3209
2020-12-26 10:26:35 +00:00
lain
9a744d49c8
Jason: Remove by now superfluous jason_types file
2020-12-18 17:44:19 +01:00
Ivan Tashkinov
62bf4a1292
[ #2353 ] Virtually never-expiring OAuth tokens (new and already issued ones).
2020-12-17 20:49:00 +03:00
Alexander Strizhakov
cebe3c7def
Fix for dropping posts/notifs in WS when mix task is executed
...
- start oban in mix tasks with empty queues, plugins and crontab
- fix for update_users_following_followers_counts
- fix for removed logo.png
- typo in resend confirmation emails mix task docs
- fix for uploads mix task (start Majic.Pool)
- fix for creating user mix task (start :fast_html app)
2020-12-14 11:02:32 -06:00
Ivan Tashkinov
7fff9c1bee
Tweaks to OAuth entities expiration: changed default to 30 days, removed hardcoded values usage, fixed OAuthView (expires_in).
2020-12-09 21:14:39 +03:00
Alexander Strizhakov
94480c6607
removing fed sockets settings
2020-11-26 17:39:38 +03:00
lain
11e0d5f9ac
Password Resets: Don't accept tokens above a certain age.
...
By default, one day
2020-11-19 12:27:06 +01:00
rinpatch
2c55f7d7cb
Remove FedSockets
...
Current FedSocket implementation has a bunch of problems. It doesn't
have proper error handling (in case of an error the server just doesn't
respond until the connection is closed, while the client doesn't match
any error messages and just assumes there has been an error after 15s)
and the code is full of bad descisions (see: fetch registry which uses
uuids for no reason and waits for a response by recursively querying a
ets table until the value changes, or double JSON encoding).
Sometime ago I almost completed rewriting fedsockets from scrach to
adress these issues. However, while doing so, I realized that fedsockets
are just too overkill for what they were trying to accomplish, which is
reduce the overhead of federation by not signing every message.
This could be done without reimplementing failure states and endpoint
logic we already have with HTTP by, for example, using TLS cert auth,
or switching to a more performant signature algorithm. I opened
https://git.pleroma.social/pleroma/pleroma/-/issues/2262 for further
discussion on alternatives to fedsockets.
From discussions I had with other Pleroma developers it seems like they
would approve the descision to remove them as well,
therefore I am submitting this patch.
2020-11-17 17:28:30 +03:00
sadposter
7947236575
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-11-15 19:40:23 +00:00
lain
294628d981
Merge branch 'feature/expire-mutes' into 'develop'
...
Expiring mutes for users and activities
Closes #1817
See merge request pleroma/pleroma!2971
2020-11-05 12:44:16 +00:00
lain
d8d4e96230
Merge branch 'default-mrf' into 'develop'
...
Add TagPolicy as default MRF
See merge request pleroma/pleroma!2834
2020-11-04 15:54:12 +00:00
lain
dd2b3a8da9
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/expire-mutes
2020-11-04 16:51:42 +01:00
lain
bae48c98e3
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into alexgleason/pleroma-block-behavior
2020-11-04 16:18:11 +01:00
sadposter
ddf36b096e
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-11-01 12:22:28 +00:00
Egor Kislitsyn
4a2d7a7a5d
Merge remote-tracking branch 'origin/develop' into feature/account-export
2020-10-28 15:33:36 +04:00
03a318af9a
Merge branch 'develop' into 'feature/autofollowing'
...
# Conflicts:
# CHANGELOG.md
2020-10-27 22:13:50 +00:00
Mark Felder
291189357b
Merge branch 'develop' into feature/account-export
2020-10-27 12:54:33 -05:00
Mark Felder
9e54ef086b
Merge branch 'develop' into feature/account-export
2020-10-27 12:51:31 -05:00
5aff479951
Merge branch '1668-prometheus-access-restrictions' into 'develop'
...
[#1668 ] App metrics endpoint (Prometheus) access restrictions
Closes #1668
See merge request pleroma/pleroma!3093
2020-10-27 17:47:56 +00:00
e062329a17
Merge branch 'develop' into 'feature/autofollowing'
...
# Conflicts:
# CHANGELOG.md
2020-10-27 17:42:24 +00:00
lain
04b7505c75
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into alexgleason/pleroma-block-behavior
2020-10-26 17:50:34 +01:00
Egor Kislitsyn
ad605e3e16
Rename Pleroma.Backup
to Pleroma.User.Backup
2020-10-20 17:16:58 +04:00
Ivan Tashkinov
524fb0e4c2
[ #1668 ] Restricted access to app metrics endpoint by default. Added ability to configure IP whitelist for this endpoint.
...
Added tests and documentation.
2020-10-18 21:22:21 +03:00
Ivan Tashkinov
9ea31b373f
Merge remote-tracking branch 'remotes/origin/develop' into chore/elixir-1.11
2020-10-17 17:53:47 +03:00
1b8fd7e65a
Adds feature to permit e.g., local admins and community moderators to automatically follow all newly registered accounts
2020-10-16 17:36:02 +00:00
Mark Felder
1fb9452131
Merge branch 'develop' into feature/account-export
2020-10-14 15:27:15 -05:00
Alex Gleason
b3d6cf9022
Merge remote-tracking branch 'upstream/develop' into block-behavior
2020-10-13 19:22:32 -05:00
Mark Felder
b738f70953
Merge branch 'develop' into feature/gen-magic
2020-10-13 10:08:38 -05:00
Mark Felder
64553ebae2
Merge branch 'develop' into chore/elixir-1.11
2020-10-13 09:54:53 -05:00
Alexander Strizhakov
3be8ab5103
RemoteIp module name
2020-10-13 16:43:50 +03:00
Alex Gleason
2fc7ce3e1e
Blocks: add blockers_visible config
2020-10-10 01:58:57 -05:00
Mark Felder
04b514c567
Merge branch 'develop' into feature/gen-magic
2020-10-09 11:26:10 -05:00
Mark Felder
87fc5a40f4
instrumenters has no effect in Endpoint anymore
2020-10-07 11:52:23 -05:00
Mark Felder
fddea9e3ce
:pubsub is deprecated and replaced wit :pubsub_server
2020-10-07 10:34:24 -05:00
Egor Kislitsyn
e52dd62e14
Add configurable temporary directory
2020-10-07 18:34:30 +04:00
Egor Kislitsyn
3ad7492f9d
Add config for Pleroma.Backup
2020-10-07 18:34:29 +04:00
Egor Kislitsyn
a0ad9bd734
Add BackupWorker
2020-10-07 18:34:28 +04:00
Mark Felder
d43d05005a
Move hardcoded default configuration into config.exs
2020-10-06 17:02:46 -05:00
sadposter
a9938611f7
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-10-02 15:09:47 +01:00
Alexander Strizhakov
cbdaabad34
web push http_client fix
2020-10-01 13:32:11 +03:00
Roman Chvanikov
4987ee6256
Merge branch 'develop' into feature/expire-mutes
2020-09-20 19:27:27 +03:00
6c052bd5b6
Merge branch 'media-preview-proxy-nostream' into 'develop'
...
Media preview proxy
See merge request pleroma/pleroma!3001
2020-09-18 18:38:20 +00:00
lain
7e02f4ed3b
Merge branch 'feature/2118-web-push-encryption-http' into 'develop'
...
Make WebPushEncryption use Pleroma.HTTP as an HTTP adapter
Closes #2118
See merge request pleroma/pleroma!3008
2020-09-18 12:25:10 +00:00
Steven Fuchs
f2ef9735c5
Federate data through persistent websocket connections
2020-09-18 11:58:22 +00:00
Sergey Suprunenko
226fa3e486
Make WebPushEncryption use Pleroma.HTTP as an HTTP adapter
2020-09-17 22:10:55 +02:00
Ivan Tashkinov
7cdbd91d83
[ #2497 ] Configurability of :min_content_length (preview proxy). Refactoring, documentation, tests.
2020-09-17 17:13:40 +03:00
Roman Chvanikov
44e8b6037a
Merge branch 'develop' into feature/expire-mutes
2020-09-17 14:54:00 +03:00
Ivan Tashkinov
2f155fb89f
Merge remote-tracking branch 'remotes/origin/develop' into media-preview-proxy-nostream
2020-09-15 20:29:39 +03:00
sadposter
95a1e5bf5a
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-09-15 17:21:18 +01:00
rinpatch
0b5e72ecf0
Remove :managed_config
option.
...
In practice, it was already removed half a year ago, but the description
and cheatsheet entries were still there.
The migration intentionally does not use ConfigDB.get_by_params, since
this will break migration code as soon as we add a new field is added
to ConfigDB.
Closes #2086
2020-09-14 18:04:16 +03:00
Roman Chvanikov
c5830ac037
Merge develop
2020-09-13 12:24:57 +03:00
Ivan Tashkinov
0bda85857e
Merge remote-tracking branch 'remotes/origin/develop' into media-preview-proxy
...
# Conflicts:
# lib/pleroma/instances/instance.ex
2020-09-11 17:19:58 +03:00
Mark Felder
55562ca936
Merge branch 'develop' into feature/gen-magic
2020-09-10 16:05:22 -05:00
Alexander Strizhakov
2c2094d4b2
configurable lifetime for ephemeral activities
2020-09-10 21:51:59 +03:00
Alexander Strizhakov
9bf1065a06
schedule activity expiration in Oban
2020-09-10 21:50:40 +03:00
Alexander Strizhakov
7dd986a563
expire mfa tokens through Oban
2020-09-10 16:01:19 +03:00
Alexander Strizhakov
3ce658b930
schedule expired oauth tokens deletion with Oban
2020-09-10 16:01:19 +03:00
Mark Felder
4ee99dafcc
Merge branch 'develop' into media-preview-proxy
2020-09-09 11:11:36 -05:00
sadposter
d0ffefc270
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-09-09 09:35:48 +01:00
Mark Felder
14d07081fd
Feed provider only generates a redirect, so always activate it.
...
Making this configurable is misleading.
2020-09-08 20:21:34 +03:00
Mark Felder
630444ee08
Do not make RelMe metadata provider optional.
...
There's really no sound reason to turn this off anyway.
2020-09-08 20:21:34 +03:00
Roman Chvanikov
880a92ccc7
Merge branch 'develop' into feature/expire-mutes
2020-09-08 15:16:43 +03:00
Roman Chvanikov
c56e3d4f3b
Add expires_in param for account mutes
2020-09-08 13:26:44 +03:00
Alexander Strizhakov
a83916fdac
adapter options unification
...
not needed options deletion
2020-09-07 19:59:17 +03:00
Alexander Strizhakov
ee67c98e55
removing Stats worker from Oban cron jobs
2020-09-07 19:16:14 +03:00
sadposter
1c44d476e7
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-09-07 09:57:00 +01:00
Ivan Tashkinov
f170d47130
[ #2497 ] Adjusted media proxy preview invalidation. Allowed client-side caching for media preview. Adjusted prewarmer to fetch only proxiable URIs.
...
Removed :preview pool in favor of existing :media one. Misc. refactoring.
2020-09-05 20:19:09 +03:00
Mark Felder
b529616e11
Increase pool and timeout for preview so it catches slow media pool responses
2020-09-03 15:08:12 -05:00
Mark Felder
6141eb94ab
Fetch preview requests through the MediaProxy. Separate connection options are not needed.
...
Use a separate pool for preview requests
2020-09-03 14:42:11 -05:00
Mark Felder
85446cc30c
Merge branch 'develop' into media-preview-proxy
2020-09-03 10:34:06 -05:00
rinpatch
19691389b9
Rich media: Add failure tracking
2020-09-02 14:59:52 +03:00
Alexander Strizhakov
c17d83cd73
improvements and fixes for http requests
...
- fix for gun worker termination in some circumstances
- pool for http clients (ex_aws, tzdata)
- default pool timeouts for gun
- gun retries on gun_down messages
- s3 upload timeout if streaming enabled
2020-09-02 09:04:23 +03:00
sadposter
7ac5f210ea
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-08-30 02:05:25 +01:00
Mark Felder
899ea2da3e
Switch to imagemagick, only support videos
2020-08-25 17:18:22 -05:00
Mark Felder
479578b148
Merge branch 'develop' into feld-2168-media-preview-proxy
2020-08-25 11:57:23 -05:00
lain
c1d51944c7
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into frontend-bundles-downloads
2020-08-25 11:44:51 +02:00
sadposter
166db7a3b6
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-08-24 17:04:51 +01:00
Ivan Tashkinov
aa0a5ffb48
[ #2497 ] Media preview proxy: added quality
config setting, adjusted width/height defaults.
2020-08-21 08:59:08 +03:00
Ivan Tashkinov
4ee15e991e
[ #2497 ] Media preview proxy config refactoring & documentation.
2020-08-19 21:36:26 +03:00
Ivan Tashkinov
da116d81fb
[ #2497 ] Added video preview proxy. Switched from exexec to Port.
2020-08-18 18:23:27 +03:00
Ivan Tashkinov
27e7999a15
Merge remote-tracking branch 'remotes/origin/develop' into 2168-media-preview-proxy
2020-08-18 18:02:09 +03:00
lain
aabc26a573
Pleroma.Upload: Set default upload name / description based on config.
2020-08-18 13:21:30 +02:00
Ivan Tashkinov
95529ab709
[ #2046 ] Defaulted pleroma/restrict_unauthenticated basing on instance privacy setting (i.e. restrict on private instances only by default).
2020-08-14 20:55:45 +03:00
sadposter
735ceb2115
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-08-13 20:03:33 +01:00
Ivan Tashkinov
2def3cbf41
Merge remote-tracking branch 'remotes/origin/develop' into 2168-media-preview-proxy
...
# Conflicts:
# config/config.exs
# mix.lock
2020-08-11 15:13:29 +03:00
lain
d0fc48ea67
Merge branch 'develop' into 'feat/floki-fast-html-2'
...
# Conflicts:
# config/config.exs
2020-08-09 10:53:58 +00:00
Mark Felder
54e2af8293
Merge branch 'develop' into fix/ldap-auth-issues
2020-08-07 14:55:22 -05:00
rinpatch
325c7c924b
Make Floki use fast_html
2020-08-07 16:45:33 +03:00
Ivan Tashkinov
1298a2ea2c
Merge remote-tracking branch 'remotes/origin/develop' into 2168-media-preview-proxy
...
# Conflicts:
# mix.lock
2020-08-07 09:38:05 +03:00
Alex Gleason
e639eee82e
restricted_nicknames: Add names from MastoAPI endpoints
2020-08-06 18:01:29 -05:00
Mark Felder
d5e4d8a6f3
Define default authenticator in the config
2020-08-05 09:41:17 -05:00
lain
532d6f94ae
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into frontend-bundles-downloads
2020-08-04 15:10:36 +02:00
lain
28584bb224
Merge branch 'email-blacklist' into 'develop'
...
Add email blacklist, fixes #1404
Closes #1404
See merge request pleroma/pleroma!2837
2020-08-04 11:00:30 +00:00
lain
e3953923ac
Merge branch 'fixes_1957_add_option_to_send_user_chatmessage_instead_of_dm' into 'develop'
...
fixes 1957 Add option to send user chatmessage instead of dm
Closes #1957
See merge request pleroma/pleroma!2782
2020-08-03 21:01:56 +00:00
lain
56b5b9aa27
Merge branch 'follower-mrf-again' into 'develop'
...
Follower mrf again
See merge request pleroma/pleroma!2833
2020-08-03 14:22:11 +00:00
lain
66ebd88634
Merge branch 'config/default_ok_oldage' into 'develop'
...
config: :mrf, :policies default to ObjectAgePolicy
Closes #2000
See merge request pleroma/pleroma!2814
2020-08-03 12:50:29 +00:00
Alex Gleason
dc88b6f091
Add email blacklist, fixes #1404
2020-08-02 14:53:42 -05:00
Alex Gleason
e9cff69bce
Add TagPolicy as default MRF, #2010
2020-08-02 12:24:40 -05:00
Ilja
f671d7e68c
Add welcome chatmessages
...
* I added the option in config/config.exs
* created a new module lib/pleroma/user/welcome_chat_message.ex
* Added it to the registration flow
* added to the cheatsheet
* added to the config/description.ex
* added to the Changelog.md
2020-08-02 15:54:59 +02:00
Alex Gleason
cb1e3893aa
SimpleMRF: Add missing :followers_only to config.exs
2020-08-01 16:08:29 -05:00
sadposter
992deaa09b
Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into develop
2020-08-01 19:32:31 +01:00
Haelwenn (lanodan) Monnier
0309514656
Default MRF to ObjectAgePolicy, 7 days threshold
2020-07-31 12:13:08 +02:00
lain
7bcd2e948e
Config: Default to Hackney again
...
Gun is still acting up.
2020-07-31 10:50:45 +02:00
lain
99bfdffb1d
Config: Add kenoma as available frontend.
2020-07-30 14:17:58 +02:00
lain
4ce4d799fd
Config: Add frontend information.
2020-07-30 14:14:58 +02:00
Alex Gleason
d8a01c9432
Merge remote-tracking branch 'upstream/develop' into hide-reactions
2020-07-29 12:43:39 -05:00
lain
dc36d6e9d2
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into frontend-bundles-admin
2020-07-29 16:24:22 +02:00
lain
79f9ddd8b7
Merge branch 'by-approval' into 'develop'
...
Registrations "by approval" mode
Closes #1931
See merge request pleroma/pleroma!2757
2020-07-29 11:27:26 +00:00
lain
e2f82968e8
Config: Update frontend config example
2020-07-29 13:04:29 +02:00
Alex Gleason
3b7c454418
Let favourites and emoji reactions optionally be hidden
2020-07-28 14:58:30 -05:00
Mark Felder
bee29f6610
Clarify location of frontends directory
2020-07-28 12:10:04 -05:00
lain
08732e8a03
Docs: Add frontend info to cheat sheet.
2020-07-28 17:46:37 +02:00
Alex Gleason
6f44a0ee84
Add configurable registration_reason limit
2020-07-27 15:13:34 -05:00
Alex Gleason
6747bf2e16
Merge remote-tracking branch 'upstream/develop' into by-approval
2020-07-27 12:29:18 -05:00
Alex Gleason
6931dbfa58
Merge remote-tracking branch 'upstream/develop' into by-approval
2020-07-26 15:46:14 -05:00
Maksim Pechnikov
67ab9a7928
Merge branch 'develop' into issue/1934-welcome-email
2020-07-23 16:36:27 +03:00
Maksim Pechnikov
5879d36854
fix sender for welcome email
2020-07-22 15:34:47 +03:00
lain
5b1eeb06d8
Revert "Merge branch 'revert-2b5d9eb1' into 'develop'"
...
This reverts merge request !2784
2020-07-21 22:18:17 +00:00
lain
696c13ce54
Revert "Merge branch 'linkify' into 'develop'"
...
This reverts merge request !2677
2020-07-21 22:17:34 +00:00
Maksim Pechnikov
3edaecae96
added welcome email
2020-07-21 09:25:53 +03:00
Ivan Tashkinov
bdf57b8ef4
Merge remote-tracking branch 'remotes/origin/develop' into 2168-media-preview-proxy
...
# Conflicts:
# config/config.exs
# lib/pleroma/web/media_proxy/media_proxy.ex
# mix.lock
# test/web/media_proxy/media_proxy_test.exs
2020-07-19 20:05:37 +03:00
Alex Gleason
38425ebdbf
Merge remote-tracking branch 'upstream/develop' into linkify
2020-07-16 14:51:36 -05:00
Mark Felder
b2d398b1d0
Merge branch 'develop' into refactor/gun-pool-registry
2020-07-15 13:34:27 -05:00
rinpatch
c413649a8d
Bring back oban job pruning
...
Closes #1945
2020-07-15 16:20:17 +03:00
rinpatch
33747e9366
config.exs: set gun retries to 0
...
The new pooling code just removes the connection when it's down,
there is no need to reconnect a connection that is just sitting idle,
better just open a new one next time it's needed
2020-07-15 15:26:35 +03:00
rinpatch
9df5918974
config.exs: make gun the default again
2020-07-15 15:26:35 +03:00
rinpatch
4128e3a84a
HTTP: Implement max request limits
2020-07-15 15:26:35 +03:00
rinpatch
58a4f350a8
Refactor gun pooling and simplify adapter option insertion
...
This patch refactors gun pooling to use Elixir process registry and
simplifies adapter option insertion.
Having the pool use process registry instead of a GenServer has a number of advantages:
- Simpler code: the initial implementation adds about half the lines of code it deletes
- Concurrency: unlike a GenServer, ETS-based registry can handle multiple checkout/checkin
requests at the same time
- Precise and easy idle connection clousure: current proposal for closing idle connections in
the GenServer-based pool needs to filter through all connections once a minute and compare their
last active time with closing time. With Elixir process registry this can be done
by just using `Process.send_after`/`Process.cancel_timer` in the worker process.
- Lower memory footprint: In my tests `gun-memory-leak` branch uses about 290mb on peak load (250 connections)
and 235mb on idle (5-10 connections). Registry-based pool uses 210mb on idle and 240mb on peak load
2020-07-15 15:17:27 +03:00
Alex Gleason
51ab8d0128
Add account_approval_required
instance setting
2020-07-12 20:27:58 -05:00
Mark Felder
3c0c1fd2ef
Merge branch 'develop' into issue/1790-updated-oban
2020-07-10 11:34:53 -05:00