25
1
mirror of https://github.com/processone/ejabberd.git synced 2024-11-30 16:36:29 +01:00
Commit Graph

9174 Commits

Author SHA1 Message Date
Holger Weiss
29751a6174 PubSub: Optimize publishing on large nodes (SQL)
Avoid an unnecessary SQL query while publishing an item on a PubSub node
without 'max_items' limit.  The query in question can be expensive if
the node has a large number of items.

Thanks to Ammonit Measurement GmbH for sponsoring this work.
2021-08-21 20:02:58 +02:00
Holger Weiss
1b0e59bb13 PubSub: Support unlimited number of items
Allow for setting the mod_pubsub option 'max_items_node' to 'unlimited'.
If clients then request a 'max_items' limit of 'max', old items aren't
deleted when publishing new ones.

Thanks to Ammonit Measurement GmbH for sponsoring this work.
2021-08-21 12:29:37 +02:00
Holger Weiss
8f8de0403b PubSub: Support 'max_items=max' node configuration
Let clients request the maximum limit for the node configuration option
'max_items' by specifying the special value 'max' instead of an integer.
This was added to XEP-0060, revision 1.17.0 (and clarified in revision
1.20.0).

Thanks to Ammonit Measurement GmbH for sponsoring this work.
2021-08-20 20:30:11 +02:00
badlop
8afc320aba
Merge pull request #3660 from ballerburg9005/patch-1
"sort -R" command in captcha-ng.sh is not POSIX - added "shuf" and "cat" as fallback
2021-08-16 13:16:43 +02:00
badlop
545a2f0097
Merge pull request #3656 from pitchum/master
Add missing pgsql migration for table push_session
2021-08-16 12:47:45 +02:00
ballerburg9005
14bf197be1
"sort -R" command not POSIX, added "shuf" and "cat" as fallback 2021-08-12 15:14:31 +02:00
Holger Weiss
3e942bf4ac mod_mam_sql: Remove duplicated functions 2021-08-07 12:57:57 +02:00
Badlop
fdfd202a30 Determine the default handlerid at runtime
Apparently Elixir's default is not called 'default'
2021-08-05 13:53:12 +02:00
Badlop
5b0a28bbc9 Fix CHANGELOG: rebar2's elixir workaround was problematic and was reverted
Problems:
- That workaround required running "make" twice
- CEAN (used to build installers) doesn't support that make && make
- Support for Elixir in rebar3 doesn't yet exist
- Preferable path for Elixir usage: install Elixir and use --with-rebar=mix
2021-08-05 13:52:52 +02:00
Badlop
aefc374317 Fix typo when creating index (thanks to Millesimus)
Reference: 95fa43aa96 (r54157330)
2021-08-05 13:52:38 +02:00
Paweł Chmielowski
4c61ea9091 Update tests after last commit 2021-08-04 17:52:23 +02:00
Paweł Chmielowski
d7e330c8ef Allow storing non-composing x:events in offline 2021-08-04 15:30:29 +02:00
Holger Weiss
99ffd9bb95 mod_pubsub: Fix check_opt_range/3 spec 2021-08-02 21:09:55 +02:00
76c49f314f Add missing SQL migration for table push_session 2021-08-01 09:53:07 +02:00
Badlop
ab5e726176 Use the most specific tag for ejabberd commands with several ones 2021-07-30 01:14:36 +02:00
Badlop
b22779f018 Show tags and definer module in generated API document when it's a gen_mod 2021-07-30 01:14:34 +02:00
Badlop
41808a63a0 Show definer module in "ejabberdctl help" when it's a gen_mod 2021-07-30 01:14:31 +02:00
Badlop
ccb4328d06 Store who defines a command, specially when defined by ejabberd modules 2021-07-30 01:14:27 +02:00
Holger Weiss
2050cdffb4 PubSub: Use configured 'max_items' by default
If clients don't ask for a specific 'max_items' limit, use the value of
mod_pubsub's 'max_items_node' option as default, rather than the
hard-coded ?MAXITEMS value.  This makes sure clients cannot circumvent a
smaller, configured limit.
2021-07-28 18:53:15 +02:00
Holger Weiss
fce7fe8558 PubSub: Bump default value for 'max_items' limit
Bump the default value for mod_pubsub's 'max_items_node' option, which
hard-limits the 'max_items' value requested by clients.

These days, use cases such as microblogging or XEP-0402 may need a large
number of items per node.  Bumping the limit makes sure such
functionality is properly supported with the default configuration.
2021-07-28 18:29:19 +02:00
Holger Weiss
103e98b8da mod_push: Fix handling of MUC/Sub messages
Don't fail to include the sender/body of MUC/Sub messages if the
recipient is offline.

Closes #3651.
2021-07-28 18:22:39 +02:00
Badlop
8e553decb0 When vsn is an exact tag, append .0 to satisfy SemVer 2021-07-26 16:36:21 +02:00
Paweł Chmielowski
e3875482ba Remove stringprep override from mix.exs 2021-07-26 16:06:43 +02:00
Paweł Chmielowski
6e4e5a0190 Add missing fields from config inside mod_muc_admin:change_options 2021-07-23 10:14:45 +02:00
Paweł Chmielowski
c96de092fe Revert "Add workaround so rebar2 can use Elixir 1.12.0"
This reverts commit 937e1c2e37.
2021-07-22 15:51:43 +02:00
Badlop
cf72c5ee18 Remove leading zeros in ejabberd version number to satisfy Elixir SemVer 2021-07-21 21:29:04 +02:00
Badlop
69fa79b154 Add 21.07 changes to CHANGELOG 2021-07-21 17:58:35 +02:00
Badlop
ea795e4bd7 Update man page 2021-07-21 17:58:32 +02:00
Badlop
537c8b966e In "make dev" don't create link ejabberdctl, seems buggy 2021-07-21 17:58:27 +02:00
Paweł Chmielowski
142e494d52 Update mix.lock 2021-07-21 14:50:18 +02:00
Badlop
50242cec78 Annotate the srg_create command as changed in 21.07 2021-07-21 13:11:09 +02:00
Badlop
33f821d4f7 Simplify the --with-rebar example in README 2021-07-21 13:11:06 +02:00
Badlop
9a823e5a16 Update Portuguese translation from Weblate (thanks to Ssantos) 2021-07-21 13:07:31 +02:00
Badlop
686ce01534 Update Italian translation from Weblate (thanks to Alessandro Mandelli) 2021-07-21 13:07:29 +02:00
Badlop
4225f14e8b Update Indonesian translation from Weblate (thanks to Reza Almanda) 2021-07-21 13:07:26 +02:00
Paweł Chmielowski
a3478b7f0f Update pam 2021-07-21 11:37:32 +02:00
Paweł Chmielowski
bab9543c1f Update dependences 2021-07-21 11:12:54 +02:00
Paweł Chmielowski
c3169e9eea Typo 2021-07-20 17:07:40 +02:00
Badlop
c04b6b2908 Update CHANGELOG.md with 21.04 and 21.01 (#3646) 2021-07-19 17:23:50 +02:00
Badlop
937e1c2e37 Add workaround so rebar2 can use Elixir 1.12.0
Notice that Elixir 1.12.0 requires Erlang/OTP 21 or higher
BTW, this workaround works only with rebar2... unfortunately
rebar3 doesn't compile the elixir files from lib/
2021-07-16 16:43:08 +02:00
Badlop
91763bbc61 As Mix config now must be evaluated at runtime, rename to runtime.exs 2021-07-16 13:57:25 +02:00
Badlop
e0c9a6308d erlang:phash is deprecated in OTP 24, let's use phash2 2021-07-16 13:57:08 +02:00
Badlop
e14cd5dd17 Mention in README.md the updated --with-rebar and "make dev" 2021-07-16 13:36:28 +02:00
Badlop
e31919914b Add support to build release with back to old Elixir 1.10.3
However, to build a release with OTP 24 requires Elixir 1.11.4 or higher
2021-07-16 13:36:27 +02:00
Badlop
fcbd72f2d7 Add rebar3 3.15.2
Reference: https://ferd.ca/you-ve-got-to-upgrade-rebar3.html
2021-07-16 13:36:25 +02:00
Badlop
4c5641a648 Add support for mix to: ./configure --enable-rebar=mix 2021-07-16 13:36:23 +02:00
Badlop
1fd452dca9 Update setup-dev.sh to work perfectly both with rebar3 and mix 2021-07-16 13:36:22 +02:00
Badlop
f35d304582 Minor mix.exs definitions copied from the template file 2021-07-16 13:36:20 +02:00
Badlop
8ca12d4d23 Add support to build release with mix 2021-07-16 13:36:19 +02:00
Badlop
72e069d9ec Get ejabberd version from vars.config 2021-07-16 13:36:17 +02:00