Badlop
4a931b42ab
hooks_deps: Hide false-positive warnings about gen_mod
2024-09-24 12:37:06 +02:00
Badlop
15d73b9d20
Support to block IPs in a vhost using append_host_config ( #4038 )
2024-09-24 12:20:16 +02:00
Badlop
c2d4f73893
Move some modules webadmin pages to their modules
2024-09-16 17:50:47 +02:00
Badlop
31b85351f2
Add new "MAM Archive" page to webadmin
2024-09-16 17:50:46 +02:00
Badlop
c900f0ad83
WebAdmin: Improve pages to handle disabled modules
2024-09-16 17:50:44 +02:00
Badlop
b2e6749fd2
Fix dialyzer: captcha_cmd is a binary for sure
2024-09-16 17:50:43 +02:00
Badlop
2437dc4e06
New command get_mam_count to get number of archived messages for an account
2024-09-16 17:50:42 +02:00
Badlop
115e7d08aa
Add links in user page to offline and roster pages
2024-09-16 17:50:40 +02:00
Badlop
d9ddbe0212
Add mam and offline tags to the related purge commands
2024-09-16 17:50:39 +02:00
Badlop
512285e48d
Result of running "make options"
2024-09-16 17:50:38 +02:00
Badlop
642e7ecc29
mod_matrix_gw: Remove useless option "persist"
2024-09-16 17:50:37 +02:00
Badlop
ce5a8acaf7
Define the types of options that opt_type.sh cannot derive automatically
2024-09-16 17:50:33 +02:00
Holger Weiss
3d9a5a1635
Fix 'update' command output
...
So far, ejabberd_update:update/0 returned the return value of
release_handler_1:eval_script/1. That function returns the list of
updated but unpurged modules, i.e., modules where one or more processes
are still running an old version of the code. Since commit
5a34020d23
, the ejabberd 'update' command
assumes that value to be the list of updated modules instead. As
that seems more useful, modify ejabberd_update:update/0 accordingly.
This fixes the 'update' command output.
2024-09-14 21:54:01 +02:00
Holger Weiss
3469a51f58
mod_pubsub: Don't blindly echo PEP notification
...
Since commit 514c25caef
, whenever a PEP
item was published, a notification was blindly sent back to the owner.
However, this should only be done subject to +notify filtering, as per
XEP-0163:
| the PEP service shall send notifications to all of the account owner's
| available resources (subject to notification filtering).
The motivation for the mentioned commit was that +notify subscriptions
initially didn't work for PEP node owners (#2108 ). However, that issue
was fixed by commit 5968bc9318
(#2112 ).
As a result, the owner's client was actually notified twice if the
client was subscribed to the node (e.g., via +notify).
Therefore, just omit the additional, blind notification.
Thanks to W. Martin Borgert and Daniel Gultsch for reporting the issue.
2024-09-13 20:50:00 +02:00
Paweł Chmielowski
d4b30957a3
Skip non-delivery errors for local pubsub generated notifications
...
Those are ignored by pubsub service anyway, so we can skip those, and
reduce number of messages processed by pubsub process.
2024-09-11 13:20:53 +02:00
Badlop
cc377bbebf
Update lock files
2024-09-11 11:39:39 +02:00
Badlop
eec836239f
Improve documentation of ldap_servers and ldap_backups options ( #3977 )
2024-09-11 11:39:34 +02:00
Badlop
941d51a6e7
Handle call by gen_event:swap_handler ( #4233 )
2024-09-11 11:39:30 +02:00
Holger Weiss
e3243fa35b
make-binaries: Update OpenSSL URLs
2024-09-06 19:18:32 +02:00
Holger Weiss
70512c7116
make-binaries: Bump dependency versions
2024-09-06 19:05:12 +02:00
Paweł Chmielowski
3c896d1c6a
Better handling of malformed jids in send_direct_invitation
command
2024-09-02 12:49:39 +02:00
Paweł Chmielowski
b455d93c69
Fix dialyzer warnings
2024-09-02 12:42:55 +02:00
Paweł Chmielowski
017b2feac1
Make set_presence
command return error when session not found
...
Should fix issue #4274
2024-09-02 12:01:56 +02:00
Paweł Chmielowski
5f47860ee1
Remove support for old websocket connection protocol
...
This removes handling of pre-rfc7395 encapsulation of xmpp in websocket
(where data send in websocket was using just raw data as send in regular
socket). This didn't work correctly for last 5 years, and as we didn't
see complains about this, we can assume it's not used anymore.
2024-09-02 11:55:46 +02:00
Badlop
795498fa45
Runtime: Cache hex.pm archive from rebar3 and mix
2024-08-26 15:50:25 +02:00
Badlop
aa1717ee77
CI: Add Elvis tests
2024-08-26 15:50:25 +02:00
Badlop
db6d3e63f2
Fix Elvis report: Fix dollar space syntax
...
https://github.com/inaka/elvis_core/blob/main/doc_rules/elvis_style/no_dollar_space.md
2024-08-26 15:50:25 +02:00
Badlop
0304428d95
Fix Elvis report: Remove spaces in weird places
...
https://github.com/inaka/elvis_core/blob/main/doc_rules/elvis_style/no_space.md
2024-08-26 15:50:25 +02:00
Badlop
74b80bfe08
Fix Elvis report: Don't use ignored variables
...
https://github.com/inaka/elvis_core/blob/main/doc_rules/elvis_style/used_ignored_variable.md
2024-08-26 15:48:32 +02:00
Badlop
90ce65e4dc
Fix Elvis report: Remove trailing whitespace characters
...
https://github.com/inaka/elvis_core/blob/main/doc_rules/elvis_text_style/no_trailing_whitespace.md
2024-08-26 15:48:32 +02:00
Badlop
d4d9771a71
Makefile: Add support for "make elvis" when using rebar3
2024-08-26 15:48:32 +02:00
Badlop
70ee294079
elvis.config: Fix file syntax, set vim mode, disable many tests
...
Let's disable the tests that would require major changes in existing
ejabberd source code, and fixing them would produce a curtain of changes
that would difficult using git blame and git log, but provide minimal
benefits.
Don't check erlang header files by now.
Don't check rebar.config because it has customizations that must be
parsed by rebar.config.script to have suitable syntax.
2024-08-26 15:48:32 +02:00
Badlop
5f4d17621f
Fix Erlang LS warning about unused macro definitions
...
Macro name + commit when it was added - commit when usage was removed:
* BATCH_SIZE + f6db8428
- 71c44bff8
* INVALID_SETTING_MSG - 6b126171d
- 381065397
* POLICY_ACCESS + 7c1e7e5b
- 56d273477
* PROCNAME + 068db1a2
- 6876a37e6
* SALT_LENGTH + e575c87e
- 633b68db1
* SERVER + 068db1a2
- but was never used!
* SERVER + f44e23b8c
- but was never used!
* STORAGE_TYPES + 92db9ff1
- 9a93acc62
* TCP_SEND_TIMEOUT + f0af10e6
- 6e900d6a8
* TDTD + c3280e9
- 5a34020
* TVFIELD + dcc05ac8
- da310a517
2024-08-26 15:48:32 +02:00
Badlop
8f4179050b
erlang_ls.config: Let it find paths, update to Erlang 26, enable crossref
2024-08-26 15:48:32 +02:00
Badlop
fddacd51a4
.vscode/launch.json: Experimental support for debugging with Neovim
2024-08-26 15:48:32 +02:00
Badlop
e726ba9a8b
.vscode/relive.sh: Update to benefit from ejabberd 24.02 behaviour
2024-08-26 15:48:32 +02:00
Badlop
da1673e264
mix.lock: Don't mention Relive deps, otherwise they are always downloaded
2024-08-26 15:48:32 +02:00
Badlop
7cd34d3709
CONTAINER.md: Use same general badges in both container images readme files
2024-08-26 15:48:32 +02:00
Paweł Chmielowski
ec7fd05987
Update xmpp once more
2024-08-24 15:27:58 +02:00
Paweł Chmielowski
34a58863e3
Update xmpp dep
2024-08-24 13:16:03 +02:00
Paweł Chmielowski
3237a955e5
Fix dep spec for rebar2
2024-08-23 20:56:52 +02:00
Paweł Chmielowski
8e7489c2be
Remove duplicate dep from mix.exs
2024-08-23 20:52:36 +02:00
Paweł Chmielowski
df5202a2f0
Update deps to bring improved s2s fallback for invalid direct tls connections
...
This allows connections to server that have both xmpps-server and xmpp-server
srv entries, for which xmpps version doesn't work correctly. Before this
change we would stop on non-working xmpps server, now we will also attempt
to connect further servers on list.
2024-08-23 20:48:53 +02:00
Badlop
db3a5d8915
Start ExSync manually to ensure it's started if (and only if) Relive
2024-08-21 10:51:59 +02:00
Badlop
6110f213de
Return error stanza when storage doesn't support vcard update ( #4266 )
2024-08-21 10:51:56 +02:00
Badlop
e99fe98db4
Remove from extra_applications the apps already defined in deps ( #4265 )
2024-08-21 10:51:53 +02:00
Michael Slezak
b07e28be2c
Fix 'mix release' error: logger being regular and included application ( #4265 )
2024-08-21 10:51:51 +02:00
Badlop
937d5fe495
Document which SQL servers can really use update_sql_schema
2024-08-21 10:51:49 +02:00
Badlop
01141e5f69
Relax password complexity in test database
...
This password is not strong enough in MSSQL 2022, relax this restriction
https://learn.microsoft.com/en-us/sql/relational-databases/security/password-policy?view=sql-server-ver16
https://learn.microsoft.com/en-us/sql/t-sql/statements/create-login-transact-sql?view=sql-server-ver16#check_policy---on--off-
2024-08-21 10:51:46 +02:00
Badlop
15569d0b13
Add links in top-level options documentation to their Docs website sections
2024-08-12 16:25:42 +02:00
Badlop
918806006c
Update fast_xml to use use_maps and remove obsolete elixir files
2024-08-09 12:31:37 +02:00
Badlop
d5e030a638
CI: Tell sqlcmd to trust server self-signed certificate
...
As explained in
https://techcommunity.microsoft.com/t5/sql-server-blog/odbc-driver-18-0-for-sql-server-released/ba-p/3169228
Version 18.0 of the Microsoft ODBC Driver 18 for SQL Server has been released.
BREAKING CHANGE - Default Encrypt to Yes/Mandatory.
2024-08-09 12:31:35 +02:00
Badlop
47f1beca0c
CI: Update path to sqlcmd command in the mssql container
...
As mentioned in
https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker
Starting with SQL Server 2022 (16.x) CU 14 and SQL Server 2019 (15.x)
CU 28, the container images include the new mssql-tools18 package.
The previous directory /opt/mssql-tools/bin is being phased out.
The new directory for Microsoft ODBC 18 tools is /opt/mssql-tools18/bin,
aligning with the latest tools offering.
2024-08-09 12:31:34 +02:00
Badlop
a565b0e4c1
ext_mod: Handle info message when contrib module transfers table ownership
2024-08-09 12:31:29 +02:00
Badlop
10d1704899
mod_muc_rtbl: Fix call to gen_server:stop ( #4260 )
2024-07-22 13:28:47 +02:00
Badlop
bc7c8e3952
Handle case when elixir support is enabled but not available
...
This happens when:
./configure --with-rebar=rebar3 --enable-elixir
make
rebar3 ct
2024-07-19 18:08:02 +02:00
Paweł Chmielowski
4e35515a8c
Also change mysql.new.sql in similar way
2024-07-18 17:55:37 +02:00
Paweł Chmielowski
d2a3fe3ed2
Fix column type in comment with schema update
2024-07-18 17:13:45 +02:00
Badlop
9bd1b39f9f
Set version to 24.07
2024-07-18 11:55:10 +02:00
Badlop
20a01a25e4
Update changelog
2024-07-18 11:55:07 +02:00
Badlop
68e69debff
Update man page to 24.07
2024-07-18 11:55:05 +02:00
Badlop
7a333eecbe
Update more translations translation
2024-07-18 11:11:55 +02:00
Badlop
e274bcc87d
Update Portuguese (Brazil) translation (thanks to Wellington Uemura)
2024-07-18 11:11:54 +02:00
Badlop
c42cb2bbac
Update Italian translation (thanks to Ermete Melchiorre)
2024-07-18 11:11:52 +02:00
Badlop
9ee7054823
Update Chinese translation (thanks to Sketch6580)
2024-07-18 11:11:51 +02:00
Badlop
65e16dcac1
make format
2024-07-18 11:11:48 +02:00
Paweł Chmielowski
97c2d6a29d
Merge pull request #4259 from heyanyanchina123/fix_mysql
...
[fix] fix mysql.sql archive origin_id
2024-07-18 09:40:25 +02:00
haha
93cdee80ed
[fix] fix mysql.sql archive origin_id
2024-07-18 15:14:39 +08:00
Holger Weiss
11055f61a6
make-installers: Don't edit too much
...
The init script and systemd units don't refer to "/opt/ejabberd", and
ejabberdctl doesn't refer to "/opt/ejabberd-$version".
Fixes #4258 .
2024-07-17 13:33:46 +02:00
Paweł Chmielowski
af99799e8a
Use tagged deps
2024-07-17 11:11:00 +02:00
Paweł Chmielowski
926f60b2ed
Output muc#roominfo_avatarhash in room disco info as per updated xep-0486
...
This should fix issue #4234 .
2024-07-16 18:55:02 +02:00
Badlop
0fdbb03f54
Don't add iex to included_applications
...
- iex is unnecessary for ejabberd in OTP release
- adding iex breaks dialyzer when --enable-elixir
2024-07-16 17:16:35 +02:00
Badlop
bd0332c716
ext_mod: Fix typo in log message
2024-07-16 17:16:33 +02:00
Badlop
45007809f6
CHANGELOG.md: Only include URLs at the end of line for plaintext readability
2024-07-16 17:16:31 +02:00
Badlop
0e0fdb440c
CHANGELOG.md: Fix Issues URLs
2024-07-16 17:16:29 +02:00
Paweł Chmielowski
2016cf547f
Make dialyzer happy
2024-07-16 15:56:41 +02:00
Paweł Chmielowski
ead87e3727
Add option update_sql_schema_timeout to allow schema update use longer timeouts
...
This also makes batch of schema updates to single table use transaction,
which should help in not leaving table in inconsistent state if some update
steps fails (unless you use mysql where you can't rollback changes to
table schemas).
2024-07-16 15:42:00 +02:00
Paweł Chmielowski
f56739fd9f
Make any uncatched exception inside transaction trigger rollback
2024-07-16 15:42:00 +02:00
Paweł Chmielowski
c5f2b389c3
Allow to configure number of restart in sql_transaction()
2024-07-16 15:42:00 +02:00
dependabot[bot]
4cc95dda42
Bump ex_doc from 0.34.1 to 0.34.2
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.34.1 to 0.34.2.
- [Release notes](https://github.com/elixir-lang/ex_doc/releases )
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.34.1...v0.34.2 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-07-16 11:31:42 +02:00
Badlop
0bfbe3e154
Add ejabberd example config files to the hex package
2024-07-16 11:31:39 +02:00
Badlop
9bd6b11007
Use proper format depending on the formatter ( #4256 )
...
This fixes recent commmit 090a8e3
2024-07-16 11:31:35 +02:00
Paweł Chmielowski
c013a59d16
Restore args conversion of {"k":"v"} to tuple lists in mod_http_api
...
Switching to json compatible output did broke this, which caused issues in
for example create_rooms_with_opts command.
2024-07-15 21:58:41 +02:00
Paweł Chmielowski
aa02c4de1e
Move logger app to included_applications
...
We don't particularly need this to start with ejabberd, and by having
it always started we will change logger to always use elixir formating.
2024-07-15 21:26:16 +02:00
badlop
fb9e2b9603
Merge pull request #4256 from slezakattack/elixir_logger
...
Fix template error for elixir-enabled applications.
2024-07-15 11:00:07 +02:00
Badlop
a70bdc0776
WebAdmin: Fix number of accounts shown in the online-users page
2024-07-15 10:59:16 +02:00
Badlop
936460212f
Fix bug in 8a3344e
when Elixir enabled but no need to compile elixir files
2024-07-15 10:59:14 +02:00
Holger Weiss
8ac51e63b5
node_pep: Add missing feature
...
Publishers may specify item identifiers for PEP nodes as well.
(Greetings to Thilo!)
2024-07-14 17:42:40 +02:00
Michael Slezak
090a8e3c95
Fix template error for elixir-enabled applications.
2024-07-12 14:39:42 -06:00
Badlop
101cce0c1e
ext_mod: Fetch dependencies from hex.pm when mix is available
...
This doesn't work when running an OTP release build using mix,
which means it doesn't work in binary installers or containers;
only when using relive, or compiled with rebar3.
Set the desired hex package version in the module's rebar.config
For example, to fetch hex package recon 2.5.5 when mix is available,
and otherwise download using git: in the file
ejabberd-contrib/ejabberd_observer_cli/rebar.config
set both the hex version and git details:
{deps, [
{recon, "2.5.5", {git, "https://github.com/ferd/recon "}}
]}.
2024-07-12 15:47:10 +02:00
Badlop
a935302a19
ejabberd.yml.example: Add api_permissions group for webadmin ( #4249 )
2024-07-12 15:46:01 +02:00
Badlop
9a0ff13cc2
mod_register: Send welcome message as 'chat' too ( #4246 )
...
Apparently, some clients don't display 'normal' messages to the user.
2024-07-12 15:45:59 +02:00
Badlop
ef933c07cc
WebAdmin: Support groupid with spaces when making shared roster result ( #4245 )
2024-07-12 15:45:57 +02:00
Badlop
df5291e4bd
ext_mod: Improve error result when problem compiling elixir file
2024-07-11 16:35:24 +02:00
Badlop
7a8c0331c1
mix.exs: Include Elixir's Logger in the OTP release, useful for libcluster
2024-07-11 16:35:23 +02:00
Badlop
28e37bcaad
ext_mod: files_to_path is deprecated, use compile_to_path
...
As recommended in
d9cf285d71/lib/elixir/lib/kernel/parallel_compiler.ex (L240)
2024-07-11 16:35:21 +02:00
Badlop
8a3344e78a
ext_mod: Compile all Elixir files in a library with one function call
...
Some Elixir libraries have files with dependencies between them.
Compiler can detect and solve those internal dependency if
we call Compile with a list of all the files
https://hexdocs.pm/elixir/1.17.2/Kernel.ParallelCompiler.html#compile/2
This is useful to compile libcluster
2024-07-11 16:35:18 +02:00
Badlop
ce95f1f25a
WebAdmin: Fix crash when viewing SRG created using ejabberd 24.02 ( #4245 )
2024-07-11 16:35:16 +02:00
Badlop
f1739ce34d
mod_register: Add example configuration of welcome_message option
2024-07-11 16:35:12 +02:00
Holger Weiss
1add1de23b
ejabberd_options: Add trailing @ to @VERSION@
...
Thanks to Marc Schink for reporting the issue.
2024-07-05 22:41:18 +02:00
Paweł Chmielowski
e25bdba16d
Use error_logger when printing startup failure message
2024-07-05 10:25:59 +02:00
Paweł Chmielowski
7c63cd1000
Print message when starting ejabberd application fails
2024-07-05 09:57:21 +02:00
Badlop
4192190a96
Fix problem parsing tuples when using OTP 27 json library ( #4242 )
2024-07-04 16:55:28 +02:00
Badlop
a733ba311c
New tests for API commands
...
Only mod_http_api is tested right now; support to test also
ejabberdctl, ejabberd_xmlrpc and web_admin would be great.
This uses mod_example from ejabberd-contrib
How to run only those tests:
CT_BACKENDS=no_db rebar3 ct --suite=test/ejabberd_SUITE --group=commands_single
2024-07-04 16:55:14 +02:00
Paweł Chmielowski
fe472a63a0
Improve cross version handling of muc retractions
2024-07-04 13:57:25 +02:00
Paweł Chmielowski
25b78b73d0
Add ability to specify custom timeout for sql operations
2024-07-04 11:21:26 +02:00
Paweł Chmielowski
b978a47925
Fix unused variable warning
2024-07-03 15:55:48 +02:00
Paweł Chmielowski
b44b1304b8
Fix typo in last commit
2024-07-03 15:55:29 +02:00
Paweł Chmielowski
a4fd756eae
Add misc:json_encode_With_kv_lists and use it in matrix sign function
...
R27 json module doesn't recognize list of tuples as object specification,
so this creates wrapper that offer this functionality.
2024-07-03 15:20:48 +02:00
Paweł Chmielowski
8d4c1e3617
One more fix for pg91 in test suite
2024-07-03 13:44:48 +02:00
Paweł Chmielowski
54f5db851d
Don't use host from url in webadmin, prefer host used for authentication
2024-07-03 13:15:33 +02:00
Paweł Chmielowski
35042ebc6a
Make sql query in testsuite compatible with pg9.1
2024-07-03 12:38:48 +02:00
Mickaël Rémond
6c2dfd3d31
Update CODE_OF_CONDUCT.md
...
Try to limit the number of ping comments in the community. This can get into the way of efficient work and be considered a bit offensive for some users or maintainers.
2024-07-02 15:42:41 +02:00
Badlop
543b874a10
ext_mod: Handle case when contrib module has no *.ex and no *.erl
2024-07-02 13:43:37 +02:00
Badlop
4258d3dc24
Update rebar.lock
2024-07-02 13:43:35 +02:00
Badlop
949649e3a9
Fix typos (thanks to Jerome Sautret)
2024-07-02 13:43:33 +02:00
Pouriya
82d95ac81d
feat: Hook subscribers
2024-07-02 12:38:54 +02:00
Alexey Shchepin
3124644315
Fix matrix_id_as_jid option documentation
2024-06-28 05:31:16 +03:00
Badlop
27ba09debf
Set version to 24.06
2024-06-27 15:43:26 +02:00
Badlop
686938045b
Update changelog
2024-06-27 15:42:19 +02:00
dependabot[bot]
5645858262
Bump docker/build-push-action from 5 to 6
...
Bumps [docker/build-push-action](https://github.com/docker/build-push-action ) from 5 to 6.
- [Release notes](https://github.com/docker/build-push-action/releases )
- [Commits](https://github.com/docker/build-push-action/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: docker/build-push-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-27 15:11:46 +02:00
Badlop
410c81a51d
Update man page to 24.06
2024-06-27 14:54:41 +02:00
Badlop
d19bac70ce
Update version number of new commands, options and protocols to 24.06
2024-06-27 14:54:40 +02:00
Badlop
9b9eb409b2
join_cluster: Handle also atom arguments, useful for mod_libcluster
2024-06-27 14:54:38 +02:00
Badlop
f3ad49ebc4
Fix copy deps *.app file, and strip *.src if present
2024-06-27 14:54:36 +02:00
Badlop
394ba26d1d
ext_mod: Support to compile nested *.erl, and include other deps *.hrl
...
This is useful to compile as a dependency
https://github.com/deadtrickster/prometheus.erl
2024-06-27 14:54:35 +02:00
Badlop
cafe28fdea
Update other translations
2024-06-27 14:54:32 +02:00
Badlop
22cefeb2bd
Update German translation (thanks to Nautilusx)
2024-06-27 14:54:31 +02:00
Badlop
9e4cccd4db
Update Polish translation (thanks to Wojciech Teichert)
2024-06-27 14:54:29 +02:00
Badlop
3ff3bdf812
Update Chinese translation (thanks to Sketch6580)
2024-06-27 14:54:27 +02:00
Paweł Chmielowski
45f0f983b1
Override jose version for <R23 in mix to fix compilation with new p1_acme
2024-06-27 14:51:14 +02:00
Paweł Chmielowski
28e94513db
Update deps
2024-06-27 14:26:19 +02:00
Badlop
afe32e2c05
Fix generate-doap.sh to accept x in the version number
2024-06-25 17:05:56 +02:00
Badlop
0b6d40c9df
Log messages not only when node joins the cluster, also when leaves it
2024-06-25 17:05:41 +02:00
Badlop
992d84c002
Add JSON EUnit testing
2024-06-25 17:05:31 +02:00
Badlop
9b675fe775
Add support to test also EUnit suite
2024-06-25 17:05:28 +02:00
Badlop
35783d9a2c
Format also files in test/
2024-06-25 17:05:26 +02:00
Badlop
f28e7b37bc
Fix call to atom_to_binary/1 for Erlang/OTP older than 23
2024-06-25 17:05:21 +02:00
Badlop
eceb9b729f
WebAdmin: New login box in the left menu bar
2024-06-25 10:51:23 +02:00
Badlop
ce348596b7
WebAdmin: Improve CSS of welcome page, docs links, anchor element
2024-06-25 10:51:22 +02:00
Badlop
b85cd9a487
join_cluster_here: New command to join a remote node into our local cluster
2024-06-25 10:51:20 +02:00
Badlop
d170885d8d
Run "make doap" ( #4237 )
2024-06-25 10:51:18 +02:00
Badlop
9a6bd83aa1
Remove obsolete code for Erlang/OTP older than 20.0
2024-06-25 10:51:17 +02:00
Badlop
0d31482647
Use newer rebar3_hex with new Erlang, but Erlang 20 requires 7.0.7
2024-06-25 10:51:13 +02:00
Holger Weiss
40c27b54b0
ejabberd_ctl: Fix output of UTF-8-encoded binaries
...
Converting binary results to char() lists using binary_to_list/1 yields
incorrect results for characters outside the ISO Latin-1 range.
2024-06-19 19:51:50 +02:00
badlop
0380695bba
Merge pull request #4228 from badlop/webadmin-commands
...
Use commands in WebAdmin to generate page content
2024-06-19 18:01:35 +02:00
Badlop
899b77cdf4
ejabberd_ctl: Improve parsing of commas in arguments
2024-06-19 17:59:38 +02:00
Badlop
4819baaa07
Test: Update to the new webadmin pages
2024-06-19 17:59:38 +02:00
Badlop
5a34020d23
WebAdmin: Move content to commands; new pages; hook changes; new commands
...
Also:
- Added support to view user subpages in the menu
- Webadmin hooks now get the full request
- New commands added to be used in webadmin pages
2024-06-19 17:59:38 +02:00
Badlop
2b1d4ff98d
Commands with 'internal' tag: don't list and block execution by frontends
2024-06-19 17:59:38 +02:00
Badlop
ed4843b0ed
Document 'any' argument and result type, useful for internal commands
...
Also 'atom' may be used as argument type by some internal commands,
for example the ones that refer to erlang node names.
2024-06-19 17:59:38 +02:00
Badlop
30bd8f1570
WebAdmin: Add make_command functions to produce HTML command element
...
Support to sort tables using Sortable library from:
https://github.com/tofsjonas/sortable
2024-06-19 17:59:38 +02:00
Badlop
74d6f0a68d
WebAdmin: logo-fill.png is useless since the visual refresh in commit 9eeee67
2024-06-19 17:59:38 +02:00
Badlop
5872ccc992
WebAdmin: Sort alphabetically the menu items, except the most used ones
2024-06-19 17:59:38 +02:00
Badlop
9ee23d3649
WebAdmin: Improve home page
...
- Update ejabberd WebAdmin logo
- Add hyperlink in disclaimer text
- Add welcome paragraph
2024-06-19 17:59:38 +02:00
Badlop
724f304e48
WebAdmin: Unauthorized response: include some text to direct to the logs
2024-06-19 11:56:16 +02:00
Badlop
a16e5a7055
WebAdmin: Remove webadmin_view for now, as commands allow more fine-grained permissions
2024-06-19 11:56:16 +02:00
Badlop
3bda858225
Add Makefile targets to format and indent source code
2024-06-19 11:56:16 +02:00
Badlop
701d2ce0f6
Define kick_user command version 2, useful for the WebAdmin command usage
2024-06-19 11:56:16 +02:00
Badlop
be847a7e91
rebar.config.script: Require port_compiler 1.15.0 and accept any 1.15.x
2024-06-19 11:51:03 +02:00
Badlop
fff0b5209c
Apply previous commit to the container ejabberdctl script
2024-06-19 11:48:33 +02:00
Paweł Chmielowski
2c5a8f0860
Make native dynamic node names work when using fully qualified domain names
...
This should fix issue reported in 4184
2024-06-13 18:02:13 +02:00
Badlop
103a30df2c
Document that XEP-0485 is available in mod_pubsub_serverinfo
2024-06-10 19:03:25 +02:00
Badlop
e4c8dbc2af
make-binaries: Bump OpenSSL version to 3.3.1
2024-06-10 19:03:13 +02:00
Badlop
882cd8faf5
ejabberd_access_permissions: Fix debug lines indentation that were hard to read
2024-06-10 19:03:06 +02:00
Holger Weiss
7ba9f2e4e8
mod_private: Cope with bookmark decoding errors
...
Handle invalid XEP-0048 bookmarks gracefully while attempting to publish
them to an XEP-0402 node.
2024-05-28 21:07:04 +02:00
Badlop
52abe8016b
Update lock files
2024-05-28 15:36:39 +02:00
Badlop
b840ab9907
Revert "Disable update_sql_schema by default"
...
The update_sql_schema feature was published half a year ago,
included in two releases, it is used by the CI tests,
and consequently it's stable enough to be enabled by default.
This reverts commit ec20691188
.
2024-05-28 15:36:39 +02:00
Badlop
b977eb7193
Add support for XEP-0425 version 0.3.0, keep supporting 0.2.1 ( #4193 )
2024-05-28 15:36:39 +02:00
Badlop
a179d5e34b
mix:exs: Move xmpp from included_applications to applications
...
because now p1_pgsql has it in applications to satisfy dialyzer OTP 26,
and we cannot have xmpp both in applications and included_applications.
2024-05-28 15:36:39 +02:00
Badlop
ab274147d8
Runtime: Add final OTP 27 and preliminary Elixir 1.17 to the matrix
2024-05-28 15:36:39 +02:00
Badlop
d81a844e1c
make-binaries: Bump versions to Erlang/OTP 26.2.5 and Elixir 1.16.3
2024-05-28 15:21:05 +02:00
Badlop
b288d5c763
make-binaries: Revert temporarily an OTP commit that breaks MSSQL ( #4178 )
2024-05-28 15:21:01 +02:00
Badlop
1b81af00b2
Update p1_pgsql and mysql to support Unix Domain Socket ( #3716 )
2024-05-28 15:20:57 +02:00
Badlop
d04f92d44e
mod_muc_room: Use ejabberd hooks instead of function calls to mod_muc_log ( #4191 )
2024-05-28 15:20:53 +02:00
Badlop
80dc95fc03
Remove unnecessary case from recent commit 599cddf
2024-05-28 15:14:08 +02:00
Badlop
a8e36e7b1b
CI: Don't load database schema files for mysql and pgsql
2024-05-24 13:21:21 +02:00
Badlop
ec13350b24
Test: Enable update_sql_schema
...
- Test: Enable update_sql_schema by default
- Update test/README about new option
- enable new_schema in tests
2024-05-24 13:21:19 +02:00
Badlop
1076f8bfc2
Test: Clear tables when ending a group, instead of when starting
...
Because a group may be started but the tables are not yet created,
as they are created automatically when update_sql_schema is enabled.
This modifies commit e2b79ea
2024-05-24 13:21:18 +02:00
Badlop
599cddfb67
ejabberd_sql_schema: Rewrite recent commit cb49fcf
...
lists:search is available since OTP 21.0, and ejabberd is said to
support since OTP 20.0.
Also, that code wouldn't work if ejabberd uses different database types
(MySQL, PgSQL, ...), as this would only update the first database.
2024-05-24 13:21:16 +02:00
Badlop
034af6aefd
Set process flags when Erlang/OTP 27 to help debugging
...
https://www.erlang.org/blog/highlights-otp-27/#process-labels
2024-05-24 13:21:15 +02:00
Badlop
5d2a111b9c
Update lock files
2024-05-24 13:21:13 +02:00
Badlop
ca9ca7f5af
Use the new port_compiler 1.15.0 that supports Erlang/OTP 27.0
...
Revert "rebar.config.script: Use port_compiler branch that supports OTP 27.0-rc2"
This partially reverts commit e9b9159d23
.
2024-05-24 13:21:12 +02:00
Badlop
677d66d818
Revert "mix.exs: Dirty workaround to get port_compiler with OTP 27 support"
...
This reverts commit c7c3cc10c5
.
2024-05-24 13:21:10 +02:00
Badlop
750bf07e13
Runtime: Define Elixir major versions, and let it pick the latest minor one
2024-05-24 13:21:08 +02:00
Badlop
2cd53410bc
Runtime: Avoid testing with OTP 27 + rebar2, because Jose has warnings_as_errors
...
and we can't disable that option in rebar2 using overrides
2024-05-24 13:21:07 +02:00
Badlop
ad7008a545
CI and Runtime: Update Erlang/OTP 27.0-rc3 to 27
2024-05-24 13:21:05 +02:00
Badlop
bedfc2e188
rebar.config: Add temporary workaround to compile Jose with Erlang/OTP 27.0
2024-05-24 13:21:04 +02:00
Badlop
83b1a40f8b
Run "make doap"
2024-05-24 13:21:02 +02:00
Badlop
a05dbcc2b2
Add some XEPs support that was forgotten
2024-05-24 13:21:00 +02:00
Badlop
01f2697faf
mod_muc_admin: Update module to the new gen_mod API
2024-05-24 13:20:58 +02:00
Badlop
fba915e04e
gen_mod: Add support to specify a hook global, not vhost-specific
2024-05-24 13:20:56 +02:00
Badlop
0d1cbc62d4
mod_muc_rtbl: Change this module attribute name to the main one: behaviour
...
https://erlang.org/documentation/doc-15.0-rc3/doc/system/modules.html#behaviour-module-attribute
2024-05-24 13:20:52 +02:00
Holger Weiss
f72cb1b5c8
.gitignore: Ignore ctags/etags files
...
Running `make TAGS` generates a `TAGS` file, and "vim-erlang-tags"
produces a `tags` file when :ErlangTags is called.
2024-05-19 18:55:38 +02:00
Alexey Shchepin
cb49fcf459
Fix handling of mqtt_pub table definition from mysql.sql and fix should_update_schema/1 in ejabberd_sql_schema.erl
2024-05-18 05:18:24 +03:00
Badlop
66a08b6f18
Run "make doap"
2024-05-17 11:36:07 +02:00
Badlop
2554b51173
hook_deps: Use precise name: hooks are added and later deleted, not removed
2024-05-17 11:36:00 +02:00
Badlop
d2e7b5ffa0
hook_deps: Fix to handle FileNo as tuple {FileNumber, CharacterPosition}
2024-05-17 11:35:57 +02:00
Badlop
38fd9a3ed2
Update URLs of module documentations
2024-05-10 16:04:28 +02:00
dependabot[bot]
4ec236966a
Bump exsync from 0.4.0 to 0.4.1
...
Bumps [exsync](https://github.com/falood/exsync ) from 0.4.0 to 0.4.1.
- [Changelog](https://github.com/falood/exsync/blob/main/CHANGELOG.md )
- [Commits](https://github.com/falood/exsync/compare/v0.4.0...v0.4.1 )
---
updated-dependencies:
- dependency-name: exsync
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-05-07 11:28:19 +02:00
Badlop
696e42b5b4
Use json module when Erlang/OTP 27, jiffy with older ones
2024-05-07 11:28:17 +02:00
Badlop
0ad1d315e8
Use maps instead of tuple+list+tuple as arguments in jiffy functions
2024-05-07 11:28:16 +02:00
Badlop
4697a9295a
Update p1_acme that uses Erlang's json library instead of jiffy when OTP 27
2024-05-07 11:28:14 +02:00
Badlop
9fbc7b96e4
Update pkix dependency with minor fixes for compilation warnings
2024-05-07 11:28:11 +02:00
Badlop
392d7ee30b
CI and Runtime: Now ejabberd and dependencies can compile with OTP 27.0-rc3
2024-05-02 17:30:21 +02:00
Badlop
025e2a5760
CI and Runtime: Don't get explicitly dependencies ( #4213 )
2024-05-02 17:30:04 +02:00
Badlop
f7dc4fa2ac
configure.ac: When using rebar3 with old Erlang, unlock some dependencies ( #4213 )
2024-05-02 17:29:57 +02:00
Badlop
13ebe89fdc
Remove unused format_status/2 callback that is deprecated in OTP 27
2024-04-30 18:00:32 +02:00
Badlop
c7c3cc10c5
mix.exs: Dirty workaround to get port_compiler with OTP 27 support
2024-04-30 18:00:29 +02:00
Badlop
e9b9159d23
rebar.config.script: Use port_compiler branch that supports OTP 27.0-rc2
...
If we provide this plugin in ejabberd, then dependencies will not download
the old pc 1.14.0 which doesn't support OTP 27.0-rc2, and will use this one.
2024-04-30 18:00:27 +02:00
Badlop
f15d5d073e
configure.ac: When using rebar3, unlock dependencies that are disabled ( #4212 )
2024-04-30 18:00:25 +02:00
Badlop
b461657407
Bump idna from 6.0.0 to 6.1.1
...
Bumps [idna](https://github.com/benoitc/erlang-idna ) from 6.0.0 to 6.1.1.
- [Changelog](https://github.com/benoitc/erlang-idna/blob/master/CHANGELOG )
- [Commits](https://github.com/benoitc/erlang-idna/compare/6.0.0...6.1.1 )
---
updated-dependencies:
- dependency-name: idna
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-04-30 18:00:23 +02:00
Badlop
0da767f568
ban_account/unban: When mod_private is disabled, return meaningful error ( #4201 )
2024-04-30 18:00:21 +02:00
Badlop
395a73bbe0
Handle case when mod_private is not enabled ( #4201 )
2024-04-30 18:00:18 +02:00
Badlop
5870e2e378
Use updated xmpp library with minor improvement in auth ( #4201 )
2024-04-30 18:00:16 +02:00
Badlop
94a0aa6967
Add support to provide ban detail when account logins ( #4201 )
2024-04-30 18:00:14 +02:00
Badlop
2bfc4b0f5d
Use "jabber:" namespace that clients cannot use ( #4201 )
...
As mentioned in:
Certain namespaces are reserved in Jabber (namespaces beginning with
'jabber:' or 'http://jabber.org/ ', as well as 'vcard-temp').
If a user attempts to get or set jabber:iq:private data in a reserved
namespace, historically some server implementations have chosen to
return an error (commonly "Not Acceptable") to the sender.
https://xmpp.org/extensions/xep-0049.html#example-5
2024-04-30 18:00:12 +02:00
Badlop
374f6b8e7d
Improve recent commit so users cannot prevent banning, fixes 44bafa4
( #4201 )
2024-04-30 18:00:11 +02:00
Badlop
33c6b3700e
Ammend ejabberd_admin:update/0 from adbccbe
to be used by Rebar3 Sync
2024-04-30 18:00:08 +02:00
Badlop
eb975268f4
Add ExSync tool to "make relive" with Mix
...
How to use:
- Compile ejabberd with Mix
- Start ejabberd with "make relive"
- Edit some ejabberd source code file
- Save the file, and ExSync will compile and reload it automatically
ExSync depends on FileSystem library, which requires inotify-tools, see
https://github.com/falood/file_system#system-support
References:
https://hex.pm/packages/exsync
https://github.com/falood/exsync
2024-04-30 18:00:06 +02:00
Badlop
b0afe4946d
Add Sync tool to "make relive" with Rebar3
...
How to use:
- Compile ejabberd with Rebar3
- Start ejabberd with "make relive"
- Edit some ejabberd source code file
- Save the file, and Sync will compile and reload it automatically
I've added src_dirs option so Sync doesn't act on dependencies,
which would produce many garbage log lines.
However, now it only works if the parent directory is named "ejabberd"
Sync requires at least Erlang/OTP 21, which introduced the
new try-catch syntax to retrieve the stacktrace
https://www.erlang.org/patches/otp-21.0
References:
https://hex.pm/packages/sync
https://github.com/rustyio/sync
2024-04-30 17:59:59 +02:00
Badlop
5c6a399f5b
Update links to some moved content in docs.ejabberd.im
2024-04-25 02:55:02 +02:00
Badlop
e744665171
Fix links in mix.exs
2024-04-24 13:20:48 +02:00
Badlop
0b16cbddde
Remove vcard example config in mod_proxy65, it breaks PDF Docs generation
2024-04-24 13:20:47 +02:00
Badlop
7ea2c6eabf
Improve markdown of md files
2024-04-24 13:20:46 +02:00
Badlop
45ca11ecd0
Improve markdown of generated documentation
2024-04-24 13:20:44 +02:00
Badlop
d8cdd82bf8
Rewrite vcard example configuration to not require extended format
2024-04-24 13:20:43 +02:00
Badlop
345af5a535
Remove ... in example configuration: it is assumed and reduces verbosity
2024-04-24 13:20:42 +02:00
Badlop
6e5895ce45
Update some modules doc to use the note field
2024-04-24 13:20:41 +02:00
Badlop
b70a2fe4cf
Support for version note in modules too
2024-04-24 13:20:40 +02:00
Badlop
da01d932ea
Add some text to examples, so docs Makefile can find and update its syntax
2024-04-24 13:20:39 +02:00
Badlop
7cd5808766
Mark toplevel options, commands and modules that changed in latest version
2024-04-24 13:20:37 +02:00
Badlop
c98302b3c0
Now modules themselves can have version annotations in 'note'
...
This was already supported in module options, toplevel options
and ejabberd_commands.
2024-04-24 13:20:36 +02:00
Badlop
cd7eedf589
Update API to mkdocs
2024-04-24 13:20:35 +02:00
Badlop
27bd8852a1
Update name of API section
2024-04-24 13:20:34 +02:00
Badlop
effcf0b7cf
Update markdown text for version notes, to work with mkdocs
2024-04-24 13:20:33 +02:00
Badlop
71b9db688a
Fix markdown indentation of JSON examples
2024-04-24 13:20:32 +02:00
Badlop
8be6dc7758
Use new shorthand to provide URLs relative to ejabberd Docs
2024-04-24 13:20:30 +02:00
Badlop
569f0b303b
Use same module shorthand in API documentation than in module docs
2024-04-24 13:20:29 +02:00
Badlop
15e3add909
CHANGELOG.md: Fix markdown syntax to work with MkDocs
2024-04-24 13:20:28 +02:00
Badlop
68c0c4d94f
Update doc headers to MkDocs and mention ejabberd version used
2024-04-24 13:20:27 +02:00
Badlop
a550a1c55c
Fix documentation links to new URLs generated by MkDocs
2024-04-24 13:20:26 +02:00
Badlop
832588f861
mix.lock: Update to get p1_acme fix in ACME IPv6
2024-04-24 13:20:24 +02:00
Paweł Chmielowski
73bcabd2fa
Replace muc.example.com with conference.example.com in commands docs
...
Second form matches what we use by default, and we seen some confusion
between those two when people try to adopt commands from docs to real
usage.
2024-04-23 14:33:34 +02:00
Badlop
da8c9f3357
rebar.lock: Track it, now that rebar3 uses loose dependency versioning
...
This is recommended in Rebar3 documentation:
[Lock files] should always be checked into source control.
https://rebar3.org/docs/configuration/dependencies/#lock-files
2024-04-23 13:46:21 +02:00
Badlop
6cfef4f476
mix.lock: Update to latest versions
2024-04-22 18:28:34 +02:00
Badlop
e9fbfaf536
Update Luerl to 1.2.0 when OTP>=20, simplifies commit a09f222
2024-04-22 18:28:34 +02:00
Badlop
0407c56605
rebar.config: Update deps version to rebar3's relaxed versioning
2024-04-22 18:28:34 +02:00
Badlop
1a63443e02
rebar.config.script: Support relaxed dependency version ( #4192 )
...
Instead of adding another element to the tuple, let's reuse the second
element, which was used only by rebar2, and always has ".*" as value.
2024-04-22 18:28:34 +02:00
Badlop
0345f798bd
Update p1_acme to git, to support Jose 1.11.10 and Ipv6 support ( #4170 )
2024-04-22 18:28:34 +02:00
Badlop
ee9d4d56a9
Update Jose to the new 1.11.10 for Erlang/OTP > 23
2024-04-22 18:28:34 +02:00
Badlop
44bafa478e
New ban commands use private storage to keep ban information ( #4201 )
2024-04-22 18:28:15 +02:00
badlop
ce57e02769
Merge pull request #4205 from LeszekBlazewski/fix-command-on-start-docs
...
fix: invalid CTL_ON_CREATE usage in docker-compose example
2024-04-19 18:24:46 +02:00
LeszekBlazewski
64cd794c02
fix: invalid CTL_ON_CREATE usage in docker-compose example
2024-04-19 16:14:05 +02:00
Badlop
9c8ae96f25
Define base64url dependency only when using rebar2 and Erlang<24
...
base64url is not called directly in ejabberd code since e227940
,
it is only required by p1_acme and erlang-jose 1.11.1
erlang-jose 1.11.1 defines base64url dependency as an hex package,
and rebar2 is not able to download it.
For that reason, when compiling ejabberd with rebar2,
we provide a rebar2-friendly base64url dependency definition.
That way when jose is downloaded, that dependency is already available.
2024-04-19 01:50:42 +02:00
Badlop
e973360aa7
Test: Fix some minor compilation warnings
...
- This QueryID is unnecessary since d3aeed8
, due to d6e9e03
- DB variable was added in d32a0ce
to detect riak and disable some tests,
but support for Riak was removed later in 3f7d9e3
.
- MyJID was added in 5b863c2
but was never actually used
- recv2 return should be checked
2024-04-19 01:50:42 +02:00
dependabot[bot]
697e5b8b6c
Bump peaceiris/actions-gh-pages from 3 to 4
...
Bumps [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages ) from 3 to 4.
- [Release notes](https://github.com/peaceiris/actions-gh-pages/releases )
- [Changelog](https://github.com/peaceiris/actions-gh-pages/blob/main/CHANGELOG.md )
- [Commits](https://github.com/peaceiris/actions-gh-pages/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: peaceiris/actions-gh-pages
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-04-19 01:50:42 +02:00
Badlop
017f609a51
make-binaries: Bump OpenSSL to 3.3.0
2024-04-19 01:50:42 +02:00
Badlop
22f0d44fed
make-binaries: Bump Linux-PAM to 1.6.1
2024-04-19 01:50:42 +02:00
Paweł Chmielowski
0fdf58b1ec
Add ability to use additional custom errors when parsing options
2024-04-17 14:01:21 +02:00
Badlop
051bf2968a
Runtime: Test 27.0-rc1 instead of 27, as port_compiler still fails in rc2
2024-04-12 17:56:02 +02:00
Badlop
4fd83631ec
Mention in what ejabberd version was added update_sql_schema option
2024-04-12 16:41:25 +02:00
Badlop
a29d54c497
Comment ERTS_VSN variable in ejabberdctl when not used ( #4194 )
...
That variable is not used in "make relive" and "make install",
so let's comment the variable in ejabberdctl when preparing
that file for those targets.
2024-04-12 16:41:21 +02:00
Badlop
ed6762b8ee
Don't name integer and string results in API examples ( #4198 )
...
Since ejabberd 24.02, mod_http_api does not name any results,
previously integer and strings were named, but other results were not.
And ejabberdctl obviously does not name results either.
Only ejabberd_xmlrpc does.
Consequently, the documentation should not name results in the examples.
2024-04-12 12:08:03 +02:00
Badlop
b6a0c7e57f
mod_configure: Retract 'Get User Password' command to update XEP-0133 1.3.0
...
https://github.com/xsf/xeps/pull/1314
2024-04-12 12:07:50 +02:00
Badlop
ba0be28d45
CONTAINER.md: live in podman doesn't strictly require EJABBERD_BYPASS_WARNINGS
2024-04-12 12:07:46 +02:00
Badlop
ef5a435480
sql_server option: Mention in what version it was last updated
2024-04-12 12:07:40 +02:00
Paweł Chmielowski
61ad808d26
Fix validation of user field in get_user_subscriptions command
...
I made it test for valid muc room, instead of just valid username.
This should fix issue #4197
2024-04-11 12:17:02 +02:00
Badlop
426e33d3a6
Fix previous commit: shellcheck reported a warning
2024-04-04 15:58:48 +02:00
Badlop
d6d8bce0e4
If INET_DIST_INTERFACE is IPv6, set required option (thanks to Stu Tomlinson)( #4189 )
2024-04-04 13:42:09 +02:00
Badlop
7c76f2b764
Handle the "approved" attribute. As feature isn't implemented, discard it ( #4188 )
...
Reference:
https://xmpp.org/rfcs/rfc6121.html#roster-syntax-items-approved
Additionally, when roster contains unknown attribute, discard it and
show a warning
2024-04-04 13:42:09 +02:00
Paweł Chmielowski
735516ed37
Don't start sql connection pools for unknown hosts
...
It's possible to trigger that by passing wrong domain to some ctl commands,
and if you don't have default credentials for sql connections, you get
repeating errors when this pools tries to reconnect from error.
2024-04-04 11:05:34 +02:00
Badlop
dbf0fb8e86
Runtime: Run Dialyzer in Mix jobs
2024-04-01 14:26:55 +02:00
Badlop
f50b5e1a58
Fix typo in elixir code that breaks 537aac2
when using mix
2024-04-01 14:26:55 +02:00
Badlop
50c74ab821
Fix code:lib_dir call to work with Erlang/OTP 27.0-rc2
2024-04-01 14:26:55 +02:00
Badlop
a1b76ac0a9
Container: Update to Elixir 1.16.2
2024-04-01 14:26:55 +02:00
Badlop
49ca325845
make-binaries: Bump to OTP 26.2.3, Elixir 1.16.2, Expat 2.6.2
2024-04-01 14:26:55 +02:00
dependabot[bot]
703e98ec45
Bump ex_doc from 0.31.1 to 0.31.2
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.31.1 to 0.31.2.
- [Release notes](https://github.com/elixir-lang/ex_doc/releases )
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.31.1...v0.31.2 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-04-01 14:26:55 +02:00
dependabot[bot]
208f798b07
Bump softprops/action-gh-release from 1 to 2
...
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release ) from 1 to 2.
- [Release notes](https://github.com/softprops/action-gh-release/releases )
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md )
- [Commits](https://github.com/softprops/action-gh-release/compare/v1...v2 )
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-04-01 14:26:55 +02:00
Badlop
059a028c0c
CONTRIBUTING.md: Fix markdown
2024-04-01 14:26:55 +02:00
Badlop
7269d171a7
README.md: Fix markdown syntax and add docs badge
2024-04-01 14:26:55 +02:00
Badlop
3ca2d99a47
COPYING: Move the markdown-formatted file to Docs git, keep plaintext file here
2024-04-01 14:26:55 +02:00
Paweł Chmielowski
9ab60935a4
Add update_primary_key command to sql schema updater
2024-03-21 10:58:06 +01:00
Paweł Chmielowski
c5437235f3
Make mod_vcard_xupdate send hash after avatar get set for first time
...
We need to remove info about empty photo in session stored presence after
avatar get set, otherwise as we don't modify presences like that in
mod_vcard_xupdate, we will send presence with updated hash.
This fixes issue #4182
2024-03-20 10:57:12 +01:00
Paweł Chmielowski
537aac24f7
Improve detection of types in odbc
...
This should fix issue with dialyzer on erlang 26.2.3+
2024-03-18 14:54:32 +01:00
Paweł Chmielowski
8f20dd8425
Test retractons in mam_tests
2024-03-18 12:42:03 +01:00
Badlop
1639471250
Fix crash running export2sql when MAM enabled but MUC disabled
...
Problem introduced in cfc393a
2024-03-07 18:38:32 +01:00
Badlop
fcc5f00e75
Copy from COPYING the sentence about OpenSSL additional permission
2024-03-07 18:38:32 +01:00
Badlop
80b06da56b
Download GPL 2 in markdown format
...
Downloaded file https://www.gnu.org/licenses/old-licenses/gpl-2.0.md
from https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
2024-03-07 18:38:32 +01:00
Badlop
2c1b0bb77b
Use shorthands provided by docs.ejabberd.im Makefile, fix markdown syntax
2024-03-07 18:38:32 +01:00
Badlop
f5c8406353
Dialyzer: Add support to run Dialyzer with Mix
2024-03-06 15:25:38 +01:00
Badlop
c7f76944f3
Dialyzer: Update Elixir code to satisfy dialyzer warnings
2024-03-06 15:25:38 +01:00
Badlop
6542a70c05
Dialyzer: First set alias definitions and then use them in @type
2024-03-06 15:25:38 +01:00
Badlop
5bb94f1d9e
Result of running "make options"
2024-03-06 15:25:38 +01:00
Badlop
2378ea9c07
Dialyzer: Replace re:mp dirty workaround from 0bbc255
with other less dirty
2024-03-06 15:25:38 +01:00
Badlop
cd30538130
Fix "ejabberdctl iexlive" after "make prod" when using Elixir
...
The version number in ejabberd is 24.02,
but Elixir requires semver, that is, 24.2.
Use the version() function, which does the conversion.
2024-03-06 15:25:38 +01:00
Badlop
356ee22cc5
Change method from 1bf80e8
to determine if Elixir supports default_formatter function
...
Dialyzer when using Elixir complains about undefined function module_info.
2024-03-06 15:25:38 +01:00
Badlop
281515cd9f
mod_muc_log: Hide join/leave lines, add method to show them
2024-03-06 15:25:32 +01:00
Badlop
c0055b7a7f
mod_muc_log: Support allowpm introduced in 2bd61ab
2024-03-06 15:23:16 +01:00
Holger Weiss
6bdbafcd5c
Merge remote-tracking branch 'processone/pr/4169'
...
* processone/pr/4169:
mod_mam: Document that XEP-0441 is implemented as well
2024-03-04 11:30:53 +01:00
Melvin Keskin
a29955ff96
mod_mam: Document that XEP-0441 is implemented as well
2024-03-03 21:05:57 +01:00
Badlop
91cca3cff3
mod_conversejs: Simplify support for @HOST@ in default_domain option ( #4167 )
2024-02-28 13:06:49 +01:00
Badlop
716f5de517
mod_matrix_gw: Fix support for @HOST@ in matrix_domain option ( #4167 )
2024-02-28 13:06:47 +01:00
Paweł Chmielowski
aac0e782d0
Don't use ejabberd_config:get_myhosts()
2024-02-28 12:24:50 +01:00
Paweł Chmielowski
c69884fa3f
Config reload should update loger settings part 2
2024-02-28 12:03:42 +01:00
Paweł Chmielowski
06675e4fb2
Improve validation of arguments in mod_muc_admin commands
...
This adds validation to couple command where they were missing and catch
passing unknown hostnames.
2024-02-28 12:01:14 +01:00
Paweł Chmielowski
ad67710f7e
Make config reload update new logger settings
2024-02-28 11:46:30 +01:00
Badlop
654601ff23
Set version to 24.02
2024-02-27 10:32:55 +01:00
Badlop
d29ef59514
Update links to SQL files in the man page
2024-02-27 10:06:40 +01:00
Badlop
e3e8b9afb4
COMPILE.md: Update text about OTP release to match current behaviour
...
Also keep this document direct, short and introductory, there's a
already a section in the ejabberd Docs site with all the details.
2024-02-27 10:06:39 +01:00
Badlop
a8e3af3586
Update Japanese translation (thanks to Mako N)
2024-02-27 10:06:37 +01:00
Badlop
11ff7d1ff9
Update Italian translation (thanks to Ermete Melchiorre)
2024-02-27 10:06:36 +01:00
Badlop
b04b16825f
Revert "CI: Don't run CT with OTP 27 until "Peer certificate rejected" gets solved"
...
This recent fix in fast_tls solves the problem:
528d9759d6
This reverts commit 95e9a63dcb
.
2024-02-27 10:06:34 +01:00
Paweł Chmielowski
0f43a7f36b
Update deps
2024-02-26 17:26:30 +01:00
Badlop
95e9a63dcb
CI: Don't run CT with OTP 27 until "Peer certificate rejected" gets solved
2024-02-26 16:16:19 +01:00
Badlop
146d958fc0
CHANGELOG.md: Update to match the newest commits
2024-02-26 16:16:17 +01:00
Badlop
bb349d6085
Update "make edoc" to use ExDoc
2024-02-26 16:16:14 +01:00
Badlop
cb9053cd79
Makefile.in: Inform what build tools support some tasks
2024-02-26 16:16:13 +01:00
Badlop
4146f19814
Update man page
2024-02-26 16:16:11 +01:00
Badlop
79eca7c098
Update version number from the unreleased 24.01 to 24.02
2024-02-26 16:16:09 +01:00
Badlop
723c53e1df
Revert "Container: Update make-binaries to support setup-beam v1.17.2"
...
We can now revert commit c81a47a692
because erlef/setup-beam v1.17.3 has recovered its original behavior in
951dd857ae
2024-02-26 16:16:08 +01:00
Badlop
daca3b558b
Use another example, because "archive" is replaced when generating EDoc
2024-02-26 16:16:06 +01:00
Badlop
2075480b14
Improve some documentation: URLs are parsed later when preparing Docs
2024-02-26 16:16:05 +01:00
Badlop
e43194d59b
README.md: Fix typo in link to COPYING file: its name is plain-text, not markdown
2024-02-26 16:16:03 +01:00
Badlop
8bbc27fd39
CHANGELOG.md: Fix warnings reported by "make edoc"
2024-02-26 16:16:01 +01:00
Badlop
9a9a466bd4
CHANGELOG.md: Lower markdown headers level so they get better rendered
2024-02-26 16:16:00 +01:00
Badlop
92c533f42a
CONTRIBUTING.md: Remove anchor with name attribute
2024-02-26 16:15:58 +01:00
Badlop
863b7eee8b
CONTAINER.md: Update documentation about sofware version numbers
2024-02-26 16:15:56 +01:00
Badlop
417294339d
Matrix: Minor documentation improvements
2024-02-26 16:15:51 +01:00
Holger Weiss
6aaefc663b
Fix XEP-0425: Message Moderation with SQL storage
...
Use the correct server name and room JID when removing moderated
messages from SQL.
2024-02-24 22:06:36 +01:00
Jérôme Sautret
a6b10ac4c0
Merge branch 'master' of github.com:processone/ejabberd
2024-02-23 12:09:51 +01:00
Jérôme Sautret
2b7b92edee
Add mod_matrix_gw doc
2024-02-23 12:09:10 +01:00
Paweł Chmielowski
f4de0cef26
Add alternative types that should fix dialyzer on r26
2024-02-22 17:25:56 +01:00
Paweł Chmielowski
1b5a9c1a1f
Fix dialyzer warnings in ejabberd_sql in R27
2024-02-22 16:12:04 +01:00
Badlop
a09f222b4c
Use Luerl 1.0 for Erlang 20, 1.1.1 for 21-26, and temporary fork for 27
...
The Luerl 1.1.0 and 1.1.1 hex packages contain garbage files that
break compilation with Erlang 20.
2024-02-21 16:46:37 +01:00
Badlop
5fb76b4918
Use http_uri only when matrix requires it, ammend commit 59ff77e
2024-02-21 16:46:37 +01:00
Badlop
27d5a1d5bb
configure.ac: Update enable-tools description to its current usage
2024-02-21 16:46:37 +01:00
Badlop
ba1917d23c
vars.config.in: Remove comment that nowadays is obsolete
2024-02-21 16:46:37 +01:00
Badlop
0b37d50dac
rebar.config.script: Don't check REBAR_PROFILE here
...
To get release with development tools,
don't check rebar profile here.
Instead, use "./configure --enable-tools" and it will be
checked in ejabberd.app.src.script
2024-02-21 16:46:37 +01:00
Badlop
9275bf40b2
Rebar3/Mix: If dev profile/environment, enable tools automatically
2024-02-21 16:46:37 +01:00
Badlop
4431fbbe5a
Include only observer; runtime_tools is automatically added
2024-02-21 16:46:37 +01:00
Badlop
8c64ce67fc
CI/Runtime: Test also with the new Erlang/OTP 27.0-rc1
2024-02-21 16:46:26 +01:00
Badlop
1ddc4a5c5d
CI/Runtime: For OTP < 24 use rebar binaries from ejabberd 21.12
2024-02-21 16:45:28 +01:00
Badlop
081cab821b
Rebar/Rebar3: Update binaries to work with Erlang/OTP 24-27
...
They are compiled from their git repositories, main branches,
using erlang:24-slim docker image.
To compile ejabberd using rebar/rebar3 and Erlang 20.0 up to 23.3,
you can download the old binaries from ejabberd 21.12, available at:
https://github.com/processone/ejabberd/raw/21.12/rebar
https://github.com/processone/ejabberd/raw/21.12/rebar3
2024-02-21 16:45:24 +01:00
Badlop
efe5c76469
Runtime: Test compilation with the included rebar/rebar3 binaries
2024-02-19 15:33:09 +01:00
Badlop
16c9b169f2
Runtime: Properly purge nginx in Rebars job, as done in commit 853f35c
2024-02-19 15:33:09 +01:00
Badlop
73f20a8f1e
Makefile: Now --with-rebar detects if it's system-installed, otherwise use local one
2024-02-19 15:33:09 +01:00
Badlop
70e430cff1
Makefile: No need to use escript to run rebar|rebar3|mix
...
Usage of escript to run rebar was added to Makefile.in
when support for rebar2 was added in 4d8f770
for ejabberd 13.10.
Nowadays this seems unnecessary, and configure.ac right now can
determine what binary to use: the sysmte installed or local one.
2024-02-19 15:33:09 +01:00
Badlop
aa21aee14b
configure: If --with-rebar=rebar3 but rebar3 not system-installed, use local one
2024-02-19 15:33:09 +01:00
Badlop
59ff77e171
Matrix: Fix commit 816900a
for OTP below 25.0
...
uri_string:quote was added in OTP 25.0
2024-02-19 15:33:09 +01:00
Paweł Chmielowski
045170a67e
Fix dialyzer warning on R26 in mod_matrix*
2024-02-19 12:08:56 +01:00
Alexey Shchepin
c9deea1f6f
Bugfix in mod_matrix_gw_room:get_sender_power_level
2024-02-19 14:05:25 +03:00
Alexey Shchepin
c10f2a22b6
Fix dialyzer errors
2024-02-16 06:00:57 +03:00
Alexey Shchepin
45f24c63cb
Update mod_matrix_gw copyright dates
2024-02-15 09:38:14 +03:00
Badlop
18cb0bca19
Fix compilation with Erlang/OTP 27: don't use the reserved word 'maybe'
2024-02-15 01:57:44 +01:00
Badlop
071dc08405
Container: Support OTP versions with "-rc" string
2024-02-15 01:57:42 +01:00
Badlop
b8181974ec
Replace 'if' preprocessor directive with 'ifndef', add OTP_BELOW_24
...
The 'if' preprocessor directive was added in Erlang/OTP 21.0,
but ejabberd currently supports Erlang 20.0 and higher...
Let's use 'ifndef' instead.
https://www.erlang.org/doc/reference_manual/macros.html#flow-control-in-macros
https://www.erlang.org/doc/apps/compiler/notes#compiler-7.2
https://www.erlang.org/patches/otp-21.0#compiler-7.2
2024-02-15 01:57:41 +01:00
Badlop
816900a6cf
Use uri_string module instead of the deprecated http_uri
...
http_uri is marked for deprecation since OTP 23
Use uri_string which is available since OTP 21
No need to provide alternative, because it's used only by mod_matrix,
and this runs only with Erlang/OTP 24 or higher.
https://www.erlang.org/patches/otp-23.0#inets-7.2
https://www.erlang.org/docs/23/man/http_uri
2024-02-15 01:57:39 +01:00
Badlop
2438fc8b31
Add OTP_BELOW_25 to mix.exs that was added to rebar.config in 4ae06f0
2024-02-15 01:57:38 +01:00
Badlop
8b84f991e1
make-binaries: Bump many dependency versions
...
Unfortunately, newer versions of linux-pam throw compilation problems:
linux-pam 1.5.3:
tty_conv.c:9:10: fatal error: termio.h: No such file or directory
linux-pam 1.6.0:
pam_namespace.c:649:41: error: 'SIZE_MAX' undeclared (first use in this function)
2024-02-15 01:57:36 +01:00
Badlop
3c98ec5b48
Update "make translations" to reduce build requirements
...
Previously, preparing translations required rebar3 and:
./configure --enable-tools
make
make translations
With this change it works with rebar3 and mix, just running:
./configure
make translations
2024-02-15 01:57:34 +01:00
Badlop
e1f863afa4
Makefile: Group all variable definitions, and later just use them
2024-02-15 01:57:32 +01:00
Badlop
f40a036d97
Makefile: Express rebar3 profile using "as profile"
...
This allows to use REBAR_PROFILE to add another profile.
Right now it doesn't seem specially useful, but it's possible:
REBAR_PROFILE=dev make prod
REBAR_PROFILE=translations make dev
https://rebar3.org/docs/configuration/profiles/
2024-02-15 01:57:30 +01:00
dependabot[bot]
3f07e232aa
Bump actions/upload-artifact from 3 to 4
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-02-15 01:57:28 +01:00
Alexey Shchepin
f44e23b8cc
Add mod_matrix_gw
2024-02-14 06:59:23 +03:00
Paweł Chmielowski
67a6776fba
Add ability to ignore failures in execution of container CTL_ON_* commands
...
This will allow to use register in CTL_ON_CREATE and not abort if used with
existing data that have account already registered.
2024-02-13 11:55:23 +01:00
Badlop
cdaf45f91c
Test: Check that the message we get is the welcome message, not other
2024-02-09 14:12:22 +01:00
Badlop
e1b94487ef
Container: Apply commit 35b727a
...
ejabberdctl: Detect problem running iex and show explanation
2024-02-09 14:12:21 +01:00
Badlop
2531ebf685
Container: Apply commit abf0796
...
ejabberdctl: Detect problem running etop and show some help
2024-02-09 14:12:20 +01:00
Badlop
01909b07ce
Container: Apply commit e1f14ac
...
Rebar3: Provide proper path to iex
2024-02-09 14:12:18 +01:00
Badlop
39ea08b7cb
Container: Apply commit 841d5c0
and 81ceefe
...
Fix startup problem when having set EJABBERD_OPTS and logger options
Remove spurious line
2024-02-09 14:12:17 +01:00
Badlop
413ffd7470
Container: Apply commit 19e2e16
...
Let "ejabberdctl etop" work in a release (if observer is available)
2024-02-09 14:12:15 +01:00
Badlop
66645baa75
Container: Apply commit 122af79
...
move spool dir to make it fully configurable per ejabberdctl.cfg (#3863 )
2024-02-09 14:12:13 +01:00
Badlop
021f0be119
Container: Update to Erlang/OTP 26.2, Elixir 1.16.1 and Alpine 3.19
2024-02-09 14:12:12 +01:00
Badlop
1962fc88d6
make-binaries: Bump OpenSSL 3.2.1, Erlang/OTP 26.2.2, Elixir 1.16.1
...
The update of OpenSSL follows:
eae4ab473d
39823a8009
92e9a41888
2024-02-09 14:12:10 +01:00
Badlop
fa12301e08
ejabberdctl: Fix problem when running ejabberdctl in container
2024-02-09 14:12:08 +01:00
Badlop
9f934abd48
ejabberdctl: Fix crash running defined commands in container and installers
2024-02-09 14:12:06 +01:00
Badlop
4680954112
README.md: Add links to nightly builds
2024-02-09 14:12:03 +01:00
Paweł Chmielowski
7e6ffc34fb
Update mix.lock
2024-02-07 19:32:49 +01:00
Paweł Chmielowski
95135af6b3
Rework temporary node name generation in ejabberdctl
...
This should limit number of possible node names generated by and with that
prevent atom space exhaustion in ejabberd process.
On R23+ we switch to using native dynamic node features and on older
versions we iterate over small number of possible names and skip those
already in use.
2024-02-07 12:17:16 +01:00
Badlop
c81a47a692
Container: Update make-binaries to support setup-beam v1.17.2
...
With setup-beam v1.17.2, make-binaries failed in the Container action with:
* ERROR: No usable Erlang/OTP system for the build machine found! Cannot
* cross compile without such a system.
*
* Either build a bootstrap system for the build machine, or provide
* an Erlang/OTP-26 system in the $PATH, and try again. For more
* information on cross compiling Erlang/OTP-26, see the
* $ERL_TOP/xcomp/README file.
The problematic commit is:
cf854bf149
more concretely this change:
- core.exportVariable(installDirForVarName, cachePath)
+ core.exportVariable(installDirForVarName, catchPathBin)
Up until setup-beam@v1.17.1, the INSTALL_DIR_FOR_OTP was something like
/opt/hostedtoolcache/otp/ubuntu-22.04/OTP-26.1.1/x64
but starting in v1.17.2, the path contains /bin, for example:
/opt/hostedtoolcache/otp/ubuntu-22.04/OTP-26.1.1/x64/bin
2024-02-06 17:57:27 +01:00
Badlop
3bd9fc9f43
Container: Fix typo in cache key name 1.25->1.26
2024-02-06 17:57:27 +01:00
Badlop
c664d6dc32
Workflows: Update actions to use Node.js 20 as recommended by Github Actions
2024-02-06 17:57:27 +01:00
Badlop
a182ec12cf
Workflows: Use explicit ubuntu-22.04 instead of a varying ubuntu-latest
...
Also notice that ubuntu-22.04 doesn't include Erlang/OTP.
2024-02-06 17:57:27 +01:00
Badlop
70bf316f9d
Explain that reopen_log and rotate_log only affect some modules ( #4156 )
2024-02-06 17:52:31 +01:00
Badlop
2979fb4a9b
ext_mod: Support in WebAdmin when a module spec lacks some information
2024-02-06 17:52:29 +01:00
Badlop
a33be2d67a
ejabberdctl.bc: Improve caching of commands list
...
Improvements:
- Keep command cache for one hour
- Fix parsing command list with ECMA-48 SGR escape sequence for font attributes
2024-02-06 17:52:27 +01:00
Badlop
c6878f9c9d
ejabberdctl: Print argument description, examples and note in help
2024-02-06 17:52:25 +01:00
Badlop
1d65f4471b
ejabberdctl: Document exclusive ejabberdctl commands like all the others
2024-02-06 17:52:24 +01:00
Badlop
e9de3748bd
ejabberdctl: Reorganize commands related to mnesia info
...
- ejabberdctl mnesia: already implemented in ejabberd_admin.erl
- ejabberdctl mnesia info: renamed to mnesia_info_ctl
- ejabberdctl mnesia Arg: command removed, use mnesia_info_ctl instead
2024-02-06 17:52:22 +01:00
Badlop
ea40afbe03
update_sql_schema: Fix typo, add example MySQL version number
2024-02-06 17:52:19 +01:00
Holger Weiss
01c70868ef
Ignore hints when checking for chat states
...
Ignore XEP-0334 elements when checking whether a stanza is a stand-alone
XEP-0085 chat state notification. This allows for CSI-filtering chat
states with (e.g.) a no-store hint.
Thanks to Thilo Molitor for reporting the issue.
2024-02-03 13:20:34 +01:00
Alexey Shchepin
66d701e788
Add print_sql_schema ejabberdctl command
2024-01-24 22:52:20 +03:00
Badlop
6eff14a71d
Update changelog
2024-01-23 14:41:23 +01:00
Paweł Chmielowski
506152d4e7
Use tagged version of dependencies
2024-01-23 13:39:21 +01:00
Badlop
6e9c96a0e5
Run: make doap
2024-01-22 17:29:24 +01:00
Badlop
e58be4d57e
Update man page
2024-01-22 17:29:23 +01:00
Badlop
e94edbdb8f
Update Chinese translation (thanks to Sketch6580)
2024-01-22 17:29:21 +01:00
Badlop
0c8d2ea557
Update Ukrainian translation (thanks to Олександр Кревський)
2024-01-22 17:29:20 +01:00
Badlop
07e3456631
Update Portuguese translation (thanks to Silvério Santos)
2024-01-22 17:29:19 +01:00
Badlop
e65d554309
Update Dutch translation (thanks to Ranforingus)
2024-01-22 17:29:17 +01:00
Badlop
f5652cf946
Update Czech translation (thanks to Jan Aschenbrenner)
2024-01-22 17:29:16 +01:00
Badlop
399d0a5bf0
Update Bulgarian translation (thanks to Mr. EddX)
2024-01-22 17:29:14 +01:00
Badlop
589521bfd8
Update copyright year to 2024 ( #4139 )
2024-01-22 17:29:13 +01:00
Badlop
d802b6ab44
Fix version number in ejabberd_xmlrpc.erl
2024-01-22 17:29:12 +01:00
Badlop
45863b4651
Grant execution permission to install-sh
...
The file `src/install-sh` was added in c311ea1
.
Most files from that commit were removed in 4d8f770
and install-sh was moved.
Since recent commit 7cae092
, `./configure` checks for a race-free `mkdir -p`,
the `install-sh` script may be used, and it needs execution permission.
2024-01-22 17:29:10 +01:00
Badlop
f34c2b1714
Document new XEPs supported thanks to its implementation in the xmpp library
2024-01-22 17:29:09 +01:00
Badlop
78750bf753
Annotate version when the commands v1 are available
2024-01-22 17:29:07 +01:00
Badlop
65d585496c
Document sql_flags option introduced in 00c7600
2024-01-22 17:29:06 +01:00
badlop
194d3b9e17
Merge pull request #4143 from badlop/elixir-all-in
...
Improve support for Elixir, Mix and Rebar3
2024-01-22 12:44:21 +01:00
Badlop
b4b85e569e
Runtime: Clean Rebar tests and add Rebar2 to them
2024-01-17 14:44:09 +01:00
Badlop
daabfeb0e2
Makefile: Add install-rel and uninstall-rel
2024-01-17 14:44:09 +01:00
Badlop
c61b57f7ab
Makefile: Uninstall also the man file
2024-01-17 14:44:09 +01:00
Badlop
7cae0920b8
Makefile: Use AWK and MKDIR_P
2024-01-17 14:44:09 +01:00
Badlop
920e4ba6b1
Makefile: Fix TAGS target
2024-01-17 14:44:09 +01:00
Badlop
16e58a1911
Makefile: Update PHONY targets
2024-01-17 14:44:09 +01:00
Badlop
ec7570f93e
Makefile: Add sections, headers and Vim folding
2024-01-17 14:44:09 +01:00
Badlop
ae2993ecae
Rebar: Use excl_archive_filters only when Erlang < 26
...
That option is required when Erlang < 26 to disable the archive feature.
The feature and the option were removed in Erlang 26, and the release
building process fails if the option is used.
https://www.erlang.org/patches/otp-26.0
2024-01-17 14:43:24 +01:00
Badlop
ee778ca8f9
COMPILE.md: For Elixir, recommend at least 1.13.4 with Erlang/OTP 23.0
2024-01-17 10:24:34 +01:00
Badlop
a2ff5fbfdb
Add observer and runtime_tools in releases when --enable-tools
...
When --enable-tools, include observer and runtime_tools
in the OTP releases, as they are required by "ejabberdctl etop".
With this fix, "ejabberdctl etop" works correctly when:
* rebar3 + make rel
* mix + make dev
* mix + make rel
2024-01-17 10:24:34 +01:00
Badlop
eeb4be6e4b
Makefile: Rename "make rel" to "make prod"
...
Rebar2 could create a release, so it made sense to call it "make rel".
Nowadays, Rebar3 and Mix support creating different types of releases:
production, development, ...
In this sense, our "make rel" target is more properly named "make prod"
For backwards compatibility, "make rel" redirects to "make prod"
2024-01-17 10:24:34 +01:00
Badlop
aad3306bdf
Makefile: Support using --with-rebar=/path/to/mix
2024-01-17 10:24:34 +01:00
Badlop
35b727ac39
ejabberdctl: Detect problem running iex and show explanation
2024-01-17 10:24:34 +01:00
Badlop
abf07966be
ejabberdctl: Detect problem running etop and show some help
2024-01-17 10:24:34 +01:00
Badlop
a1c81955d3
ejabberdctl: Document to stop live shell with control+g, following cd421f9
2024-01-17 10:24:34 +01:00
Badlop
ad7538f394
Runtime: Rebar3+Elixir: Add new job to test Rebar3 compiling Elixir
2024-01-17 10:24:34 +01:00
Badlop
c0a909296e
Runtime: Mix: Enable ModPresenceDemo and Elixir dep
2024-01-17 10:24:34 +01:00
Badlop
7186cd09bf
Runtime: Test also "make install"
2024-01-17 10:24:34 +01:00
Badlop
db8583b1c6
Runtime: Mix: Add step to view logs
2024-01-17 10:24:34 +01:00
Badlop
07be61585c
Runtime: Mix: No need to specify --disable-elixir
2024-01-17 10:24:34 +01:00
Badlop
8bdd811a16
Runtime: Mix: Update Erlang and Elixir versions to test
2024-01-17 10:24:34 +01:00
Badlop
c69d88c45a
Runtime: Rebars: Add log tests similar to the Mix job
2024-01-17 10:24:34 +01:00
Badlop
b18fa2ebc2
Runtime: Rebars: Use the rebar binaries included in the repository
2024-01-17 10:24:34 +01:00
Badlop
f838319455
Runtime: Rebars: Get old rebar binaries when testing old erlang versions
2024-01-17 10:24:34 +01:00
Badlop
0d852474be
Use Mix or Rebar3 by default instead of Rebar2 to compile ejabberd
...
Use the program specified in option: --with-rebar=/path/to/bin
When none is specified, use the system mix
When Elixir not found, use the system rebar3
When Rebar3 not found, use the rebar3 binary included with ejabberd
2024-01-17 10:24:34 +01:00
Badlop
dd5a198222
Rebar3: Include Elixir files when making a release
2024-01-17 10:24:34 +01:00
Badlop
2d067f7498
Rebar3: Workaround to fix protocol consolidation
2024-01-17 10:24:34 +01:00
Badlop
a6c1e42c0a
Rebar3: Add support to compile Elixir dependencies
...
As described in
https://rebar3.org/docs/configuration/plugins/#elixir-dependencies
2024-01-17 10:24:34 +01:00
Badlop
ff783d15e8
Rebar3: Compile explicitly our Elixir files when --enable-elixir
2024-01-17 10:24:34 +01:00
Badlop
e1f14aca9b
Rebar3: Provide proper path to iex
...
We can't use iex variable, because rebar3/relx_overlay.erl already uses
all existing app names as variables.
2024-01-17 10:24:34 +01:00
Badlop
65ff45e202
Rebar/Rebar3: Remove elixir as a gitonly_deps, and add ejabberd_po
...
Adding ejabberd_po to gitonly_deps isn't strictly needed,
because we request a branch in the ejabberd-po git repository,
and rebar.config.script understands that this means ejabberd_po
should be downloaded from git, not hex.pm.
2024-01-17 10:24:34 +01:00
Badlop
f330267361
Rebar/Rebar3: Remove Elixir as a rebar dependency
...
Elixir is standalone since years ago. When Elixir support is required,
better simply install Elixir and use Mix as build tool.
Or install Elixir and use the experimental Rebar3 support to compile
Elixir files and dependencies.
2024-01-17 10:24:34 +01:00
Badlop
1de28fa566
Rebar/Rebar3: Update binaries to work with Erlang/OTP 23-26
...
They are compiled from their git repositories, main branches,
using erlang:23-slim docker image.
To compile ejabberd using rebar/rebar3 and Erlang 22.3 or older,
you can download the old binaries from ejabberd 21.12, available at:
https://github.com/processone/ejabberd/raw/21.12/rebar
https://github.com/processone/ejabberd/raw/21.12/rebar3
2024-01-17 10:24:34 +01:00
Badlop
b08001183e
ext_mod: Support Elixir modules with several defimpl, like Decimal
2024-01-17 10:24:34 +01:00
Badlop
0121adec03
ext_mod: Compile *.ex files also in source subfolders
2024-01-17 10:24:34 +01:00
Badlop
4daeb41f0e
Elixir: Fix compiling ejabberd as a dependency (4128)
2024-01-17 10:24:34 +01:00
Badlop
b2df22469b
Elixir: Fix ejabberdctl start/live when installed
...
The problem appeared when:
./configure --with-rebar=mix
make install
ejabberdctl live
=INFO REPORT==== 19-Dec-2023::21:28:36.006306 ===
application: ssl
exited: stopped
type: temporary
...
2024-01-17 10:24:34 +01:00
Badlop
1bf80e861d
Elixir: Fix: FORMATTER ERROR: bad return value (4087)
...
This is required since Elixir 1.15 when starting ejabberd with:
./configure --with-rebar=mix
make relive
make relive && ejabberdctl iexlive
make install && ejabberdctl iexlive
Reference:
https://elixir-lang.org/blog/2023/06/19/elixir-v1-15-0-released/
https://hexdocs.pm/logger/Logger.Formatter.html#module-formatting
2024-01-17 10:24:34 +01:00
Badlop
5bb2beb179
Elixir: Fix: Couldn't find file Elixir.Hex.API
...
Fix for error when starting ejabberd with Elixir 1.15:
[critical] Couldn't find file Elixir.Hex.API needed for Erlang application 'hex'.
2024-01-17 10:24:34 +01:00
Badlop
852a540cb0
Elixir: Fix Elixir 1.17-dev warnings about single-quoted charlists
2024-01-17 10:24:34 +01:00
Badlop
8b38aebbc7
Mix: Enable stun by default when vars.config not found
...
configure.ac by default enables stun and zlib, in fact ejabberd.yml
has ejabberd_stun enabled by default, so for coherence mix.exs should
enable stun too when vars.config is not found.
2024-01-17 10:24:34 +01:00
Badlop
fa3c25ab66
Mix: New option vars_config_path to set path to vars.config (4128)
...
Useful when setting ejabberd as dependency in another Elixir project,
and you want to enable or disable some ejabberd dependencies, see
https://www.process-one.net/blog/how-to-use-ejabberd-as-an-elixir-application-dependency/
2024-01-17 10:24:34 +01:00
Badlop
30df1dbe3f
Mix: Set the nodename when using the ejabberd script generated by Elixir
...
Also use start instead of console in Elixir script
2024-01-17 10:24:34 +01:00
Badlop
6d61e3590d
Mix: Print shell commands output to the console when "make dev"
2024-01-17 10:24:34 +01:00
Badlop
e71650e6ab
Mix: Fix ejabberdctl iexlive problem locating iex in an OTP release
...
The problem appeared when:
./configure --with-rebar=mix
make dev
_build/dev/rel/ejabberd/bin/ejabberdctl iexlive
2024-01-17 10:24:34 +01:00
Badlop
d81b3805e3
Mix: Elixir 1.14 requires mix, and Elixir 1.16 warns about duplicate
2024-01-17 10:24:34 +01:00
Badlop
416253496d
Mix: Add yecc compiler as suggested by Elixir 1.16 warning over p1_pgsql
2024-01-17 10:24:34 +01:00
Paweł Chmielowski
29ec5bff60
Add option to disable XEP-0474: SASL SCRAM Downgrade Protection support
...
Looks like clients using strophejs aren't able to authenticate when we
add data required by that spec to scram packets, so at least give a way
to disable this until clients will be fixed.
2024-01-16 12:03:35 +01:00
Holger Weiss
6c691a73bd
Support XEP-0198 pings
...
If stream management is enabled, let mod_ping trigger XEP-0198
<r/>equests rather than sending XEP-0199 pings. This avoids the
overhead of the ping IQ stanzas, which, if stream management is enabled,
are accompanied by XEP-0198 elements anyway.
Thanks to MoyaApp (<https://moya.app >) for sponsoring this work.
2024-01-15 21:38:54 +01:00
Badlop
74cb2e054f
Rephrase sentences to avoid using "allow to + verb"
2024-01-11 13:42:06 +01:00
Badlop
5b6329a12e
Fix a few spelling errors
2024-01-11 13:41:40 +01:00
Badlop
973ba58744
mod_avatar implements XEP-0398 0.2.0 since ddc29d4
2024-01-08 18:21:15 +01:00
Badlop
1f60bcb2d0
Fix syntax of enable-user and enable-group options help
2024-01-08 18:21:13 +01:00
Badlop
8e8354caec
Fix explanation of --enable-group option ( #4135 )
2024-01-08 18:21:10 +01:00
badlop
e26c547afc
Merge pull request #4118 from badlop/api-version-1
...
Commands API version 1
2024-01-05 13:10:06 +01:00
Badlop
fc13fdceca
Docs: Separate tags with commas in markdown docs
2024-01-04 22:01:21 +01:00
Badlop
d585b1fcb6
Docs: When definer is unknown, don't show Module section
2024-01-04 22:01:21 +01:00
Badlop
57bd0ef4f5
Docs: Optional support to get commands from runtime instead of BEAM files, based in bdeb4a7
2024-01-04 22:01:21 +01:00
Badlop
d140f99b68
ejabberd_xmlrpc: Fix support for restuple error response
2024-01-04 22:01:21 +01:00
Badlop
90766685ae
ejabberd_ctl: When API version>0, update syntax of list results
2024-01-04 21:53:14 +01:00
Badlop
d65638efe1
ejabberd_ctl: Pass API version to format_result
2024-01-04 21:53:14 +01:00
Badlop
b34572e7ce
ejabberd_ctl: Show proper command help when version is explicitly set
2024-01-04 21:53:14 +01:00
Badlop
c4c0cd1b77
ejabberd_ctl: Add support for list and tuple arguments
...
Tuple elements are separated with :
List elements are separated with ,
For example:
ejabberdctl add_rosteritem user1 localhost testuser7 localhost NickUser77l gr1,gr2,gr3 both
ejabberdctl create_room_with_opts room1 conference.localhost localhost public:false,persistent:true
ejabberdctl subscribe_room_many user1@localhost:User1,admin@localhost:Admin room1@conference.localhost urn:xmpp:mucsub:nodes:messages,urn:xmpp:mucsub:nodes:affiliations
Affected commands:
- add_rosteritem
- create_room_with_opts
- oauth_issue_token
- send_direct_invitation
- set_vcard2_multi
- srg_create
- subscribe_room
- subscribe_room_many
2024-01-04 21:53:14 +01:00
Badlop
9f42f17088
mod_http_api: Fix to allow the client override the API version
...
When configured like:
listen:
-
request_handlers:
/api: mod_http_api
/apizero/v0: mod_http_api
What API version will be used depending on the URL:
- api/commandname use the latest available version
- api/commandname/v0 use version 0
- apizero/v0/commandname use version 0
- apizero/v0/commandname/v2 use version 2
2024-01-04 21:53:14 +01:00
Badlop
d570870be5
mod_http_api: When using API version>0, avoid result names for integers and strings
2024-01-04 21:53:14 +01:00
Badlop
8671bf70ab
mod_http_api: When no specific API version is requested, use the latest
2024-01-04 21:53:14 +01:00
Badlop
e26729b483
Commands: Use list arguments in many commands that used separators
...
Commands that has some argument change:
- add_rosteritem
- oauth_issue_token
- send_direct_invitation
- srg_create
- subscribe_room
- subscribe_room_many
2024-01-04 21:53:14 +01:00
Badlop
d4113d9569
Commands: set_presence: switch priority argument from string to integer
2024-01-04 21:53:14 +01:00
Badlop
c5a5dd859e
Commands: Improve syntax of many commands documentation
2024-01-04 21:53:14 +01:00
Badlop
0961fa1830
Commands: When result is rescode, result_desc is automatically added
2024-01-04 21:53:14 +01:00
Badlop
f18b8d464d
Commands: Add a new muc_sub tag to all the relevant commands
2024-01-04 21:53:14 +01:00
Badlop
98d7519274
ejabberd_commands: Add the command version as a tag "vX"
2024-01-04 21:53:14 +01:00
Badlop
1326a7764a
ejabberd_commands: Update -type and remove obsolete @type
2024-01-04 21:53:14 +01:00
Alexey Shchepin
97568195d6
Update SQL schema files
2023-12-27 17:01:57 +03:00
Alexey Shchepin
8d2d3a6540
Support XEP-0424 in mod_mam_mnesia
2023-12-27 09:42:22 +03:00
Alexey Shchepin
4f6730621a
Add default value to #archive_msg.origin_id
2023-12-27 09:28:02 +03:00
Alexey Shchepin
a4bb695fc3
Support for XEP-0424 "Message Retraction"
2023-12-27 08:59:20 +03:00
Badlop
a57bdfffb7
Document recent change from 7d4330b57
2023-12-22 13:19:53 +01:00
Paweł Chmielowski
bdb513a660
Update xmpp
2023-12-19 10:43:37 +01:00
Paweł Chmielowski
b5ce53c907
Update xmpp to fix issue with scram with missing channel bindings
...
This makes scram downgrade protection hash calculation work properly when
using non -plus sasl mechanism or when stream is not encrypted
This should fix issue #4123 .
2023-12-18 12:10:28 +01:00
Paweł Chmielowski
b556fae08f
Update xmpp to bring support for XEP-0474: SASL SCRAM Downgrade Protection
2023-12-13 10:08:31 +01:00
Paweł Chmielowski
f87ab9a99f
Update xmpp
2023-12-12 14:37:01 +01:00
Paweł Chmielowski
a5c973f86b
Mention in docs for sql_prepared_statements that it works with MySQL
2023-12-12 11:29:12 +01:00
Holger Weiss
6b2b89da78
mod_push: Fix disabling of notifications
...
Remove the correct field from the c2s state when the client explicitly
disables push notifications. This fixes a regression introduced by
commit c148ab4430
.
2023-12-08 18:52:53 +01:00
Paweł Chmielowski
7d4330b57a
Increase default value of negotiation_timeout from 30s to 2m
...
This timeout also covers in-band registration, and if user don't fill
registration form in that time leads to disconnect and aborting
registration. This will allow for more time to finish that.
2023-12-04 13:24:32 +01:00
Badlop
225d14cbbe
Minor improvements in auth_password_format documentation
2023-12-01 00:07:21 +01:00
Paweł Chmielowski
d2a84c96a4
Update xmpp to fix incompatibility with < R21
2023-11-22 18:40:10 +01:00
Paweł Chmielowski
48f0d9c15e
Update xmpp to make us present both sasl1 and sasl2 with from in initial stanza
2023-11-22 18:34:18 +01:00
Paweł Chmielowski
9c7e91a1e9
Update xmpp and make opening bind2 session close other sessions with same tag
2023-11-21 13:55:40 +01:00
Paweł Chmielowski
91e74204b2
Teach mod_carboncopy how to interact with bind2 inline requests
2023-11-20 18:55:07 +01:00
Paweł Chmielowski
fdee4efe98
Fix presenting features and returning results of inline bind2 elements
2023-11-20 18:54:23 +01:00
Paweł Chmielowski
59bb6dae14
Make apps passed to check in dialyzer consult configure optons
2023-11-20 18:47:42 +01:00
Paweł Chmielowski
3300f8bafb
Update fast_tls in mix
2023-11-20 15:39:07 +01:00
Paweł Chmielowski
c61e56d8a6
Fix for one more dialyzer warning
2023-11-16 20:49:28 +01:00
Paweł Chmielowski
ad15659fb2
Fix warnings
2023-11-16 18:45:33 +01:00
Paweł Chmielowski
efffc3142a
Add implementation for SASL2 and Bind2
2023-11-16 16:52:55 +01:00
Alexey Shchepin
b0a9b58958
Use the first unique index as a primary key in ejabberd_sql_schema
2023-11-16 16:00:35 +03:00
Paweł Chmielowski
4ea46c5765
Set EJABBERD_OPTS back to "", and use previous flags as example
...
Also try to clarify distinction between EJABBERD_OPTS and ERLANG_OPTS
2023-11-15 14:16:53 +01:00
Paweł Chmielowski
7de0ba95d0
Update mysql to bring sha256_password auth plugin support
2023-11-09 15:43:47 +01:00
Paweł Chmielowski
3ad30c3ff5
Use correct commit hash for xmpp
2023-10-31 10:15:35 +01:00
Paweł Chmielowski
3ed2b41a5a
Update xmpp to bring tls-server-end-point channel binding and sasl2 codec
2023-10-31 09:41:25 +01:00
Paweł Chmielowski
3bf4cf5c3f
Fix reversed logic in node fixup function
2023-10-26 15:44:45 +02:00
Paweł Chmielowski
52e7c166fc
Normalize pubsub max_items
node options on read
...
Older version used infinity value, for what never version use max, let's
always return max in that case.
2023-10-26 14:31:40 +02:00
Paweł Chmielowski
08a78a1654
Change logic for eldap tls_verify=soft and false
...
Looks like originally both soft and hard worked the same way, so lets make
them do that, and we also need to add {verify, verify_none} for false case
otherwise it fails on R26.
2023-10-26 11:17:17 +02:00
Paweł Chmielowski
81ceefe2f1
Remove spurious line
2023-10-25 20:35:25 +02:00
Paweł Chmielowski
c2d04bc478
Don't set fail_if_no_peer_cert for eldap ssl client connections
...
Looks like R26 generates error when this option is used for client
connection, let's just use verify_peer/verify_none for
ldap_tls_verify hard/soft options.
This should fix issue #4110 .
2023-10-25 20:31:50 +02:00
Paweł Chmielowski
36fffa5b23
Revert dialyzer changes commited by mistake
2023-10-25 20:07:02 +02:00
Paweł Chmielowski
841d5c0299
Fix startup problem when having set EJABBERD_OPTS and logger options
...
Make sure that logger options that we extract from config file are put in
correct places when starting erl, directly after -ejabberd, custom
EJABBERD_OPTS should be places after them.
This fixes issue #4109
2023-10-25 20:05:27 +02:00
Paweł Chmielowski
0bdca8fd9e
Updated deps to bring support for tls-exporter channel binding
2023-10-25 16:46:03 +02:00
Paweł Chmielowski
f48275bc11
Only care about pep bookmarks options when creating node from scratch
2023-10-19 19:26:25 +02:00
Paweł Chmielowski
aa369de280
Fix xmpp dep in mix
2023-10-18 16:17:11 +02:00
Badlop
543404bcb8
Fixing minor typos in CHANGELOG
2023-10-17 15:57:50 +02:00
Badlop
b7166d7da0
Set version to 23.10
2023-10-17 15:31:32 +02:00
Badlop
cf54608c71
Update changelog
2023-10-17 15:29:20 +02:00
Alexey Shchepin
ec20691188
Disable update_sql_schema by default
2023-10-16 19:31:32 +03:00
Alexey Shchepin
c1af36ac20
Automatically create and update SQL schema
2023-10-16 18:21:08 +03:00
Alexey Shchepin
f6e8eb52f0
Fix ejabberd_sql:sql_query* types
2023-10-16 18:21:08 +03:00
Paweł Chmielowski
ad7db90c80
Use tagged deps
2023-10-16 15:14:31 +02:00
Holger Weiss
cbfb8eb805
Example configuration: Specify s2s shaper
...
Specify a shaper for incoming s2s connections (got lost in commit
91a74e3e27
).
Thanks to Paul Menzel for noting that it was missing.
2023-10-16 14:44:01 +02:00
Holger Weiss
df60818883
Example configuration: Clarify direct TLS listener
...
The ejabberd_c2s listener for port 5223 is meant to support direct TLS
access rather than STARTTLS. Therefore, remove the 'starttls_required'
option, which had no effect.
2023-10-16 14:32:38 +02:00
Badlop
d5de93b8fa
Update other translations
2023-10-16 11:28:51 +02:00
Badlop
ab6da9530d
Update Ukrainian translation (thanks to Олександр Кревський)
2023-10-16 11:28:29 +02:00
Badlop
ca82376657
Update man page
2023-10-16 11:18:59 +02:00
Badlop
87f18aa8d7
Result of running: make doap options
2023-10-16 11:09:13 +02:00
Badlop
6340d61397
Dcoument ejabberd version number in the new options
2023-10-16 10:58:59 +02:00
Badlop
80d1e36542
mod_private: Document that it supports XEP-0402 now
2023-10-16 10:56:15 +02:00
Paweł Chmielowski
f75909db4c
Allow pubsub node owner to overwrite items published by other persons
...
Owner is already permitted to delete those items, so it could do that by
deleting old item, and publishing it again, so i don't see reason to not
allow that overwrite.
2023-10-12 13:16:32 +02:00
Paweł Chmielowski
12d47455ba
Add auth_external_user_exists_check
option
...
This makes `user_check` hook work better with authentication methods
that don't have a way to determine if user exists (like is the case for
jwt and cert based authentication), and as result will improve mod_offline
and mod_mam handling of offline messages to those users. This reuses
information stored by `mod_last` for this purpose.
Should fix issue #3377 .
2023-10-11 14:17:18 +02:00
Badlop
9acf591242
Run 'make translations'
2023-10-11 01:17:27 +02:00
Badlop
bab8673055
Update Portuguese (Brazil) translation (thanks to Wellington Uemura)
2023-10-11 01:17:24 +02:00
Badlop
3851a77134
Update German translation (thanks to nautilusx)
2023-10-11 01:17:21 +02:00
Badlop
8e324e67a4
New Bulgarian translation (thanks to Mr. EddX)
2023-10-11 01:13:49 +02:00
Badlop
10245b40ee
Add support to register nick in a room ( #3455 )
...
Registering a nick in the MUC service or in a room is mutually exclusive:
- A nick that is registered in the service cannot be registered in any
room, not even the original owner can register it.
- Similarly, a nick registered in any room cannot be registered in the
service.
2023-10-10 13:08:56 +02:00
Badlop
9534ca2da1
ext_mod: Support when git repository name is not identical to the module name
...
For example, ejabberd-contrib has an extra module, mod_prometheus,
that is hosted in a git repository named ejabberd-prometheus-exporter
2023-10-04 20:57:02 +02:00
Badlop
f9d11265d0
ext_mod: Don't crash when github page response is 403
2023-10-04 20:55:01 +02:00
Badlop
d85c125bef
ext_mod: Use the same URL that ejabberd-contrib spec files
2023-10-04 20:54:49 +02:00
Paweł Chmielowski
62d3d7a32d
Relay pubsub iq queries to muc members without using bare jid
...
We do something similar for vcard queries, this allows target server
to respond to those queries by target server, which is what we want to
do in both of those cases.
2023-10-04 17:20:20 +02:00
Holger Weiss
a3f4a05b0c
make-binaries: Don't use non-prefixed cross tools
...
Omit the directory that contains cross compilation tools without
"$target-" prefix from the PATH. Having it in the path might lead to
problems when native tools are needed during cross compilation. For
actual cross compilation, the prefixed tools should always be used
anyway.
2023-10-03 17:56:27 +02:00
Paweł Chmielowski
86465c418d
Try to fill xep-0402 bookmarks from private storage on first access
2023-10-02 14:39:30 +02:00
Paweł Chmielowski
a63d3bf0d6
Fix crash in mod_private bookmarks converter
...
This should fix issue reported in #4092
2023-10-02 08:32:24 +02:00
Holger Weiss
762e4951f2
make-binaries: Bump Erlang/OTP version to 26.1.1
2023-09-29 19:01:50 +02:00
Holger Weiss
d4fc54be18
make-binaries: Let curl fail on HTTP errors
2023-09-29 17:33:09 +02:00
Holger Weiss
f327f4cc67
make-binaries: Suppress curl's info messages
2023-09-29 17:32:17 +02:00
Paweł Chmielowski
9ba645503b
Fix dialyzer warning
2023-09-27 23:02:32 +02:00
badlop
5406693a1e
Merge pull request #4079 from sando38/fix/Dockerfile-odbc
...
Dockerfile: add missing dependency for mssql databases
2023-09-27 21:10:16 +02:00
Paweł Chmielowski
d55955f7d8
Clean also urn:xmpp:bookmarks:1 after mod_private tests
2023-09-27 19:38:14 +02:00
Paweł Chmielowski
765770aaa5
Add support for xep-0402 - PEP Native Bookmarks
2023-09-27 18:36:30 +02:00
Paweł Chmielowski
c3e0b746d7
Add pubsub_delete_item hook
2023-09-27 18:30:17 +02:00
Paweł Chmielowski
accb0bc35a
Report support of config-node-max in pep
2023-09-27 18:29:56 +02:00
Holger Weiss
b16530bb6a
make-binaries: Bump dependency versions
2023-09-27 00:28:46 +02:00
Holger Weiss
ad00553bf8
make-binaries: Bump Erlang/OTP version to 26.1
2023-09-27 00:17:30 +02:00
Holger Weiss
b70bef77cb
make-binaries: Bump crosstool-NG version to 1.26.0
2023-09-26 23:55:01 +02:00
Holger Weiss
ac47b7b8cb
ejabberd_web_admin: Make text translatable
...
This also fixes a type issue.
2023-09-26 23:21:45 +02:00
Badlop
abe0817553
Mention what software versions are used to build the container image
2023-09-26 18:51:57 +02:00
Badlop
ab431b378a
WebAdmin: Show a warning when visiting webadmin with non-privileged account (4089)
2023-09-26 18:51:56 +02:00
Badlop
a534196315
Fix unused variable, forgotten in the recent commit 739a231
2023-09-26 18:51:51 +02:00
Badlop
cd421f98d7
ejabberdctl: Document how to stop a debug shell: control+g
...
control+g is the correct way to enter shell break mode, as documented in
https://www.erlang.org/doc/apps/erts/tty
The ejabberdctl script included in installers use the included VT100,
and that may break when hitting control+c.
In that scenario let's explicitly recommend to not use control+c.
Thanks to Holger Weiß for the report.
2023-09-26 18:51:47 +02:00
badlop
b33d660f88
Merge pull request #4088 from badlop/get-roster-command
...
Improve get_roster command result: show groups as a list
2023-09-25 13:15:26 +02:00
Badlop
245c9ae446
ejabberd_ctl: Support policy=user in the help and return proper arguments
2023-09-21 13:47:07 +02:00
Badlop
8d39431d68
ejabberd_ctl: Improve printing lists in results
...
When formatting the results of a command:
- If the top of the result is a list, split elements with newline as usual
- If it's a list in one of the resulting lines, split elements with ;
2023-09-21 13:47:05 +02:00
Badlop
739a231259
Improve get_roster command to return groups in a list instead of newlines
2023-09-21 13:47:00 +02:00
Paweł Chmielowski
426fd14b11
Make sure that policy=user commands have host instead of server arg in docs
...
We renamed them in ejabberd_command, but forgot to update doc geenerator.
2023-09-20 14:06:23 +02:00
dependabot[bot]
4735372682
Bump docker/build-push-action from 4 to 5
...
Bumps [docker/build-push-action](https://github.com/docker/build-push-action ) from 4 to 5.
- [Release notes](https://github.com/docker/build-push-action/releases )
- [Commits](https://github.com/docker/build-push-action/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: docker/build-push-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:05:15 +02:00
dependabot[bot]
4b3fa13163
Bump docker/setup-buildx-action from 2 to 3
...
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action ) from 2 to 3.
- [Release notes](https://github.com/docker/setup-buildx-action/releases )
- [Commits](https://github.com/docker/setup-buildx-action/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:05:15 +02:00
dependabot[bot]
d40250c3d6
Bump docker/setup-qemu-action from 2 to 3
...
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action ) from 2 to 3.
- [Release notes](https://github.com/docker/setup-qemu-action/releases )
- [Commits](https://github.com/docker/setup-qemu-action/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:05:15 +02:00
dependabot[bot]
7d2cfd2aaa
Bump docker/metadata-action from 4 to 5
...
Bumps [docker/metadata-action](https://github.com/docker/metadata-action ) from 4 to 5.
- [Release notes](https://github.com/docker/metadata-action/releases )
- [Upgrade guide](https://github.com/docker/metadata-action/blob/master/UPGRADE.md )
- [Commits](https://github.com/docker/metadata-action/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: docker/metadata-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:05:14 +02:00
dependabot[bot]
11fdd417dd
Bump docker/login-action from 2 to 3
...
Bumps [docker/login-action](https://github.com/docker/login-action ) from 2 to 3.
- [Release notes](https://github.com/docker/login-action/releases )
- [Commits](https://github.com/docker/login-action/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: docker/login-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:05:14 +02:00
dependabot[bot]
1b7b23fab6
Bump actions/checkout from 3 to 4
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:05:14 +02:00
dependabot[bot]
10882af7c8
Bump ex_doc from 0.30.5 to 0.30.6
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.30.5 to 0.30.6.
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.30.5...v0.30.6 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-09-18 11:05:14 +02:00
Holger Weiss
6c573cc9fd
mod_push: Set 'last-message-sender' to bare JID
...
If the mod_push option 'include_sender' is set to 'true', use the bare
JID rather than the full JID for the 'last-message-sender' field.
2023-09-09 17:33:16 +02:00
Holger Weiss
2782430887
mod_push: Add 'notify_on' option
...
If the new 'notify_on' option is set to 'messages', notifications are
only triggered by actual chat messages with a body (or encrypted
payload). The default behavior remains to generate a notification on
any kind of stanzas.
Thanks to EISST International Ltd for sponsoring this work.
2023-09-08 19:49:17 +02:00
Badlop
7522c29f25
Update xmpp version to send roomconfig_changesubject in disco info ( #4085 )
2023-09-08 18:37:38 +02:00
Badlop
706424f0d2
Fix crash when loading room from DB older than ffa07c6
, 23.04
...
Before commit ffa07c6
, the subject_author was just the author nick,
since that commit, subject_author contains {author nick, JID}.
2023-09-04 11:32:28 +02:00
Badlop
57d404a99b
Remove mailing list link, it had no activity and was removed long ago
2023-09-04 11:32:07 +02:00
Badlop
19e2e169b1
Let "ejabberdctl etop" work in a release (if observer is available)
2023-08-28 18:27:30 +02:00
Badlop
2a6ea79260
When building OTP release with mix, keep ERLANG_NODE=ejabberd@localhost
...
This updates the mix.exs code from commit 8ca12d4
(ejabberd 21.07)
Consequently, no need in make-binaries to update ERLANG_NODE.
The ecs docker image 23.04 got a similar change in
f81905d5e3
2023-08-28 18:27:23 +02:00
Badlop
40333066d6
Update syntax of function calls as recommended by Elixir compiler
2023-08-28 18:26:55 +02:00
Badlop
6d596063de
Elixir 1.15 removed support for --app
...
Removing that argument does not affect iexlive at all
For reference:
e1eecb8ca6
2023-08-28 18:26:55 +02:00
Badlop
a7c3c9b77d
Pass ERLANG_OPTS when calling erl to parse the INET_DIST_INTERFACE ( #4066 )
...
This is required when running ejabberdctl in binary installers
and INET_DIST_INTERFACE was configured, because some boot files were removed
2023-08-28 18:26:48 +02:00
Badlop
a01de8d944
Fix small bug introduced in 5d549dc
...
When providing a client-id as explained in
https://www.process-one.net/blog/understanding-ejabberd-oauth-support-roadmap/
ejabberd crashed with an error
exception error: no function clause matching
ejabberd_oauth:get_client_identity(
as reported in
https://stackoverflow.com/questions/76922951/ejabberd-oauth-api-http-1-1-502-bad-gateway
2023-08-28 18:26:03 +02:00
Paweł Chmielowski
c0e7774937
Don't always store messages passed through muc_filter_message
...
Recently we added new places where we call muc_filter_message to add
occupandid info to messages, but this also made them be stored in archive
as mod_mam uses that hook for getting sent messages - in case of those
messages we shouldn't be doing this.
This should fix issue #4083
2023-08-25 14:20:51 +02:00
Paweł Chmielowski
00c76003cb
Add ability to force alternative upsert implementation in mysql
2023-08-18 11:46:37 +02:00
Badlop
b29f87a978
Result of running: make doap options
2023-08-16 13:14:02 +02:00
Holger Weiss
2dc843cddd
mod_privilege: Don't fail to edit roster ( #3942 )
2023-08-16 13:08:21 +02:00
dependabot[bot]
9f08b4aa15
Bump ex_doc from 0.30.1 to 0.30.5
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.30.1 to 0.30.5.
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.30.1...v0.30.5 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-08-16 12:27:23 +02:00
Badlop
a84fbd6a74
Improve syntax of many command descriptions for the Docs site
2023-08-16 12:27:23 +02:00
Badlop
f8af3a0005
create_room_with_opts: fix typo and move examples to args_example ( #4080 )
2023-08-16 12:27:23 +02:00
Badlop
83e51c815d
Pass also MUC room retract messages over the muc_filter_message ( #3397 )
2023-08-16 12:27:23 +02:00
Badlop
ff24700156
Fix support to retract a MUC room message
...
Now this works as expected
https://xmpp.org/extensions/xep-0425.html#example-4
2023-08-16 12:27:22 +02:00
Badlop
7683691f5a
mod_muc_occupantid: New mnesia table to store rooms salts ( #3397 )
2023-08-16 12:27:22 +02:00
Badlop
3479f88dab
Pass MUC room private messages over the muc_filter_message too ( #3397 )
2023-08-16 12:27:22 +02:00
Badlop
86fc2f157e
Always add the occupant id, even in non-anonymous rooms ( #3397 )
2023-08-16 12:27:22 +02:00
Badlop
ffa07c649b
Store the subject author JID, and run muc_filter_message when sending subject ( #3397 )
...
When changing the room subject, store the original author JID,
so later it can be provided in the hook and mod_room_occupantid
can use it to calculate and provide the occupant id
This is noticeable when a new occupant joins an existing room,
and receives the room subject.
2023-08-16 12:27:22 +02:00
Badlop
2bd61abd71
Convert allow_private_message MUC room option to allowpm ( #3736 )
2023-08-16 12:25:46 +02:00
Badlop
66df953da1
Fix usage of plugins option, which produced default_node_config ignore ( #4070 )
2023-08-16 12:25:42 +02:00
Badlop
550a586d2a
New listener option unix_socket, useful when setting unix socket files ( #4059 )
...
listen:
-
port: "unix://tmp/asd/socket"
unix_socket:
mode: '0775'
owner: 117
group: 135
2023-08-16 12:25:36 +02:00
Badlop
16473ab691
When sending message on behalf of user, trigger user_send_packet ( #3990 )
...
This way, MAM and CarbonCopy get triggered.
This is useful for transports like Slidge.
2023-08-16 12:25:29 +02:00
Paweł Chmielowski
c5afd0322e
Properly parse mysql version even if it doesn't have type tag
2023-08-14 17:12:16 +02:00
sando38
c4563c429c
Dockerfile: add missing dependency for mssql databases
2023-08-12 14:46:30 +02:00
Alexey Shchepin
eeacace02a
Update some modules to the new gen_mod API
2023-08-09 17:08:45 +03:00
Holger Weiss
caf3807bcc
ejabberd_systemd: Add a few debug messages
2023-08-09 01:58:48 +02:00
Holger Weiss
6c7e85d3d8
ejabberd_systemd: Avoid using gen_server timeout
...
Don't (ab)use the gen_server timeout mechanism for pinging the systemd
watchdog. Under certain conditions (e.g., the process receiving sys
messages), the gen_server timeout might not be triggered as expected.
Fixes #4054 , fixes #4058 ,
2023-08-09 01:54:12 +02:00
Holger Weiss
f0db7623d1
mod_push_keepalive: Don't let hook crash
...
Check whether mod_push_keepalive is loaded for a given host before
querying the module configuration for that host. This avoids a hook
crash in the case where the module is enabled for some but not all
hosts.
2023-08-09 00:11:43 +02:00
Holger Weiss
26ed6539ba
mod_push_keepalive: Delay 'wake_on_start'
...
Delay the 'wake_on_start' notifications until ejabberd is fully
initialized. This makes sure no s2s connections are initiated before
certificates are loaded.
Many thanks to Friedrich Altheide for reporting the issue.
2023-08-08 20:17:10 +02:00
Alexey Shchepin
a9347cd248
Fix unused variable warnings in mod_stats
2023-08-04 20:54:02 +03:00
Alexey Shchepin
60002fc145
Update some modules to the new gen_mod API
2023-08-04 18:53:50 +03:00
Paweł Chmielowski
20a8654be2
Reset scram fields when setting plain password in ejabberd_auth_sql
...
Setting scram password, then disabling scram and setting plain password
again, will make us think we are still using scramed password and crash
when trying to process it as such. This makes sure that when set plain
password we don't leave parts from old scram password.
2023-08-03 13:07:13 +02:00
Badlop
25411333da
Add support for XEP-0421 Occupant Id in anonymous MUC rooms ( #3397 )
2023-08-02 17:54:54 +02:00
Badlop
07d4282603
Update XMPP library which supports XEP-0421 (3397)
2023-08-02 17:54:07 +02:00
Alexey Shchepin
4bd77797fc
Add shorter forms for gen_mod hook/iq_handler API
2023-08-01 18:14:08 +03:00
Alexey Shchepin
03ffbe00c1
Update mod_disco to the new gen_mod API
2023-07-31 16:52:00 +03:00
Alexey Shchepin
5a9099f49c
Extend gen_mod API to simplify hooks and IQ handlers registration
2023-07-31 16:52:00 +03:00
Badlop
b501ee2b8d
Remove obsolete example files, and add link in Docs to the archived copies
2023-07-27 14:03:40 +02:00
Badlop
a7c3368635
Move example Perl extauth script from ejabberd git to Docs site
2023-07-27 14:03:37 +02:00
Paweł Chmielowski
84ee724aa3
Fix dialyzer warning
2023-07-25 18:49:45 +02:00
Paweł Chmielowski
da7fe59834
Commit changes to ejabberd_sql.hrl as well
2023-07-25 18:24:24 +02:00
Paweł Chmielowski
3710dc1e3b
Use prepared statement with mysql
2023-07-25 18:11:24 +02:00
Badlop
db03c7428c
Web Admin roster page: move the AddJID textbox to top ( #4067 )
2023-07-24 20:27:01 +02:00
Badlop
9c6fe98f76
Partially revert "Improve ejabberdctl script: Copy recent commit 6272c0e90
to the container"
...
This reverts commit e66ba2e424
following the revert in commit 8288774787
2023-07-24 20:26:37 +02:00
Holger Weiss
c03af0afb3
make-binaries: Remove outdated workaround
...
Remove a workaround for an issue that has been fixed in Erlang/OTP 25:
https://github.com/erlang/otp/pull/5558
2023-07-24 00:11:32 +02:00
Holger Weiss
d109d7f0c5
make-binaries: Revert to Linux-PAM 1.5.2
...
Linux-PAM's --disable-examples flag doesn't seem to have the expected
effect.
2023-07-23 16:34:21 +02:00
Holger Weiss
bf9b257eab
make-binaries: Don't build Linux-PAM examples
...
Building the examples shipped with Linux-PAM 1.5.3 fails with musl libc:
5374f677e4
2023-07-23 16:08:25 +02:00
Holger Weiss
11dc0c1774
make-binaries: Bump dependency versions
2023-07-23 15:52:32 +02:00
Holger Weiss
0a5eda0777
make-binaries: Fix check for current Expat version
2023-07-23 15:51:27 +02:00
Holger Weiss
a657a6d2f6
make-binaries: Apply another minor simplification
2023-07-23 15:35:09 +02:00
Holger Weiss
121acd1da7
make-binaries: Apply minor simplifications
2023-07-23 15:06:40 +02:00
Holger Weiss
ec86079747
make-binaries: Don't duplicate config entries
2023-07-23 14:56:01 +02:00
Holger Weiss
f1b0a9cb32
make-binaries: Don't hard-code musl version
...
The default is to link against the most-recent musl version available
within the crosstool-ng toolchain, which is currently 1.2.2. Unlike
with glibc, there's no point in sticking to some older version.
2023-07-23 14:54:04 +02:00
Holger Weiss
0b6cb77b3c
make-binaries: Omit unnecessary glibc setting
...
The CT_GLIBC_KERNEL_VERSION_NONE option is about the minimum kernel
version supported by the toolchain's glibc. The default is to stick to
the version of the kernel headers, which should be just fine.
2023-07-23 14:52:18 +02:00
Holger Weiss
8a740d5087
make-binaries: Set kernel version for all builds
...
Specify the same min. supported kernel version for builds against musl
libc and glibc.
2023-07-23 14:49:07 +02:00
Jérôme Sautret
8288774787
Add EJABBERD_OPTS in ejabberdctl.cfg & revert "Improve ejabberdctl script"
...
EJABBERD_OPTS is used to pass options to erl only when starting
ejabberd, to enable -heart for example.
This partially reverts commit 6272c0e901
.
2023-07-18 15:31:10 +02:00
Paweł Chmielowski
d349e3a88e
Revert "Add stun app to cond_apps in mix.exs"
...
Looks like this is required only when using older mix versions.
This reverts commit 2ef9fbc111
.
2023-07-18 11:14:57 +02:00
Paweł Chmielowski
2ef9fbc111
Add stun app to cond_apps in mix.exs
2023-07-17 18:40:39 +02:00
Badlop
78f81de252
Improve support to stop external modules written in Elixir
2023-07-13 13:41:18 +02:00
dependabot[bot]
8d9ee8e35b
Bump ex_doc from 0.29.4 to 0.30.1
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.29.4 to 0.30.1.
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.29.4...v0.30.1 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-07-13 13:41:14 +02:00
Badlop
e66ba2e424
Improve ejabberdctl script: Copy recent commit 6272c0e90
to the container
2023-07-13 13:41:06 +02:00
Paweł Chmielowski
fafb48e88f
Merge pull request #4025 from jpds/increase-default-backlog
...
ejabberd_listener.erl: Increase default listen queue backlog value
2023-07-11 12:19:33 +02:00
Jérôme Sautret
6272c0e901
Improve ejabberdctl script
...
Improved handling of ERLANG_OPTS and fixed hanging process when running some ejabberdctl commands as root, such as debug or foreground.
2023-07-10 16:18:06 +02:00
Paweł Chmielowski
54314e5bb9
Better error handling in mod_muc_rtbl
...
Should fix issue #4050
2023-07-04 18:18:49 +02:00
Badlop
ffbcf19156
Halt ejabberd if a command in CTL_ON_ fails during ejabberd startup
...
See processone/ejabberd-contrib#97
2023-06-20 17:54:10 +02:00
Badlop
dcc8149f58
New command to halt ejabberd abruptly with an error status code
...
Used for processone/ejabberd-contrib#97
2023-06-20 17:54:10 +02:00
Badlop
d2c54fd5fe
Fix calling ejabberdctl command with wrong number of arguments with Erlang 26
...
In Erlang up to 25.3, the lists:zip arguments were [A1, A2]
Since Erlang 26.0, the arguments are: [A1, A2, fail]
93748a8d84
2023-06-13 12:25:27 +02:00
Badlop
f40a7b1c77
OAuth: Handle badpass error message
2023-06-13 12:25:22 +02:00
Badlop
16f758e13f
Support to provide only the dependency name
...
This is used in ejabberd-contrib repository's ci.yml,
and useful for a custom development that doesn't require rebar2 support.
2023-06-12 20:48:47 +02:00
Badlop
c333cc0776
New option install_contrib_modules
...
This option is read during ejabberd start or config reload.
It installs the listed modules which aren't yet installed,
as long as allow_contrib_modules is not disabled.
Edit ejabberd.yml and configure the desired ejabberd-contrib modules,
add them in the install_contrib_modules option,
finally start ejabberd (or reload config).
2023-06-09 10:27:13 +02:00
Badlop
3263e81972
Move Xref and Dialyzer options from workflows to rebar.config
...
And also include some more applications in Dialyzer plt_extra_apps,
which apparently is required since Erlang 26.
2023-06-09 00:02:20 +02:00
Badlop
397a08afca
Move configure options from the Test to the Compile section
2023-06-09 00:02:18 +02:00
Badlop
19070e4b04
Add sections to rebar.config to organize its content
2023-06-09 00:02:17 +02:00
Badlop
0bbc255814
Dialyzer dirty workarounds because re:mp() is not an exported type
...
Since Erlang/OTP 26, Dialyzer by default reports unknown types.
ejabberd's type specs refer to the re:mp() type,
but that isn't exported in the OTP source code,
and cannot be used in any other modules.
This commit provides very dirty workarounds, and any cleaner
alternative is very welcomed.
2023-06-09 00:02:15 +02:00
Badlop
1b06f4ca4f
The warnings_as_errors compiler option is already disabled by default
2023-06-09 00:02:13 +02:00
Badlop
b3eeac637f
Update tests to Erlang/OTP 26 and recent Elixir
2023-06-09 00:02:10 +02:00
Badlop
480b42b36d
Run Dialyzer again with Erlang/OTP 26, and let's solve its problems
2023-06-09 00:02:06 +02:00
Badlop
436074c67a
When installing module already configured, keep config as example
...
When installing a module using ext_mod, if it has already configuration
in the modules section, copy its specific config file as an example
(copy file and rename it).
This may happen when using the new install_contrib_modules option.
2023-06-09 00:02:02 +02:00
Badlop
c9a2117570
Ignore .tool-versions in git, this file is used by asdf
2023-06-09 00:01:56 +02:00
sando38
6155b001b4
Dockerfile: Reorder stages and steps for consistency
...
Also avoid duplicated lines.
2023-06-09 00:01:54 +02:00
sando38
8f05af7810
Dockerfile: Use Alpine as base for METHOD=package
...
No need to use the "large" docker.io/erlang image as we do not need any erlang/otp for the binary installers.
2023-06-09 00:01:51 +02:00
sando38
33ac7916d3
Dockerfile: Cosmetic changes
...
Ommit the path to ejabberdctl as it is already located at the $PATH
Also, do not copy Dockerfile into the container as this may unnecessarily trigger re-compiling of ejabberd.
2023-06-09 00:01:49 +02:00
sando38
461c1ddf3d
Dockerfile: Rename packages to improve compatibility
...
Rename libcap packages to improve compatibility between Alpine versions. This may be beneficial if one specifies an OTP_VSN which was built using an older Alpine base version.
The alpine package libcap has been splitted into libcap2 and libcap-utils in Alpine 3.17. 'libcap' is now an alias for libcap2 and libcap-utils. We define 'so:libcap.so.2' for the runtime stage, as we only need the libraries, not the binaries.
2023-06-09 00:01:46 +02:00
sando38
2428f74fbd
Dockerfile: Provide specific OTP and elixir vsn for direct compilation
...
Ejabberd images can now be built with specific erlang/OTP and elixir vsn with the new build arguments OTP_VSN and ELIXIR_VSN.
2023-06-09 00:01:36 +02:00
Paweł Chmielowski
bb8e892323
Add alternate version of mysql upsert
...
This one works by issuing select and then insert or update or skip depending
on what select returns. We use this on mysql 5.7.26 and 8.0.20 where
previous implementation using 'replace' or 'on conflict update' can cause
excessive deadlocks.
2023-06-07 16:38:07 +02:00
Paweł Chmielowski
3eecf4ae8a
Remove existing role information for users that are kicked from room
...
This should fix issue reported in #4035
2023-05-24 12:15:20 +02:00
Paweł Chmielowski
4a53d4cb56
Expand rule "mucsub subscribers are members in members only rooms" to more places
2023-05-24 11:26:48 +02:00
Paweł Chmielowski
1818a29c29
Don't crash in mod_shared_roster_ldap:get_member_jid on empty output
...
This based on crash from issue #3614
2023-05-22 12:48:29 +02:00
Paweł Chmielowski
dd2efc360b
Fix return values from calculate_diff inside mod_privacy_sql
2023-05-02 15:59:40 +02:00
Paweł Chmielowski
8e64992f47
Use more efficient way to calculate changes in set_privacy_list
2023-05-02 11:43:29 +02:00
Jonathan Davies
040c72f1c8
ejabberd_listener.erl: Increase default listen queue backlog value to 128, which
...
is the default value on both Linux and FreeBSD.
2023-04-25 20:11:04 +01:00
Badlop
d95a1bac3e
Use container names to differentiate them; don't force logo height
2023-04-25 09:50:19 +02:00
Badlop
c6b295b5a0
Fix typo in the previous commit
2023-04-25 09:48:02 +02:00
Badlop
2a4a6bec18
Add trailing backslash to URLs shown in mod_muc_log disco#info
2023-04-24 13:43:09 +02:00
Badlop
0d3f8c7b9f
Make mod_register_web redirect to page that end with / ( #3177 )
...
Code copied from ejabberd_web_admin.erl, commit 5ec21438
2023-04-24 13:43:07 +02:00
Badlop
d299b97261
Raise Erlang/OTP requirement to 20.0
2023-04-24 13:43:00 +02:00
Paweł Chmielowski
5b8ebed81b
Optimize mod_privacy_sql:set_list
...
Previously we always did delete everything and set all entries back, now
we check if we need to delete anything and if not insert only missing data.
2023-04-20 10:55:30 +02:00
Badlop
bb28265261
Set version to 23.04
2023-04-18 11:39:33 +02:00
Paweł Chmielowski
46f33e5051
Update dependencies
2023-04-18 11:22:33 +02:00
Badlop
06669b12e8
Update changelog
2023-04-18 11:12:18 +02:00
Badlop
1ca126381b
Update man
2023-04-18 10:37:22 +02:00
dependabot[bot]
bf5de81b24
Bump ex_doc from 0.29.3 to 0.29.4
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.29.3 to 0.29.4.
- [Release notes](https://github.com/elixir-lang/ex_doc/releases )
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.29.3...v0.29.4 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-04-18 10:37:16 +02:00
Badlop
d717ffd1a0
Update version notes of options and commands
2023-04-18 10:37:14 +02:00
Badlop
c271d73dbd
CI: Update Erlang/OTP to 26.0-rc3
2023-04-18 10:37:11 +02:00
Badlop
e1a8980d6c
Container: no need to specify captcha_url, auto may be enough in most cases
2023-04-18 10:37:08 +02:00
Badlop
ec7ff88dda
Update Portuguese translation (thanks to Silvério Santos)
2023-04-18 10:37:06 +02:00
Badlop
5b695766ae
Mention what ejabberd version first supports rtbl
2023-04-18 10:37:04 +02:00
Paweł Chmielowski
f5b6909cca
Unregister hooks on stop in mod_muc_rbtl
2023-04-17 18:03:21 +02:00
Paweł Chmielowski
98d348893b
Make mod_muc_rtbl notify only local node rooms
2023-04-17 17:07:59 +02:00
Paweł Chmielowski
c942c31e38
Add mod_muc_rtbl
...
This implements Real-time blocklists for XMPP (xmppbl.org).
Closes #4017
2023-04-17 16:59:42 +02:00
Paweł Chmielowski
70cbdd1117
Allow to update state from muc_process_iq hook
2023-04-17 16:57:54 +02:00
Paweł Chmielowski
1114a35e0a
Recognize message retractions in mod_muc
2023-04-14 12:32:35 +02:00
Paweł Chmielowski
d12e5a44b8
Add by attribute to generated muc moderation messages
2023-04-14 12:31:34 +02:00
Badlop
34420444db
Container: Revert change in entrypoint that was added in d15cf994a
2023-04-11 15:29:28 +02:00
Badlop
38eb50bf5c
Container: Reorganize how to build container image
2023-04-11 15:29:26 +02:00
Badlop
6705679cf3
Container: Update instructions to build image following d15cf994a
( #3983 )
2023-04-11 15:29:24 +02:00
Badlop
10635bccc9
Container: Reword sentences about docker.io and ghcr.io
2023-04-11 15:29:23 +02:00
Badlop
dee0ec50b9
Remove ci-19.3, as Github Actions no longer supports ubuntu-18.04
2023-04-11 15:29:21 +02:00
sando38
401bdedae8
Dockerfile: Detect runtime dependencies automatically
...
Only libcap2 and tini can't be auto-detected. libcap2 has been renamed in Alpine version 3.17, hence the Dockerfile is not compatible with Alpine versions <3.17
2023-04-11 15:27:49 +02:00
Badlop
99e51a2123
Mention in mod_mam.erl its support for XEP-0425: Message Moderation
...
Then run "make doap" to regenerate ejabberd.doap
2023-03-30 17:02:54 +02:00
Badlop
d43ce53f9a
Update xmpp version in mix following commit 6da1bb5b2
2023-03-30 16:54:35 +02:00
Paweł Chmielowski
f6385fae50
Fix dialyzer warning
2023-03-30 14:53:51 +02:00
Paweł Chmielowski
6da1bb5b22
Add support for "xep-0424 Message Moderation"
...
This fixes issue #3730
2023-03-30 14:38:08 +02:00
Badlop
64e1cfcbba
Test only with oldest OTP supported, newest stable and bleeding edge
2023-03-28 11:41:57 +02:00
Badlop
fbfcebf417
Container: Remove Elixir Matchers to prevent useless warnings in github actions page
2023-03-28 11:41:56 +02:00
Saarko
d15cf994a2
Container: Add METHOD to build container using packages ( #3983 )
...
make-*: include musl build in make-binaries
Ctr actions: use github runners to provide bootstrap erlang
- adjust make-binaries script to use github runners' installed erlang
for bootstrapping
- this reduces the need to build an unnecessary toolchain for glibc
based binaries
2023-03-28 11:41:54 +02:00
Saarko
c71887db43
Container: Add tini as runtime init
2023-03-28 11:41:52 +02:00
Badlop
7c634f3615
Container: No need of openssl package at runtime
2023-03-28 11:41:51 +02:00
Badlop
874b961680
Container: Remove unused Mix stuff: ejabberd script and static COOKIE
...
Instead of including this file in the container with static content:
/opt/ejabberd-master/releases/COOKIE
the cookie file will be generated by erlang in
/opt/ejabberd/.erlang.cookie
or by ejabberdctl if ERLANG_COOKIE environment variable was provided.
2023-03-28 11:41:49 +02:00
Badlop
2c1ee698cc
Container: Copy captcha scripts to /opt/ejabberd-*/lib like the installers
...
Instead of a path like
/opt/ejabberd-master/lib/ejabberd-23.1.0/priv/bin
they are now in
/opt/ejabberd-master/lib
2023-03-28 11:41:47 +02:00
Badlop
b0f0dd3227
Container: Expose only HOME volume, it contains all the required subdirs
2023-03-28 11:41:46 +02:00
Badlop
de477f7b6c
Container: Update Alpine to 3.17 to get Erlang/OTP 25 and Elixir 1.14
2023-03-28 11:41:44 +02:00
Saarko
440ede313b
make-binaries: fix building with erlang/otp v25.x
...
Signed-off-by: sando38 <sandomir@tutanota.com>
2023-03-28 11:41:43 +02:00
Saarko
976c6c5e41
make-binaries: bump versions, e.g. erlang/otp to 25.3
2023-03-28 11:41:41 +02:00
Badlop
7e6d25314d
make-packages: Fix for installers workflow, which didn't find lynx...
2023-03-28 11:41:39 +02:00
Badlop
cc5c3f7b2c
ejabberdctl: Don't use .../releases/COOKIE, it's no longer included
...
And slightly clean the .erlang.cookie line
This partially reverts 9c23a7dc3f
2023-03-28 11:41:33 +02:00
Badlop
1d62dc4621
Set roster name from XEP-0172, or the stored one ( #1611 )
2023-03-28 11:41:27 +02:00
Badlop
e2496562f9
Preliminary support to store extra elements in subscription request ( #840 )
2023-03-28 11:41:24 +02:00
Badlop
c4a2f8d64f
captcha_url option now accepts 'auto' value, and it's the default
2023-03-22 16:23:41 +01:00
Badlop
6c620f6f43
Remove wrong get_room_history command fields specification
2023-03-22 16:23:37 +01:00
dependabot[bot]
af29adb558
Bump ex_doc from 0.29.2 to 0.29.3
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.29.2 to 0.29.3.
- [Release notes](https://github.com/elixir-lang/ex_doc/releases )
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/v0.29.3/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.29.2...v0.29.3 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-03-22 16:23:33 +01:00
Paweł Chmielowski
3c97775573
Pubsub xdata fields max_item/item_expira/children_max use 'max' not 'infinity'
...
Codec in xmpp crashes when we use infinity (see issue #4011 ), so lets
convert those values before passing them to xmpp:encode(0
2023-03-21 15:30:44 +01:00
Blake Miller
f953dc3f5e
Persist none
role for outcasts
...
`none` roles *should* be persisted for banned users. I totally forgot about this, my bad. I'm shocked nobody else noticed it.
2023-03-20 17:07:10 +01:00
dependabot[bot]
04b431f191
Bump ex_doc from 0.29.1 to 0.29.2
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.29.1 to 0.29.2.
- [Release notes](https://github.com/elixir-lang/ex_doc/releases )
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.29.1...v0.29.2 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-03-07 13:11:26 +01:00
Badlop
5cd6c524ea
Allow XML to be visible in web browser in Common Test page
2023-03-07 13:11:24 +01:00
Badlop
37676757e3
CI: Add OTP 26.0-rc1 to the test matrix
...
But disable dialyzer in 26, as it complains verbosely without reason
2023-03-07 13:11:22 +01:00
Badlop
1c82daacb2
CI: Upload Common Test logs as artifact in case of failure
2023-03-07 13:11:21 +01:00
Badlop
9f0a5c5ef0
CI: Produce less verbose logs for tests
...
This gets a line first introduced in 5b5548b8c
that was lost later
2023-03-07 13:11:19 +01:00
Badlop
9bb86132c6
CI: Use default verbosity to let log files contain XMPP stanzas
...
This partially reverts 2a7780507
2023-03-07 13:11:17 +01:00
Badlop
2137a4f663
Fix Shellcheck warnings in shell scripts
2023-02-21 18:17:26 +01:00
Badlop
c9143dd3d8
Fix TSQLlint warnings in MSSQL test script
2023-02-21 18:17:25 +01:00
Badlop
66d58504d0
Fix TSQLlint warning about typo in mssql.new.sql
2023-02-21 18:16:59 +01:00
Badlop
0def333550
Fix Remark-lint warnings
2023-02-21 18:14:02 +01:00
Badlop
dea452bdfd
Fix Prospector and Pylint warnings in test extauth.py
2023-02-21 18:14:02 +01:00
dependabot[bot]
d504ed8a9b
Container: Bump docker/build-push-action from 3 to 4
...
Bumps [docker/build-push-action](https://github.com/docker/build-push-action ) from 3 to 4.
- [Release notes](https://github.com/docker/build-push-action/releases )
- [Commits](https://github.com/docker/build-push-action/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: docker/build-push-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-02-21 18:13:15 +01:00
Paweł Chmielowski
9503beca6c
Make mod_muc_room:set_opts process persistent flag first
...
As processing some other options depends on this setting flag in room
state.
2023-02-20 13:42:52 +01:00
Paweł Chmielowski
dfe4884d16
Allow passing affiliations and subscribers to create_room_with_opts command
2023-02-20 13:03:46 +01:00
Paweł Chmielowski
f10f6d176f
Store state in db in mod_muc:create_room()
2023-02-20 12:56:41 +01:00
Paweł Chmielowski
4e7aa41e3f
Make subscribers members by default
2023-02-20 12:55:31 +01:00
Paweł Chmielowski
d91812730b
Stop ejabberd_system_monitor before stopping node
...
Sometimes monitor module is performing checks when node is stopping and
this causes crash in monitoring process.
2023-02-08 19:53:19 +01:00
Paweł Chmielowski
54cf37e917
Invalidate vcard_xupdate cache on all nodes when vcard is updated
2023-02-08 19:06:44 +01:00
Paweł Chmielowski
3de803be2f
Add get_room_history command in mod_muc_admin
2023-02-08 11:04:26 +01:00
Paweł Chmielowski
5ca59807d9
Fix problem with results of mam queries using rsm with max and before
...
Plus add test case for it.
2023-02-03 11:37:54 +01:00
Paweł Chmielowski
5c3b43cd63
Update spec
2023-02-01 17:32:22 +01:00
Paweł Chmielowski
1a6baf223c
Re-allow anonymous connection for connection without client certificates
...
This fixes issue #3985 . Initial issue was introduced in
5506b838c8
adding tls client cert
authentication.
2023-02-01 16:58:25 +01:00
Paweł Chmielowski
74c9aa8ac0
Merge pull request #3982 from nosnilmot/sql-update-tests
...
SQL schema migration fixes and testing
2023-02-01 12:03:48 +01:00
Badlop
fb16727180
Ammend previous commit with another fix
2023-01-27 15:40:34 +01:00
Badlop
9842b035e3
Fix compilation problem with Erlang/OTP older than 21 introduced recently
...
Those macros were first introduced in c88a2d0
2023-01-27 15:29:41 +01:00
Alexey Shchepin
f6b5a52104
Add s2s_out_bounce_packet hook
2023-01-27 03:54:31 +03:00
Alexey Shchepin
f650b1e83c
Log HTTP handler exceptions
2023-01-27 03:54:31 +03:00
Badlop
03cbc9b004
Revert previous commit, stick with Alpine 3.16 and Erlang/OTP 24 ( #3983 )
...
Alpine 3.17 includes Erlang/OTP 25, and it segfaults when
used in QEMU for arm64.
Revert "Update Alpine to 3.17 to get Elixir 1.14 required by recent libraries"
This reverts commit 43cae922f3
.
2023-01-26 14:53:14 +01:00
Badlop
43cae922f3
Update Alpine to 3.17 to get Elixir 1.14 required by recent libraries
2023-01-25 17:58:27 +01:00
Badlop
c5c7e7fc4d
ext_mod: Improve support for loading *.so files from ext_mod dependencies
...
Copying files from deps/*/priv/*.so to the ejabberd priv/
is not possible when running ejabberd as OTP release or in a container.
Instead, let's copy the deps/*/priv/*.so maintaining the file structure,
and then using code:add_pathz for those dirs.
This partially reverts 5c1b72853f
2023-01-25 17:58:12 +01:00
Stu Tomlinson
0c1cf43519
Fix a long standing bug in new schema migration
...
... and make the test that uncovered it explicitly fail (there was already a
TODO) instead of passing but with errors logged
2023-01-21 15:42:43 +00:00
Stu Tomlinson
cbbf85c555
Add support for running tests on MS SQL
2023-01-21 15:42:43 +00:00
Stu Tomlinson
56e974ab80
Add ability to run tests on upgraded DB
...
To test update_sql operation and functionality of resulting DB:
1. Load original schema to DB
2. Set {update_sql, true} in suite.erl
3. Run tests
2023-01-21 15:42:43 +00:00
Stu Tomlinson
9398052b65
New schema migration 'update_sql' improvements
...
- check that server_host column does not already exist before addding it
and making other changes to table (update_sql becomes idempotent,
yay!)
- check that indexes exist before dropping them (some are historical and
are not created in more recent deployments), elminating spurious
errors from logs
- update new_sql_schema config after migration, to allow near
zero-downtime migrations (and help with automated testing)
2023-01-21 14:54:36 +00:00
Stu Tomlinson
6a8899677d
Un-deprecate ejabberd_config:set_option/2
...
There does not appear to be an alternative way to set individual config
options, and this is already used by test/ejabberd_SUITE.erl
2023-01-21 14:54:36 +00:00
Paweł Chmielowski
3b34538038
Remove debug line from last commit
2023-01-20 17:12:50 +01:00
Paweł Chmielowski
6cf1e05993
Try to populate room history from mam when unhibernating
2023-01-20 16:27:08 +01:00
Paweł Chmielowski
baf1336761
Merge pull request #3980 from nosnilmot/sql-maintenance
...
SQL related fixes and updates
2023-01-20 14:18:55 +01:00
Stu Tomlinson
4f0e426a12
Change PostgreSQL SERIAL to BIGSERIAL columns
...
This is consistent with other schemas, internally consistent with
foreign keys, and allows for > 2B records in these tables.
2023-01-19 23:36:42 +00:00
Stu Tomlinson
d5bf051e79
Fix minor SQL schema inconsistencies
2023-01-19 23:36:42 +00:00
Stu Tomlinson
c7c982b67b
Add MS SQL support for new schema migration
2023-01-19 23:36:42 +00:00
Stu Tomlinson
f7f0d3b1fb
Enable MySQL support for new schema migration
2023-01-19 23:36:42 +00:00
Stu Tomlinson
d4ab4d16e8
Use python3 to run extauth.py for tests
2023-01-19 23:36:42 +00:00
Stu Tomlinson
aeed1679d8
Add 'new' schema for MS SQL
2023-01-19 23:36:42 +00:00
Stu Tomlinson
6fc67d83f4
Minor MS SQL improvements
...
Support 'sql_ssl' option for MS SQL - set Encryption=required and
Encrypt=yes in ODBC connection string to require SSL using default
FreeTDS driver and Microsoft ODBC Driver for SQL Server repectively.
Allow setting full ODBC connection string in 'sql_server' for MS SQL,
allowing custom connection configuration beyond what is possible with
just 'sql_odbc_driver' option.
2023-01-19 23:36:42 +00:00
Stu Tomlinson
06ffe995e1
Remove unnecessary indexes
...
For columns are already included in a compound index there is no
benefit to having a separate index with a subset of the same columns in
the same order, it just wastes space.
2023-01-19 23:36:42 +00:00
Stu Tomlinson
93bf4d5411
New SQL schema migrate fix
...
'server_host' column on 'route' table already exists in old schema and
does not need adding for new schema migration.
2023-01-19 23:36:42 +00:00
Stu Tomlinson
19f2f1fa86
Fix MS SQL error caused by ORDER BY in subquery
...
'The ORDER BY clause is invalid in views, inline functions, derived
tables, subqueries, and common table expressions, unless TOP, OFFSET
or FOR XML is also specified.'
Omit the ORDER BY clause from subquery if the SELECT is not constrained
by TOP.
2023-01-19 23:36:42 +00:00
Stu Tomlinson
5e94fdcfd5
MS SQL schema fixes
...
* Add missing 'mix' tables and indexes
* Fix text vs varchar issues
Various tests triggered this error:
The data types text and varchar are incompatible in the equal to operator.
Caused by incompatible 'text' columns in muc_online_room,
muc_online_users, pubsub_node_option, and pubsub_node tables.
* Fix definition of mqtt_pub table
This table incorrectly included 'server_host' column in old schema, and
had other inconsistencies.
2023-01-19 23:35:05 +00:00
Stu Tomlinson
ec6f5c17c8
Correct README for creating test docker MS SQL DB
2023-01-19 14:06:11 +00:00
Paweł Chmielowski
758c87f564
Revert notes placement when generating markdown api commands documentation
2023-01-19 13:24:51 +01:00
Paweł Chmielowski
b6dde41000
Improve output in gen_html_doc_for_commands command
2023-01-19 11:45:33 +01:00
Stu Tomlinson
648c83ea03
Fix ejabberdctl output formatting ( #3979 )
...
ECMA-48 SGR sequence ESC [21m is actually 'set double underline' but was
incorrectly implemented as 'set normal intensity' in Linux prior to
4.17.
The correct sequence for 'set normal intensity' is ESC [22m, which fixes
output formatting of 'ejabberdctl' and 'ejabberdctl help' on macos.
2023-01-19 11:18:59 +01:00
Paweł Chmielowski
cc4cacdb5e
Set version to 23.01
2023-01-17 11:35:52 +01:00
Paweł Chmielowski
c84cdb6bfb
Update mix dependences
2023-01-17 11:24:28 +01:00
Paweł Chmielowski
a7ea8ecc29
Use tagged versions of dependences
2023-01-17 11:24:28 +01:00
Badlop
24839ad4be
Fix typos in documentation and changelog
2023-01-16 18:34:09 +01:00
Badlop
e11b89efd2
Get back mod_sip documentation and version number in the man page
2023-01-16 16:30:50 +01:00
Paweł Chmielowski
4566c82a85
Update man file
2023-01-16 16:24:44 +01:00
Paweł Chmielowski
024f3be13a
Update mod_mqtt_bridge documentation
2023-01-16 15:33:37 +01:00
Badlop
af2dae2ff3
Update changelog
2023-01-16 15:20:16 +01:00
Badlop
d92372af70
Update man page
2023-01-16 15:10:31 +01:00
Badlop
a70381e7c1
Annotate options that change in ejabberd 23.01
2023-01-16 15:10:29 +01:00
Badlop
21c0aaf417
Container: Replace set-output command with environment file
...
Announced in:
https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
2023-01-16 15:10:28 +01:00
Badlop
ce10bed5d8
Container: Update Alpine to 3.16, the latest one cached in Github Actions
2023-01-16 15:10:27 +01:00
Badlop
eb12c1db1b
Update check_xep_versions.sh to support extended -protocol attribute ( #3915 )
2023-01-16 15:10:25 +01:00
Badlop
276c11b04a
Fix doc of log_modules_fully allowed value
2023-01-16 15:10:24 +01:00
Badlop
0255562d93
Fix doc of outgoing_s2s_families default value, it changed in 25ddd7b
2023-01-16 15:10:22 +01:00
Paweł Chmielowski
26a7107cd5
Fix dialyzer warning
2023-01-16 12:14:21 +01:00
Paweł Chmielowski
89918865b0
Implement reload in mqtt_bridge
2023-01-16 11:22:17 +01:00
Paweł Chmielowski
f2cbe7f3c2
Recognize ws5/wss5 urls in mqtt_bridge
2023-01-16 11:01:24 +01:00
Paweł Chmielowski
83418c3195
Fix warning in mqtt_bridge
2023-01-16 11:01:04 +01:00
Paweł Chmielowski
5592f8df1a
Make dialyzer happy
2023-01-13 20:34:49 +01:00
Paweł Chmielowski
4311a5646f
Add support for websockets to mqtt bridge
2023-01-13 20:09:10 +01:00
Badlop
c103182bc7
Update German translation (thanks to Johannes Keyser)
2023-01-10 13:52:06 +01:00
Badlop
243697e25a
Update copyright year to 2023 ( #3967 )
2023-01-10 13:52:04 +01:00
dependabot[bot]
dfc6e7833c
Bump ex_doc from 0.28.4 to 0.29.1
...
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc ) from 0.28.4 to 0.29.1.
- [Release notes](https://github.com/elixir-lang/ex_doc/releases )
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md )
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.28.4...v0.29.1 )
---
updated-dependencies:
- dependency-name: ex_doc
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2023-01-10 13:52:02 +01:00
Badlop
e0b4ea6652
Update jose to 1.11.5 when Erlang/OTP is 21 or higher
...
But use old jose 1.11.1 on Erlang/OTP older than 21
Erlang older than 21 does not support
try catch _Class:_Reason:_Stacktrace ->
that is used in jose_server.erl
2023-01-10 13:51:56 +01:00
Badlop
503ad8e905
Fix bash completion when using Relive or other install methods
2023-01-10 13:51:53 +01:00
Frédéric Fauberteau
d26a9d583f
Fix portability issue with some shells ( #3970 )
2023-01-09 16:26:36 +01:00
Jérôme Sautret
0b1800fc10
Add hooks for mqtt subscribe & unsubscribe events
2023-01-05 14:58:18 +01:00
Badlop
92d7be4338
Use alternative split/2 function that works with Erlang/OTP as old as 19.3
2023-01-03 20:32:52 +01:00
Badlop
ce89ff07e7
Fix "make hooks"
2023-01-03 19:13:43 +01:00
Badlop
5c1b72853f
External modules: compile C files and install them in ejabberd's priv
2023-01-03 18:48:44 +01:00
Badlop
5d38143c3f
Initialize captcha system after loading modules and external modules
...
Since recently, ejabberd_captcha instead of a script may use a module,
for example the external module mod_ecaptcha, which must be loaded first.
2023-01-03 18:48:42 +01:00
Badlop
353c68cfa6
Add support to define module instead of path to script
2023-01-03 18:48:40 +01:00
Badlop
9087e72f0e
Update image key, some scripts generate their own random key
2023-01-03 18:48:38 +01:00
Badlop
4ad4a3bf24
Support to get module status from Elixir modules
2022-12-22 14:00:38 +01:00
Badlop
17160e9379
Container: Update Actions versions as requested by GitHub Actions
2022-12-22 14:00:36 +01:00
Jonathan Davies
ed84fee2bf
ejabberd_options_doc.erl: Added outgoing_s2s_families deprecation
...
notice.
Signed-off-by: Jonathan Davies <jpds@protonmail.com>
2022-12-22 14:00:22 +01:00
Jonathan Davies
25ddd7b152
Changed default outgoing_s2s_families to IPv6 as servers are within datacenters
...
where IPv6 is more commonly enabled (contrary to clients), and if it's not
present - it'll just fall back to IPv4.
2022-12-22 14:00:22 +01:00
Paweł Chmielowski
5ad709a2e2
Fix typo in last commit
2022-12-21 11:13:49 +01:00
Paweł Chmielowski
32ace140df
Don't store mucsub presence events in offline storage
...
This is expanded version of pull request #3959
2022-12-21 11:12:08 +01:00
Paweł Chmielowski
bc063b8f97
Fix crash when api_permisions don't have who: section
...
Default value of that field was wrong, so lets correct this.
This fixes issue #3957
2022-12-15 11:27:20 +01:00
Badlop
03681cd68d
Expose the pubsub#type field in disco#info query to the node ( #3914 )
2022-12-13 23:57:34 +01:00
Badlop
fe8b98a1f3
When using erlef, Erlang/OTP 21 is only available in ubuntu 20.04
...
See
https://github.com/erlef/setup-beam#compatibility-between-operating-system-and-erlangotp
2022-12-13 23:57:31 +01:00
Badlop
a193128543
Fix path where gem is installed and fpm can be found
2022-12-13 23:24:01 +01:00
Badlop
6a10048339
Document the new log_modules_fully option
2022-12-13 23:24:01 +01:00
Badlop
9087dd9210
Improve .devcontainer to use use devcontainer image and .vscode
2022-12-13 23:24:01 +01:00
Badlop
a08c038c9c
Add .vscode files to instruct VSCode how to run ejabberd
2022-12-13 23:24:01 +01:00
Badlop
e191bc253d
Add Erlang LS default configuration
2022-12-13 23:24:01 +01:00
Badlop
c8d866d01a
Add Elvis default configuration
2022-12-13 23:24:01 +01:00
Badlop
01d25c5c37
Let setup-relive.sh normally end with no error status
2022-12-13 23:24:01 +01:00
Paweł Chmielowski
25d6b3d1c8
Fix dialyzer warnings
2022-12-07 14:08:23 +01:00
Paweł Chmielowski
639183a783
Add support for certificate authentication in mqtt bridge
2022-12-07 13:38:05 +01:00
Paweł Chmielowski
80477f71b3
Add misc:uri_parse/2 to allow declaring default ports for protocols
2022-12-07 13:34:29 +01:00
Paweł Chmielowski
d49b50a055
Add log_modules_fully option to make some modules log everything independed from global loglevel
2022-12-01 13:24:46 +01:00
Paweł Chmielowski
54592202ef
Allow admin command to subscribe new users to members_only rooms
2022-12-01 11:52:39 +01:00
Paweł Chmielowski
be60263d47
Fix dialyzer warnings in mod_mqtt_bridge
2022-11-24 16:23:37 +01:00
Badlop
441eca75b2
hibernation_time is not an option worth storing in room state ( #3946 )
2022-11-23 18:40:28 +01:00
Badlop
266dd98521
OAuth: Accept jid as a HTTP URL query argument
2022-11-23 18:40:26 +01:00
Badlop
b0e74464b1
OAuth: Handle when client is not identified
2022-11-23 18:40:23 +01:00
Badlop
daaaf221cb
Don't set i18n option because Converse enforces it instead of browser lang ( #3951 )
2022-11-23 18:39:49 +01:00
Paweł Chmielowski
e2779e1155
Try to redirect access to files mod_conversejs to cdn when there is no local copies
2022-11-23 16:28:42 +01:00
Paweł Chmielowski
514bab47a2
Add hook for mqtt publish event
2022-11-23 15:16:43 +01:00
Paweł Chmielowski
fbea49dbab
Add mqtt bridge module
2022-11-23 14:50:18 +01:00
chengshq
5cf9b052dd
Jid format when multicastc
was cached ( #3950 )
...
The error log:
```2022-11-22 04:10:25.436648+00:00 [error] <0.515.0>@ejabberd_router:route/1:95 Failed to route packet:
#message{
id = <<>>,type = normal,lang = <<>>,
from =
#jid{
user = <<"a123">>,server = <<"conference.example.com">>,
resource = <<>>,luser = <<"a123">>,
lserver = <<"conference.example.com">>,lresource = <<>>},
to = <<"multicast.app.example.com">>,subject = [],body = [],
thread = undefined,
sub_els =
[#ps_event{
items =
#ps_items{
xmlns = <<>>,
node = <<"urn:xmpp:mucsub:nodes:subscribers">>,
items =
[#ps_item{
xmlns = <<>>,id = <<"5803948964051348597">>,
sub_els =
[#muc_subscribe{
nick = <<"bb">>,password = <<>>,
jid = undefined,events = []}],
node = <<>>,publisher = <<>>}],
max_items = undefined,subid = <<>>,retract = undefined},
purge = undefined,subscription = undefined,delete = undefined,
create = undefined,configuration = undefined},
#addresses{
list =
[#address{
type = bcc,
jid =
#jid{
user = <<"aaa">>,server = <<"app.example.com">>,
resource = <<>>,luser = <<"aaa">>,
lserver = <<"app.example.com">>,lresource = <<>>},
desc = <<>>,node = <<>>,delivered = undefined,
sub_els = []},
#address{
type = bcc,
jid =
#jid{
user = <<"bb">>,server = <<"app.example.com">>,
resource = <<>>,luser = <<"bb">>,
lserver = <<"app.example.com">>,lresource = <<>>},
desc = <<>>,node = <<>>,delivered = undefined,
sub_els = []}]}],
meta = #{}}
** exception error: {badrecord,jid}
in function ejabberd_router:do_route/1 (src/ejabberd_router.erl, line 394)
in call from ejabberd_router:route/1 (src/ejabberd_router.erl, line 92)
in call from maps:fold_1/3 (maps.erl, line 232)
in call from mod_multicast:handle_info/2 (src/mod_multicast.erl, line 206)
in call from gen_server:try_dispatch/4 (gen_server.erl, line 637)
in call from gen_server:handle_msg/6 (gen_server.erl, line 711)
in call from proc_lib:init_p_do_apply/3 (proc_lib.erl, line 249)```
Then command debug select the multicastc:
```
(ejabberd@localhost)2> mnesia:dirty_read(multicastc, <<"app.example.com">>).
[{multicastc,<<"app.example.com">>,
{{multicast_supported,<<"multicast.app.example.com">>,
{limits,{default,20},{default,20}}},
cached},
63836303692}]```
The type of `Service` was binary.
2022-11-22 12:11:31 +01:00
Holger Weiss
3b50cd36ba
Merge remote-tracking branch 'processone/pr/3945'
...
* processone/pr/3945:
make-binaries: reduce log output
make-binaries: Bump zlib version to 1.2.13
2022-11-16 16:20:10 +01:00
Stu Tomlinson
ed678f58d3
make-binaries: reduce log output
...
Reduce log output from make-binaries:
- quieter curl downloads
- quiet build of crosstool-ng
- disable crosstool-ng progress bar
2022-11-16 13:41:57 +00:00
Stu Tomlinson
aa8d800577
make-binaries: Bump zlib version to 1.2.13
...
Update zlib to 1.2.13 to address CVE-2022-37434
Also change zlib download to use archive URL so builds do not fail
when specified version is no longer the current version
2022-11-16 13:41:42 +00:00
Stu Tomlinson
a1cfae8c98
pgsql: do not set standard_conforming_strings to 'off' ( #3944 )
...
Since f9120f75b0
string literals use escape string syntax (E'...') on
pgsql, so it is no longer necessary to set standard_conforming_strings
to 'off'
Fixes #3932
2022-11-16 13:58:30 +01:00
Badlop
c6513fcfc6
Handle mnesia_system_event mnesia_up when other node joins this ( #3842 )
2022-11-14 18:45:20 +01:00
Badlop
d3d50b456e
Fix compilation warnings with Elixir 1.14
...
warning: missing parentheses for expression following "do:" keyword.
Parentheses are required to solve ambiguity inside keywords.
2022-11-14 18:45:20 +01:00
Badlop
196eca2dc4
Runtime: Add Elixir 1.14 to the test matrix
2022-11-14 18:45:17 +01:00
Paweł Chmielowski
6fcfe80a65
Pass ssl options to mysql driver
2022-11-14 11:19:51 +01:00
Paweł Chmielowski
992d998695
Silent warning in OTP24 about not specified cacerts in sql connections
2022-11-14 11:18:26 +01:00
Badlop
e58920b2c6
Container: Update link to the local example of CTL_ON_CREATE usage
2022-11-07 22:38:55 +01:00
Badlop
0804f46095
Container: Add Composer Examples section
2022-11-07 22:19:40 +01:00
Badlop
662d9a0ed0
Container: Raise sections levels to improve legibility in GitHub web TOC
2022-11-07 22:19:22 +01:00
Badlop
d957404adc
Add link in README to the ProcessOne Downloads page
2022-11-07 18:56:53 +01:00
Badlop
779c98e314
Add link to ejabberd page at xmpp.org, which displays protocols from DOAP
2022-11-07 18:56:51 +01:00
Badlop
8de270cdaf
Run "make doap"
2022-11-07 18:56:46 +01:00
Badlop
b71a481e63
Add details about XEP implementations to some protocol attributes
2022-11-07 18:56:46 +01:00
Badlop
5a5e5bbdc6
Support extended protocol attribute ( #3915 )
2022-11-07 18:56:46 +01:00
Badlop
3b3d3eaa04
Run "make doap" to update ejabberd's DOAP file
2022-11-07 11:13:31 +01:00
Daniel Brötzmann
811fea14d8
Fix DOAP file logo namespace
2022-11-07 11:12:10 +01:00
Badlop
9794b4f778
Commit the generated DOAP file
2022-11-04 16:17:40 +01:00
Badlop
b73a9234d9
Add some missing RFCs and remove problematic leading 0 in xep versions
2022-11-04 16:17:39 +01:00
Badlop
c9b3d32031
Add DOAP script to Makefile
2022-11-04 16:17:37 +01:00
Badlop
4542bcb57f
New script to generate DOAP file
2022-11-04 16:17:35 +01:00
Badlop
1072f593f1
Ignore /doc, generated by tools/check_xep_versions.sh
2022-11-04 16:17:33 +01:00
duritong
122af79207
move spool dir to make it fully configurable per ejabberdctl.cfg ( #3863 )
...
In the packaged rpm the spool dir is set to:
```
: "${SPOOL_DIR:="/opt/ejabberd/database/$ERLANG_NODE"}"
```
However, `$ERLANG_NODE` is effectively set later (now in line 67), which effectively makes spool dir always in `...../ejabberd@localhost`
2022-10-26 14:02:42 +02:00
Badlop
2ef71a6684
Annotate captcha_cmd option, run make options, update man
2022-10-25 12:11:24 +02:00
Paweł Chmielowski
bb22f574fe
Bump version
2022-10-25 10:35:00 +02:00
Badlop
2e623a7f20
Update German translation (thanks to nautilusx)"
2022-10-24 13:09:23 +02:00
Badlop
8ea7690fc5
Support @VERSION@ and @SEMVER@ in captcha_cmd option
2022-10-24 12:35:30 +02:00
Paweł Chmielowski
a80717ed0e
Update changelog
2022-10-18 18:59:28 +02:00
Holger Weiß
13d4787ea9
Bump default 's2s_timeout' value ( #3653 )
...
Wait for an hour before closing an idle s2s connection.
It's not uncommon for a connection to be idle for longer than ten
minutes but less than an hour. For example, XEP-0410 suggests a ping
interval of fifteen minutes. A longer idle timeout avoids the latency
and log entries associated with constantly re-establishing such
connections.
Co-authored-by: Paweł Chmielowski <pawel@process-one.net>
2022-10-18 16:08:16 +02:00
Frank
28b3134098
fix table creation on a running cluster ( #3913 )
2022-10-18 15:38:55 +02:00
Badlop
d2f79e268e
Update Portuguese (Brazil) translation (thanks to Wellington Terumi Uemura)
2022-10-12 17:09:49 +02:00
Badlop
b529f72d8f
Update Chinese (Simplified) translation (thanks to Eric)
2022-10-12 14:11:39 +02:00
Paweł Chmielowski
c4d834b879
Update deps
2022-10-12 12:44:36 +02:00
Badlop
67094ca065
Update Catalan and Spanish translations
2022-10-12 12:06:30 +02:00
Badlop
d29fdc4d2e
Remove unnecessary text string
2022-10-12 12:06:28 +02:00
Badlop
7be52065dd
Update Chinese (Simplified) translation (thanks to Eric)
2022-10-12 12:06:26 +02:00
Badlop
582a245cc7
Update Ukrainian translation (thanks to Artem)
2022-10-12 12:06:24 +02:00
Badlop
4e4c696730
Update Russian translation (thanks to AHOHNMYC)
2022-10-12 12:06:22 +02:00
Badlop
1942f1b370
Update Portuguese (Brazil) translation (thanks to Wellington Terumi Uemura)
2022-10-12 12:06:21 +02:00
Badlop
b14b84744a
Update French translation (thanks to Maxime Leroy)
2022-10-12 12:06:20 +02:00
Badlop
d34274549c
Update Spanish translation (thanks to Eduardo Malaspina)
2022-10-12 12:06:18 +02:00
Badlop
28fb992947
Update German translation (thanks to nautilusx)
2022-10-12 12:06:16 +02:00
Badlop
83150e0b76
Update Catalan translation (thanks to Maite Guix)
2022-10-12 12:06:15 +02:00
Badlop
1e24ad817c
Update man page
2022-10-12 12:06:13 +02:00
Badlop
77f9254f45
Handle case that module exports mod_doc, but nothing in it
2022-10-12 12:06:11 +02:00
Badlop
77dacf92d2
Annotate new options
2022-10-12 12:06:09 +02:00
Paweł Chmielowski
c99ff6059f
Fix cache invalidation in shared roster
...
Doing srg_get_info for not existing group, then srg_create, will make
srg_add_user fail because it will get info that group doesn't exist from
cache.
2022-09-28 18:28:24 +02:00
Holger Weiss
e4c20aa674
make-binaries: Bump Expat and libpng versions
2022-09-23 13:46:19 +02:00
Holger Weiss
403dc41b5f
make-binaries: Fix GitHub release version checks
...
Adapt to changes to GitHub release pages.
2022-09-23 13:45:09 +02:00
Paweł Chmielowski
4a22604701
Export mod_muc_admin:get_room_pid/2
2022-09-22 11:11:02 +02:00
Paweł Chmielowski
09b33e17a6
Update mysql
2022-09-22 11:09:12 +02:00
Badlop
796f567db1
The archive_msg export fun requires MUC Service for room archives
2022-09-16 16:35:00 +02:00
Badlop
2229e4c6db
Allow MUC service admins to bypass max_user_conferences limitation
2022-09-16 16:34:58 +02:00
Badlop
fac74f623e
Remove unused macro definitions detected by rebar3_hank
...
?OFFLINE_TABLE_LOCK_THRESHOLD is unused:
definition and usage added in 4103f30812
definition copied, and usage moved to mod_offline_mnesia, in 901d2e0aed
definition and usage removed in mod_offline_mnesia in d88e4d495f
this definition looks useless
?VERSION_MULTICAST is unused:
added in 0cf8d1fa6e
it was never used
?DISCO_QUERY_TIMEOUT is unused:
added in 0cf8d1fa6e
it was never used
?FEATURE/1 is unused:
added in 0cf8d1fa6e
usage removed in bc33a3873d
?DEFAULT_MAX_USERS_PRESENCE is unused:
added in f817762cc4
usage removed in ba2b650464
?CT_XML is unused:
added in 46568fb959
removed in 3dc55c6d47
2022-09-16 16:34:56 +02:00
Badlop
cde8c8ce7d
Remove unused header files which content is already in xmpp library
2022-09-16 16:34:53 +02:00
Holger Weiss
9e9904c79d
Merge remote-tracking branch 'processone/pr/3905'
...
* processone/pr/3905:
Adapt to change of mix_annotate type to boolean in roster_query
Adapt to renaming of 'participant-id' from mix_roster_channel record
Update xmpp module
2022-09-16 12:39:13 +02:00
Linus Jahn
14882342be
Adapt to change of mix_annotate type to boolean in roster_query
2022-09-16 12:29:51 +02:00
Linus Jahn
eeed1ca87f
Adapt to renaming of 'participant-id' from mix_roster_channel record
2022-09-16 12:29:50 +02:00
Linus Jahn
e22d496610
Update xmpp module
2022-09-16 12:29:29 +02:00
Badlop
5ee1dc9e8d
Container: Support ERL_DIST_PORT
2022-09-13 17:55:17 +02:00
Badlop
30f1e28468
Support ERL_DIST_PORT option to work without epmd
...
Please note:
- Erlang/OTP 23.1 or higher is required to use ERL_DIST_PORT
- "make relive" doesn't support ERL_DIST_PORT, neither rebar3 nor elixir
- "make install" doesn't work with Elixir since at least ejabberd 21.07
Reference:
https://www.erlang.org/blog/otp-23-highlights/
https://blog.erlware.org/epmdlessless/
2022-09-13 17:55:15 +02:00
Badlop
4664358176
Ignore .ejabberd-modules/ , may be used when building container
2022-09-13 17:55:14 +02:00
Badlop
a564707da4
Container: Get ejabberd-contrib sources to include them
2022-09-13 17:55:12 +02:00
Badlop
d0bc83147a
Container: Copy .ejabberd-modules directory if available
2022-09-13 17:55:11 +02:00
Badlop
a8121cd7e5
Don't persist 'none' role (thanks to Blake Miller)( #3330 )
2022-09-13 17:55:09 +02:00
Badlop
4d3875f4ff
Store role, and use it when joining a moderated room ( #3330 )
2022-09-13 17:55:03 +02:00
Holger Weiss
add55e1947
make-binaries: Bump Erlang/OTP version to 24.3.4.5
2022-09-13 14:25:13 +02:00
Holger Weiss
95ce3888f6
Merge remote-tracking branch 'processone/pr/3904'
...
* processone/pr/3904:
make-binaries: Bump dependency versions
2022-09-13 11:53:04 +02:00
Stu Tomlinson
5bb4731bc1
make-binaries: Bump dependency versions
2022-09-13 08:37:46 +01:00
Holger Weiss
b017207ac1
mod_admin_extra: Handle empty roster group names
...
Don't let 'add_rosteritem' create a roster group with an empty name.
Thanks to Licaon_Kter for reporting the issue.
2022-09-09 18:27:49 +02:00
Badlop
3312eaa51d
Add more examples of podman usage
2022-09-07 14:00:42 +02:00
Badlop
fe2fd776ef
Update CONTAINER example calls to recent changes
2022-09-07 13:59:31 +02:00
Badlop
c496baaf87
Container: Don't complain if the bin/ directory already exists
2022-09-07 13:59:20 +02:00
Badlop
14cced0bad
Container: No need to search for the ejabberdctl binary
2022-09-07 13:58:56 +02:00
Badlop
17a5835143
Simplify recent commit (thanks to Simon Lipp)( #3894 )
2022-09-07 13:57:12 +02:00
Roman Hargrave
f542a82309
feat: do not clone repo inside container build
2022-09-07 10:57:55 +02:00
Badlop
42e384beb7
Fix unix socket support for ejabberd_http (thanks to Simon Lipp)( #3894 )
2022-09-06 13:34:01 +02:00
Badlop
9a3ba9d76f
Update Github Action workflows: Ubuntu 18 is deprecated and 22 is added
...
CI:
- Update Ubuntu to 20.04, the lowest available starting in April 2023 [1]
- Don't test 19.3, as it isn't available in Ubuntu 20.04
- Use OTP 25 for Shellcheck, Coveralls, ECIL page
- Use erlef instead of ErlGang, supports better old erlangs in new ubuntus
- Remove support for rebar2 testing, as that's done in Runtime
CI-19.3:
- Add a temporary workflow for testing ejabberd with OTP 19.3
Container and Runtime:
- Update Ubuntu to latest (22.04)
[1] https://github.com/actions/runner-images/issues/6002
https://github.com/ErlGang/setup-erlang
https://github.com/erlef/setup-beam
2022-09-06 13:33:58 +02:00
Paweł Chmielowski
f624b14636
Add function for getting room diagnostics
2022-09-01 13:37:48 +02:00
Badlop
aaf391b284
Catch all errors from jose_jwt:verify and log debugging details ( #3890 )
2022-09-01 13:02:56 +02:00
Badlop
808def7d32
The #roster_item.ask allowed values are subscribe|undefined
2022-09-01 13:02:54 +02:00
Badlop
4ae06f039d
Add definition to detect OTP older than 25, used by ejabberd_auth_http
2022-09-01 13:02:52 +02:00
Badlop
7a1ca4b203
mod_host_meta: Complain at start if listener is not encrypted
2022-09-01 13:02:49 +02:00
Holger Weiss
63caa369be
mod_pubsub: Don't crash on command failures
...
Handle 'delete_old_items' and 'delete_expired_items' errors gracefully.
2022-08-31 18:10:22 +02:00
Paweł Chmielowski
fba651822d
Handle invalid values in X-Forwarded-For header more gracefuly
2022-08-29 11:26:31 +02:00
Paweł Chmielowski
cfc8746d29
Update roster_get hook in mod_shared_roster_ldap to use #roster_item{}
2022-08-24 11:14:32 +02:00
Paweł Chmielowski
a9e85674b8
Fix mucsub unsubscribe notification payload to have muc_unsubcribe in it
...
...instead of muc_subscribe
2022-08-24 10:30:02 +02:00
Holger Weiss
bce429dc44
make-packages: Fix permissions on RPM systems
...
RPM resets ownership/permissions of /opt/ejabberd and its subdirectories
on installation. Therefore, fix those in the "after-install" script.
2022-08-21 15:48:28 +02:00
Jonah Brüchert
9a8a843724
Fix filter_nodes
...
The previous implementation always returned an empty list while testing
it. However I don't really understand why that happened. The list
comprehension based one works, although it looks equivalent to me.
2022-08-17 16:37:20 +02:00
Jonah Brüchert
0faf34b26d
Parse sub elements of the mix join remote result
2022-08-17 16:37:20 +02:00
Jonah Brüchert
b1e6e408f8
mod_mix: Return user jid on join
2022-08-17 16:37:20 +02:00
Linus Jahn
4a52b73a17
mod_shared_roster: Fix wrong hook type #roster{} (now #roster_item{})
...
The hook type was changed from #roster{} to #roster_item{} by me in the
recent MIX changes. Unfortunately I've overseen this one (and unit tests
+ dialyzer passed).
2022-08-12 17:07:28 +02:00
Linus Jahn
b0526cd903
mod_mix, mod_mix_pam: Add new MIX namespaces to disco features
2022-08-12 10:53:53 +02:00
Jonah Brüchert
648245e974
mod_mix, mod_mix_pam: Add handling of IQs with newer MIX namespaces
...
Supported are mix:core:{0,1} and mix:pam:{0,2}
2022-08-12 10:53:53 +02:00
Linus Jahn
d6b72f1c5d
mod_roster: Change hook type from #roster{} to #roster_item{}
...
The problem with #roster{} is that every new record entry is also stored
in the mnesia roster table. Adding the mix_participant_id there makes
no sense because the normal roster items are no MIX channels. Using
\#roster_item{} for the hook and #roster{} for storing the normal items
seems to be a better idea.
2022-08-11 12:45:20 +02:00
Linus Jahn
d450d40178
mod_roster: Respect MIX <annotate/> setting
...
MIX extensions are not sent to clients if they haven't been enabled by
the client with <annotate/> in the roster get request.
2022-08-11 12:45:20 +02:00
Linus Jahn
3bf0892c74
mod_mix_pam: Do roster pushes on join/leave
...
Before the channels were added/removed from the database but the
clients were not notified of it.
2022-08-11 12:45:20 +02:00
Linus Jahn
7564a4e953
mod_mix_pam: Provide MIX channels as roster entries via hook
2022-08-11 12:45:20 +02:00
Holger Weiss
e858738736
ejabberd_listener: Let module take over socket
...
For some use cases, it may be necessary to allow a module to take over
socket ownership during initialization.
2022-08-10 18:28:35 +02:00
Badlop
c2cd592eff
Update documentation to reflect the GHCR image usage
2022-08-08 12:31:18 +02:00
Badlop
f080aa5fd9
Apply the minimal changes required to use the GHCR image
2022-08-08 12:31:16 +02:00
Badlop
682c258760
Copy ejabberd-docker-install.bat from docker-ejabberd git and rename it
2022-08-08 12:31:14 +02:00
Badlop
7d8fa3c880
ext_mod: Support managing remote nodes in the cluster
2022-08-05 16:15:05 +02:00
Badlop
72944d895b
ext_mod: Handle correctly when COMMIT.json not found
2022-08-05 16:15:03 +02:00
Badlop
00e6b0c97c
Show allow_query_users room option in disco info ( #3830 )
2022-08-04 12:28:15 +02:00
Badlop
a798a21386
CI: Remove syntax_tools from applications, as fast_xml fails Dialyzer
2022-08-04 12:05:46 +02:00
Mark Zealey
555ff2db4c
Add log_burst_limit_* options ( #3865 )
...
* Add log_burst_limit_* options
On our ejabberd deployment we were sometimes seeing more than 500
msgs/sec of legitimate traffic, however this was getting silently
dropped. Provide config options to enable this limit to be configured
from the config file.
* Pass new logging vars in via ejabberdctl
2022-08-01 12:07:54 +02:00
Paweł Chmielowski
9b647a7afe
Skip connection exit message when we triggered reconnection
2022-07-28 19:25:17 +02:00
Paweł Chmielowski
2b3644c8ac
Handle errors reported from begin/commit inside transaction
2022-07-28 19:24:28 +02:00
Paweł Chmielowski
3d329c7e8f
Make connection close errors bubble up from inside sql transaction
2022-07-28 13:17:35 +02:00
Badlop
1ea53bf940
Add syntax_tools to applications, required when using ejabberd_sql_pt ( #3869 )
2022-07-27 15:16:52 +02:00
Badlop
bc8050eb03
Don't bother with COMMIT.json user-friendly feature in automated user case
2022-07-27 15:16:51 +02:00
Badlop
a38ed7fb2c
Handle not found COMMIT.json, for example in GH Actions
2022-07-27 15:16:49 +02:00
Badlop
033656d70e
Add WebAdmin page for managing external modules
2022-07-26 15:42:13 +02:00
Badlop
853f35c706
Remove nginx and libgd3, so the proper versions can be installed
2022-07-26 15:42:13 +02:00
Paweł Chmielowski
7b944444ce
Catch mysql connection being close earlier
2022-07-19 14:35:35 +02:00
Paweł Chmielowski
73167ef1bd
Make first sql reconnect wait shorter time
2022-07-19 14:32:47 +02:00
Paweł Chmielowski
43f36205bd
React to sql driver process exit earlier
...
If there are queued request when connection closes we may try to process
those requests (by trying to send them to already terminated db process,
and waiting until we hit timeout) before we see that driver is not longer
alive. This change adds check for driver exit before we process next
queued sql request, and immediately switch to connection state if we have
one.
2022-07-15 13:51:30 +02:00
Alexey Shchepin
99d9e315a3
Don't set affiliation to 'none' if it's already 'none' in mod_muc_room:process_item_change/3
2022-07-01 09:39:37 +03:00
Linus Jahn
e10c67a74a
mod_mix_pam: Display joined channels on webadmin page
2022-06-28 22:15:04 +02:00
Paweł Chmielowski
991d52f019
Fix error reporting in 'make options' on OTP24+
2022-06-24 11:36:54 +02:00
Paweł Chmielowski
06147deccd
Don't register listeners that failed to start in config reload
...
This should alleviate some issues in #3850
2022-06-21 11:09:37 +02:00
Paweł Chmielowski
46c947bc76
Define batch delete function types in coresponding behaviours
2022-06-17 10:35:02 +02:00
Paweł Chmielowski
a2efde185a
Fix mam delete_old_messages_batch for sql backend
...
Too much copy/paste from spool equivalent...
2022-06-17 10:22:57 +02:00
Badlop
382c3836af
Runtime: Add Xref options to be as strict as CI
2022-06-12 13:08:29 +02:00
Badlop
6d39af7dd6
Runtime: No need for a specific mix erlang 25 job
2022-06-12 13:08:27 +02:00
Badlop
a30d8c718f
Update workflows to Erlang 25
2022-06-12 13:08:24 +02:00
Paweł Chmielowski
a89b1f332d
Use INSERT ... ON DUPLICATE KEY UPDATE for upsert on mysql
...
This can be used for all upsert expressions (where REPLACE INTO used
previously were only possible to use for subset of queries), and may
potentially help with deadlocks reported by mysql when we issues multiple
querier for same key in quick succession.
2022-06-10 16:25:50 +02:00
Badlop
a6101cc26d
Container: Set a less frequent healthcheck to reduce CPU usage ( #3826 )
2022-06-09 12:34:44 +02:00
Badlop
06a2b1c671
Container: Support to pass a fork repository as argument
2022-06-09 11:57:49 +02:00
Badlop
8d94ae4cb0
Container: Fix build instructions
2022-06-09 11:41:34 +02:00
Holger Weiss
fbf43f2a31
make-binaries: Include CAPTCHA script with release
2022-05-28 15:00:25 +02:00
Holger Weiss
b4c78336a6
make-binaries: Edit rebar.config more carefully
...
Don't break the (currently nonexistent) case where a dependency's
rebar.config file specifies LDFLAGS before and after "-lstdc++", such as
"-lfoo -lstdc++ -lbar".
2022-05-28 10:21:43 +02:00
Holger Weiss
c1ee86e85c
make-binaries: Fix linking of EIMP dependencies
...
Avoid linker errors such as the following when using GCC 10 or newer:
| multiple definition of `gdImageCreateFromJpegPtr'
See: https://gcc.gnu.org/gcc-10/porting_to.html
Fixes #3514 .
2022-05-25 20:37:37 +02:00
Badlop
5a2e58e066
Fix regression on stop_ping in clustering context (thanks to fdie)( #3817 )
2022-05-23 16:52:27 +02:00
Badlop
0e25f8d43e
Fix mod_conversejs crash when mod_register not enabled ( #3824 )
2022-05-23 16:49:35 +02:00
Badlop
75ffce0417
configure also when running "make update", which is similar to "make deps"
2022-05-23 16:49:19 +02:00
Badlop
34e1ddb66f
Update "make help" with recent changes
2022-05-23 13:58:50 +02:00
Badlop
26e6bb4a17
Use "make deps", which performs additional steps ( #3823 )
2022-05-23 13:58:41 +02:00
Badlop
7850ce0ec8
Ensure deps configuration is ran when getting deps ( #3823 )
2022-05-23 13:58:33 +02:00
Badlop
7d16907296
Configure eimp with mix to detect image convert properly ( #3823 )
2022-05-23 13:58:08 +02:00
Badlop
ddc457060b
Improve "make clean" and "distclean"
2022-05-23 13:57:17 +02:00
Badlop
93f994d50a
Generate start scripts in "make all", not in "make install" ( #3821 )
2022-05-23 13:57:06 +02:00
Paweł Chmielowski
75a771bfec
Don't leak DESTDIR in files copied by 'make install'
...
This fixes issue #3819
2022-05-19 12:20:58 +02:00
Holger Weiss
e6c1bf9c9a
make-binaries: Adjust Mnesia spool directory path
...
Adjust the default Mnesia directory for compatibility with older binary
packages.
Closes #3818 .
2022-05-18 17:08:05 +02:00
Holger Weiss
cac31f9325
make-packages: Include systemd unit with RPM
...
Don't forget to include the /etc/systemd/system/ejabberd.service unit
with the RPM package.
Closes #3816 .
2022-05-18 10:20:34 +02:00
Paweł Chmielowski
99064548e8
Fix parsing of scram password from prosody
...
Looks like parsed integer no longer are convered to floats on erlang side,
so let's make check for them less restrictive.
2022-05-17 13:21:30 +02:00
Holger Weiss
553a1ccadf
Merge remote-tracking branch 'processone/pr/3813'
...
* processone/pr/3813:
make-installers: Support non-root installation
make-installers: Override code on upgrade
make-installers: Apply cosmetic changes
2022-05-17 12:44:34 +02:00
Holger Weiss
621445e096
make-installers: Support non-root installation
...
If the installer is invoked without superuser privileges, warn the user,
ask for the installation prefix, and perform a local installation on
confirmation.
2022-05-17 12:40:12 +02:00
Licaon_Kter
432e97296c
Fix typos in changelog
2022-05-17 11:45:57 +02:00
Badlop
4f8e6fe844
Fix errors and warnings for "rebar3 edoc"
2022-05-17 10:42:02 +02:00
Badlop
01b791c0fa
Define license for hex.pm using SPDX identifier
...
Until now, when publishing package to hex.pm, it complained:
> The following licenses are not recognized by SPDX:
> * GPLv2
> Consider using licenses from https://spdx.org/licenses
2022-05-17 10:42:00 +02:00
Badlop
dde096515d
Update mix.lock with ex_doc
2022-05-17 10:41:59 +02:00
Badlop
78e97f3605
ex_doc is required to publish docs to hex.pm
...
Revert "Let's assume ex_doc is no longer needed"
This reverts commit 2f92dc40df
.
2022-05-17 10:41:57 +02:00
Badlop
6c9f97d7cc
Update README.md, the installers are now in GitHub Releases
2022-05-17 10:41:56 +02:00
Badlop
861347e911
CHANGELOG: Update to 22.05 version
2022-05-17 10:41:53 +02:00
Holger Weiss
c54fe5b29e
make-installers: Override code on upgrade
...
Use tar's --skip-old-files option for the data directory (/opt/ejabberd)
only. Files in the code directory (/opt/ejabberd-$version) should be
overridden on upgrade.
2022-05-16 00:45:01 +02:00
Holger Weiss
6d93d49c6c
make-installers: Apply cosmetic changes
2022-05-16 00:13:43 +02:00
Holger Weiss
8addf96f9e
make-binaries: Bump dependency versions
2022-05-12 01:02:33 +02:00
Paweł Chmielowski
a916d94000
Pass room state to muc_{un}subscribed hook
2022-05-09 17:32:34 +02:00
Paweł Chmielowski
ed7fc956d5
Allow muc_{un}subscribe hooks to modify sent packets
2022-05-09 16:34:27 +02:00
Badlop
024ad02169
Revert "Temporary workaround to provide a 22.05 tagged container"
...
This reverts commit 3449621ccc
.
2022-05-06 17:58:58 +02:00
Badlop
3449621ccc
Temporary workaround to provide a 22.05 tagged container
2022-05-06 17:30:26 +02:00
Badlop
e5782a519a
Use alternate method to get priv/ path when copying captcha scripts
2022-05-06 17:30:24 +02:00
Badlop
fbeaa2e03a
Remove dependabot because it gets fired in forks too
2022-05-06 17:30:21 +02:00
Jérôme Sautret
d0452e3bef
Update version to 22.05
2022-05-06 15:12:22 +02:00
Holger Weiss
ec36dd7ba1
make-binaries: Bump SQLite and ODBC versions
2022-05-06 14:03:11 +02:00
Paweł Chmielowski
84d8c156a0
Fix spec
2022-05-06 10:15:23 +02:00
Paweł Chmielowski
c7ab3274c5
Return userinfo from misc:uri_parse
2022-05-06 10:14:50 +02:00
Paweł Chmielowski
3d4f2d365f
Have consistent schema type in misc:uri_parse
2022-05-06 10:06:13 +02:00
Paweł Chmielowski
bc9e5c5363
Fix one more place where misc:uri_parse is used
2022-05-05 13:46:02 +02:00
Paweł Chmielowski
54a1fcc5e8
Improve misc:uri_parse
2022-05-05 13:07:03 +02:00
Badlop
c3d8c3d9c5
README: Improve badges, header, commercial links
2022-05-04 18:01:46 +02:00
Badlop
bdfa1b3403
Update man page
2022-05-04 18:01:46 +02:00
Badlop
aa190ca896
Run 'make options'
2022-05-04 18:01:46 +02:00
Badlop
49ecddc646
Dependabot: Detect updates in docker, actions and mix
2022-05-04 18:01:26 +02:00
Badlop
fad5406348
Container: Build containers also for linux/arm64
2022-05-04 18:00:58 +02:00
Badlop
30b3c6c908
Annotate options and commands recently added
2022-05-04 18:00:58 +02:00
Badlop
32dee33070
Run 'make translations' for all other languages
2022-05-04 16:26:32 +02:00
Badlop
59e1c5643f
Update Spanish and Catalan translations
2022-05-04 16:26:32 +02:00
Badlop
b253cc46d4
Update Chinese (simplified) (thanks to Erix and Yzqzss)
2022-05-04 16:26:27 +02:00
Badlop
09bdb055fb
Update Portuguese translation (thanks to Ssantos)
2022-05-04 16:26:27 +02:00
Badlop
449ac8f3e3
Update Portuguese (Brazil) (thanks to Wellington Terumi Uemura)
2022-05-04 16:26:22 +02:00
Badlop
28be716c5f
Update French translation (thanks to ButterflyOfFire)
2022-05-04 16:21:21 +02:00
Badlop
f250594738
Update German translation (thanks to Nautilusx)
2022-05-04 16:20:49 +02:00
Badlop
0fb7213e1a
New Arabic translation (thanks to Black)
2022-05-04 16:19:56 +02:00
Badlop
bb2cb19a5c
Move some content from README to new COMPILE and CONTAINER files
2022-05-04 02:39:30 +02:00
Badlop
6e4079586a
Installers: Add job to create draft release
2022-05-04 02:39:23 +02:00
Badlop
d0bca94638
Installers: update workflow name
2022-05-04 02:39:19 +02:00
Badlop
0302d1615b
Packages: Rename workflow file to Installers
2022-05-04 02:39:17 +02:00
Badlop
985fa24130
Apparently the --tags option is required to properly describe a brand new tag
2022-05-04 02:39:15 +02:00
Badlop
ba5b6133cd
Create uninstall.txt with instructions
2022-05-04 02:39:13 +02:00
Badlop
0964f9cbcd
Add help header to the installer help
2022-05-04 02:39:12 +02:00
Badlop
06e448b4d0
Once installed, show next steps
2022-05-04 02:39:10 +02:00
Badlop
b773bb4cd4
Add some blank lines to output
2022-05-04 02:39:07 +02:00
Holger Weiss
65437d08ef
make-binaries: Update to Crosstool-NG 1.25.0-RC2
...
Update Crosstool-NG to the current release candidate, and use much
shorter "defconfig" files for specifying the configuration.
2022-05-04 00:30:36 +02:00
Holger Weiss
87995a57de
Add GitHub Action to build binary packages
...
Publish DEB and RPM packages as well as binary installers for each
commit that modifies source code. This allows for testing development
code, and makes sure that problems with building binary packages are
noticed early on.
2022-05-04 00:30:36 +02:00
Holger Weiss
a7dc1de980
make-binaries: Try to avoid rebuilding deps
...
Don't rebuild external dependencies if all of them are up to date.
2022-05-04 00:30:36 +02:00
Holger Weiss
ce6f32906a
Import script for building command line installers
...
The tools/make-installers script creates command line installers for
Linux/x64 and Linux/arm64 systems using the archives built by the
tools/make-binaries script.
2022-05-04 00:30:36 +02:00
Holger Weiss
ef7470b503
Import script for building DEB and RPM packages
...
The tools/make-packages script creates DEB and RPM packages for
Linux/x64 and Linux/arm64 systems using the archives built by the
tools/make-binaries script.
2022-05-04 00:30:36 +02:00
Holger Weiss
853be230a8
Import script for building Linux binaries
...
The tools/make-binaries script creates self-contained OTP releases for
Linux/x64 and Linux/arm64 systems. All optional ejabberd features are
supported. Erlang/OTP, Elixir, and all dependencies are downloaded and
built from source (using crosstool-NG). The generated binaries depend
on glibc 2.17 or later, all other external libraries are linked
statically.
The script should work on any non-ancient Linux/x64 system and requires
just a few common development tools (to bootstrap crosstool-NG).
The release is installed by creating an "ejabberd" user, extracting the
archive into /opt, and moving the systemd unit (or init script) into
place.
2022-05-04 00:30:36 +02:00
Badlop
2739a52e0f
Update options configurable in default_room_options
2022-05-02 20:20:21 +02:00
Badlop
f1c422db8e
Runtime: Fix path of own workflow file
2022-05-02 20:20:21 +02:00
Badlop
011630f8b9
CI: The Binaries job will soon be unnecessary
2022-05-02 20:20:13 +02:00
Paweł Chmielowski
6f11210edd
Implement batch operations in mnesia backend
2022-05-02 15:05:55 +02:00
Paweł Chmielowski
ce18c93419
Simplify rules for choosing jiffy version
2022-05-02 13:56:16 +02:00
Paweł Chmielowski
f3f80f2f55
Update p1_pgsql in mix.lock
2022-05-02 13:41:44 +02:00
Paweł Chmielowski
cae86f62e6
Update esip in mix.lock
2022-05-02 13:37:40 +02:00
Badlop
ea4a365bf5
Container: New GitHub workflow to build and publish containers
2022-05-02 13:25:18 +02:00
Badlop
9c23a7dc3f
Container: When ERLANG_COOKIE is set, create cookie file; otherwise use -setcookie
2022-05-02 13:25:18 +02:00
Badlop
b0db87c683
Container: Experimental support CTL_ON_CREATE and CTL_ON_START environment variables
2022-05-02 13:25:18 +02:00
Badlop
200cea25c8
Container: Start BEAM with exec to maintain the PID and catch SIGTERM in Docker Stop
...
Until now, when stopping the ejabberd container, Erlang is not gracefully
closed, Mnesia is not properly closed... exit code is 137.
With this change, when the container is stopped, Erlang receives the
SIGTERM signal, shutsdown, Mnesia database is properly closed, ...
and exit code is 0.
2022-05-02 13:25:18 +02:00
Badlop
8d15e973e2
Container: Copy ejabberdctl.template, it requires some customizations
2022-05-02 13:25:01 +02:00
Badlop
493ee7f534
Container: New Dockerfile, more simple than the one in ejabberd/ecs
2022-05-02 13:23:57 +02:00
Badlop
d6de831381
Runtime: New workflow to test compilation, rel, starting and ejabberdctl
2022-05-02 13:20:52 +02:00
Badlop
5ece51f8da
CI: Update actions versions
2022-05-02 13:20:52 +02:00
Badlop
ca786e8102
CI: Update to the new "make rel" paths
2022-05-02 13:20:52 +02:00
Badlop
bde513d088
CI: For older erlang versions, get old rebars
2022-05-02 13:20:52 +02:00
Badlop
c5f9652019
CI: Update to test latest OTP 25.0-rc3
2022-05-02 13:20:52 +02:00
Badlop
5e2aca8138
Update rebar3 binary, works from Erlang/OTP 22 to 25
...
The old version was:
rebar 3.15.2
and it couldn't work with Erlang/OTP 25
This new version is
rebar 3.18.0
compiled from tag 3.18.0 from
https://github.com/erlang/rebar3
using erlang:22-slim docker image
To compile ejabberd using rebar3 and ancient Erlang 19.3-21.3,
you need a rebar3 binary compiled with an old Erlang.
If your operating system doesn't provide one, you can download
the old one included in ejabberd 21.12, available at:
https://github.com/processone/ejabberd/raw/21.12/rebar3
2022-05-02 13:20:52 +02:00
Badlop
12331768bc
Update rebar2 binary, works from Erlang/OTP 22 to 25
...
The old version was:
rebar 2.6.4 17 20170823_084242 git 2.6.4-27-g8076675-dirty
and it couldn't work with Erlang/OTP 25
This new version is
rebar 2.6.4 22 20220426_202500 git 2.6.4-39-gb6d3094
compiled from master branch from
https://github.com/rebar/rebar
using erlang:22-slim docker image
To compile ejabberd using rebar and ancient Erlang 19.3-21.3,
you need a rebar binary compiled with an old Erlang.
If your operating system doesn't provide one, you can download
the old one included in ejabberd 21.12, available at:
https://github.com/processone/ejabberd/raw/21.12/rebar
2022-05-02 13:20:52 +02:00
Badlop
7a1e0d4720
Fix 'make xref' when using Mix; notice it only checks Elixir files
2022-05-02 13:20:52 +02:00
Badlop
45c7fbb5ae
Switch "make rel" and "make dev" to paths: conf, database, logs
2022-05-02 13:17:53 +02:00
Badlop
a852c31c6c
Set default ejabberd version number when not using git
...
This is useful when the source code was downloaded from
https://github.com/processone/ejabberd/tags
2022-05-02 13:17:50 +02:00
Paweł Chmielowski
c8c4827626
Update hex deps
2022-05-02 13:06:40 +02:00
Paweł Chmielowski
4f33524842
Update deps
2022-05-02 12:50:08 +02:00
Holger Weiss
b5a76fb4de
mod_push: Keep push session ID on session resume
...
Don't forget the push session ID if the client resumes a stream
management session. This makes sure no push notifications are generated
for a connected client with a resumed stream management session.
Thanks to Thilo Molitor for spotting the issue.
2022-05-02 01:54:42 +02:00
Holger Weiss
c148ab4430
Adapt mod_push_keepalive to mod_push changes
...
Adjust mod_push_keepalive to work with the mod_push changes applied by
commit 11574f0a43
.
2022-05-01 17:51:07 +02:00
Holger Weiss
a30d5875ed
mod_push: Rename "timestamp" to "push session ID"
...
The fact that mod_push uses a timestamp as a push session ID is just an
implementation detail. Rename things accordingly to avoid confusion.
However, stick to "timestamp" in the storage modules, as it corresponds
to the database column names/types, there.
2022-05-01 15:49:22 +02:00
Holger Weiss
11574f0a43
mod_push: Fix notifications for pending sessions
...
Fix the problem that no push notifications were triggered in the case
where all of the following conditions applied:
- The XEP-0198 session has been resumed at least once.
- The XEP-0198 session is pending (i.e., the client is disconnected).
- The message wasn't stored in the user's MAM archive (e.g., because it
was of type "groupchat").
The problem was introduced in cd336369a5
.
Many thanks to Friedrich Altheide for reporting the issue and to Thilo
Molitor for his help with tracking it down.
2022-05-01 15:26:21 +02:00
Paweł Chmielowski
d65d04cc9a
Compile elixir_logger_backend only when lager is used
2022-04-29 12:35:16 +02:00
Paweł Chmielowski
881cc42168
Attach meta field with real jid to mucsub subscription events
2022-04-29 11:58:38 +02:00
Jérôme Sautret
69a5a22810
Delete ping timer if resource is gone after the ping has been sent
2022-04-28 14:54:41 +02:00
Paweł Chmielowski
b34291762a
Remove dialyzer warning
2022-04-28 10:18:29 +02:00
Paweł Chmielowski
6fd4315a0c
Guard agains erlang:system_info(logical_processors) not always returning number
2022-04-28 09:51:51 +02:00
Jérôme Sautret
f4959c8b28
Don't send ping if resource is gone
2022-04-26 18:56:38 +02:00
Badlop
f61f5beb5b
Copy include/ files for ejabberd, deps and otp, as "mix release" lacks that
2022-04-21 16:01:47 +02:00
Alexey Shchepin
74e86611ab
Stop empty MUC rooms 30 seconds after creation
2022-04-21 14:38:50 +03:00
Paweł Chmielowski
155261f78a
Fix dialyzer warning
2022-04-20 19:20:16 +02:00
Paweł Chmielowski
e59043db2c
Make oauth_revoke_token work with all backends
2022-04-20 19:07:52 +02:00
Badlop
87445bc74b
Clarify mod_offline's use_mam_for_storage option
2022-04-13 17:33:08 +02:00
Badlop
d8642fc7c2
Fix syntax of some commands' result_example
2022-04-13 17:33:04 +02:00
Badlop
19019bbe32
Add support for MUC room vCard in get_vcard commands
2022-04-12 13:35:55 +02:00
Badlop
10481ed895
mod_cron from ejabberd-contrib is another possible frontend to run commands
2022-04-11 17:04:53 +02:00
Paweł Chmielowski
feb2ad0664
Don't use floor - doesn't exist in R19
2022-04-08 18:27:58 +02:00
Paweł Chmielowski
5744d44e68
Fix compatibility with older mix versions
2022-04-08 18:26:07 +02:00
Paweł Chmielowski
0870f32c59
Add rate limited delete_old_messages
2022-04-08 17:48:53 +02:00
Paweł Chmielowski
b86fe14ef0
Add rate limited delete_old_mam_messages command
2022-04-08 17:23:42 +02:00
Licaon_Kter
6dbd1118a2
mod_conversejs example, use newer dark theme
...
ref: https://github.com/conversejs/converse.js/releases/tag/v9.1.0
2022-04-06 18:21:43 +02:00
Badlop
170ea134d6
Set Converse auth and register options based on ejabberd configuration
2022-04-06 11:11:21 +02:00
Badlop
b405a3b61e
Fix compilation with Erlang 19
2022-04-06 11:11:18 +02:00
badlop
e3ff868fcd
Merge pull request #3756 from pouriya/Add-Process-Hook-Tracing
...
Add process hook tracing
2022-04-06 11:10:57 +02:00
Holger Weiss
121fc716b0
domain_balancing: Allow for specifying 'type' only
...
Allow for specifying the 'type' of 'domain_balancing' without specifying
the 'component_number' (as per the example in the documentation). The
balancing 'type' is then applied to the dynamic number of component
instances.
2022-04-04 00:14:32 +02:00
Badlop
152956c194
Add more configuration examples
2022-04-01 12:04:08 +02:00
Badlop
6cdb517454
New conversejs_options to setup additional options for Converse
2022-04-01 12:04:07 +02:00
Badlop
94186a36d0
The *_url options now support 'auto'
2022-04-01 12:04:05 +02:00
Badlop
f461bcb597
Improved mod_conversejs to support @HOST@, auto and conversejs_resources
...
Changes:
- The options can use the @HOST@ keyword
- default_domain option is @HOST@ by default, not the first defined vhost
- New conversejs_resources option to serve converse.js files (no need for web server)
- conversejs_* now support 'auto', which uses local or remote Converse files
2022-04-01 12:04:03 +02:00
Badlop
8065ec831e
New mod_host_meta to serve host-meta files, see XEP-0156
2022-04-01 12:04:01 +02:00
Badlop
4c51f6e1fe
Check results when test with any OTP is not skipped
2022-04-01 12:03:51 +02:00
Badlop
f19219f5a0
Terminate ejabberd_sm before everything else to ensure sessions closing ( #3641 )
2022-03-25 12:53:25 +01:00
Badlop
0f73d3f4d1
Don't define restart and stop in ejabberd_ctl, use the corresponding commands
2022-03-25 12:51:27 +01:00
Badlop
91c9b0446c
Don't export password attribute when it's empty (it's invalid)( #3705 )
2022-03-25 12:51:24 +01:00
Simon Paitrault
68762146d7
Checking users is active in SM for JWT authenticated user ( #3795 )
...
Signed-off-by: Freyskeyd <simon.paitrault@gmail.com>
2022-03-24 17:03:50 +01:00
Alexey Shchepin
5506b838c8
Add TLS certificate authentication for MQTT connections
2022-03-14 15:41:01 +03:00
Holger Weiss
871e26a01e
mix.exs: Don't allow admins to override boot flags
...
Add the -boot and -boot_var options via ERLANG_OPTS rather than
ERL_OPTIONS. The difference is that administrators might override the
latter in the ejabberdctl.cfg file, which isn't desired as the boot
flags must be specified exactly that way in a Mix-generated release
(otherwise, ejabberd would fail to start up).
2022-03-10 16:29:32 +01:00
Badlop
ce8c2ca0fd
Add fine-grained Elixir version requirement
...
1.4 is accepted in general
1.10 is required to build OTP releases
1.11 is required to run 'make relive'
lower than 1.11.4 requires Erlang lower than 24 to build releases
2022-03-10 13:09:35 +01:00
Badlop
1e1b72572f
Add -boot and -boot_var in ejabberdctl instead of adding vm.args
2022-03-10 13:09:33 +01:00
Badlop
6afdf88e09
Update mix.lock, there are many unnecesary dependencies there
2022-03-10 13:09:30 +01:00
Badlop
2f92dc40df
Let's assume ex_doc is no longer needed
...
It was added in e6f72333
2022-03-10 13:09:28 +01:00
Badlop
a846260d6e
Update ejabberd to not use Distillery ( #3788 )
2022-03-10 13:09:24 +01:00
Stu Tomlinson
dca49f508f
Sync old-to-new schema script with reality ( #3790 )
...
Update the update_sql function to match current "new" sql schema
2022-03-08 13:56:27 +01:00
Paweł Chmielowski
3520869e36
Use correct timestamp when hibernation_time is not set at all
2022-03-07 17:38:04 +01:00
Alexey Shchepin
d5841785e1
Don't request the whole MUC room state in get_room_occupants_number command ( #3684 ) ( #1964 )
2022-03-07 08:42:42 +03:00
Badlop
f721374321
Determine compile definitions based on Erlang version
...
This gives a clear definition of what erlang versions require each
workaround, instead of depending on the actual workaround details.
The lib module was removed in OTP 21.0,
and the formatting options were moved to erl_error.
The uri_string module was introduced in OTP 21.0.
2022-02-24 21:39:20 +01:00
Badlop
7381b9db85
Fix bug introduced in 8d8a3177
( #3782 )
2022-02-24 21:39:14 +01:00
Badlop
305792f409
Test also with recent Erlang/OTP 25.0-rc1
2022-02-24 01:03:01 +01:00
Badlop
35b8a042b8
Update jiffy and p1_acme in mix.lock
2022-02-24 01:02:58 +01:00
Badlop
de8abc15a8
Use jiffy 1.1.0 when erlang < 20 because it doesn't have string:split/2
2022-02-24 01:02:55 +01:00
Badlop
265e0610a3
Update to jiffy 1.1.1 and p1_acme 1.0.18 to support Erlang/OTP 25.0-rc1
2022-02-24 01:02:53 +01:00
Badlop
231dfd776f
Support Erlang 25 in "make options": returns attribute with simpler syntax
...
This was introduced in Erlang/OTP 25.0-rc1
https://erlang.org/download/otp_src_25.0-rc1.readme
https://github.com/erlang/otp/pull/5509
OTP-17894 Application(s): syntax_tools
Related Id(s): PR-5509
The erl_syntax_lib:analyze_attribute/1 function would
return {Name, {Name, Value}} instead of {Name, Value}
(which is the documented return value).
2022-02-24 01:02:51 +01:00
Badlop
d4f288d3c6
Add link in mod_http_api documentation to the docs API section
2022-02-24 01:02:48 +01:00
Badlop
c407b73803
Fix WebSocket uppercase
2022-02-24 01:02:46 +01:00
Badlop
be0175fb70
Only care about CT results when CT are ran, and check fails
2022-02-24 01:02:44 +01:00
Badlop
22b469f55d
The lager dependency is used only with old Erlang versions
2022-02-24 01:02:41 +01:00
Holger Weiss
aad04bba91
mix.exs: Don't forget to include epam/luerl
...
If --enable-lua and/or --enable-pam was specified, include the
corresponding applications with Mix releases.
2022-02-21 00:34:02 +01:00
Holger Weiss
da516d64d4
mix.exs: Be more careful while editing the version
...
Make sure only leading zeroes are removed while turning the ejabberd
version into SemVer format for Mix. For example, remove the zero in
"21.04", but keep the zero in "21.12.102".
2022-02-21 00:02:31 +01:00
Holger Weiss
a6f0feb23b
ejabberdctl: Remove unused environment variable
...
The EJABBERD_DOC_PATH variable is no longer used (cf. commit
949e71efb6
).
2022-02-19 23:58:36 +01:00
Holger Weiss
7d7d08f980
mix.lock: Add missing dependencies
2022-02-19 23:53:16 +01:00
Paweł Chmielowski
2dc153751d
Put esip in mix included_applications only when it's enabled
2022-02-18 21:48:26 +01:00
Paweł Chmielowski
d4bf29e3ff
Improve compatibility with various db engine versions
2022-02-18 20:43:56 +01:00
Paweł Chmielowski
4247501dc6
Fix compilation on OTP < 21 and remove dialyzer warning
2022-02-18 17:21:22 +01:00
Paweł Chmielowski
b88fda9494
Fix sqlite schema
2022-02-18 16:24:34 +01:00
Paweł Chmielowski
f86055378d
Optimize room_unused_* commands
...
Previously to check if hibernated room was old enough we had to fetch info
about all rooms from database. Now we repurpose created_at field in sql
to store that info, that allow us to have more efficient query just for it.
2022-02-18 14:02:04 +01:00
Badlop
f20e9e9b66
Check producing and starting releases
2022-02-11 09:39:29 +01:00
Badlop
0ef2624b57
Provide proper path to the compiled libraries in relive's ejabberdctl
2022-02-11 09:39:28 +01:00
Badlop
b3211b1f71
Update copyright year to 2022
2022-02-11 09:39:25 +01:00
Badlop
f7c7d784c4
Detect debug option, and maybe disable debug_info
...
As explained in https://hexdocs.pm/mix/1.13.2/Mix.Tasks.Compile.Erlang.html
> The option :debug_info is always added to the end of it. You can disable that using:
> erlc_options: [debug_info: false]
2022-02-11 09:39:16 +01:00
Badlop
0b9263bc15
Add forgotten option NO_CUSTOMIZE_HOSTNAME_CHECK to mix.exs
2022-02-11 09:39:15 +01:00
Badlop
ba0d5e4dcf
Nowadays NEW_SQL_SCHEMA is only used to determine the default sql schema
2022-02-11 09:39:13 +01:00
Badlop
4d093ac03e
ejabberd_sql_pt got USE_NEW_SCHEMA in 78dfb83
and removed in e15595d
2022-02-11 09:39:11 +01:00
Badlop
e63e8a6d38
Fix typo introduced in 99fdba0
, present since 16.01
2022-02-11 09:39:09 +01:00
Badlop
37d2bdd90d
Some dependencies are optional, check them in mix.exs
2022-02-11 09:39:07 +01:00
Badlop
dda60fcf0d
Implement Get List of Registered/Online Users from XEP-0133
2022-02-11 09:39:05 +01:00
Badlop
9661d06334
Remove obsolete db_type defined environment
...
db_type as a compilation define was first introduced in 2006 in d0e2ac9
,
but was removed in 2015 in 25791cf
.
Nowadays: ./configure --enable-mssql will set {mssql, true} in vars.config;
That is read by ejabberd.app.src.script to set enabled_backends;
which is consulted by test/suite.erl to test only available backends.
2022-02-11 09:39:02 +01:00
Badlop
bdd1a129c0
Disable mssql in Actions: it's known mssql doesn't pass the tests
2022-02-03 20:10:01 +01:00
Badlop
965196a2e8
Ensure db_type default value is set when no mssql was defined. Fix typo
2022-02-03 19:17:16 +01:00
Badlop
a7912f5344
Fix configure when mssql option not set, and add it to --enable-all
2022-02-03 18:57:53 +01:00
Badlop
6279cac932
Reorganize and complete documentation of node start/debug commands
2022-02-03 18:21:55 +01:00
Badlop
25e0326f87
Improve explanation of s2s_access option. Add link to access_rules option
2022-02-03 18:21:53 +01:00
Badlop
c92478f7c2
Use the same wording in all the identical options db_type and ram_db_type
2022-02-03 18:21:51 +01:00
Badlop
3b30d5b0ed
Fix support for MSSQL testing
2022-02-03 18:21:49 +01:00
Badlop
adbccbe852
New "make relive" similar to "ejabberdctl live" without installing
...
Prepare with:
./autogen.sh && ./configure --with-rebar=./rebar3 && make
Or use this if you installed Elixir:
./autogen.sh && ./configure --with-rebar=mix && make
Start without installing (it recompiles when necessary):
make relive
It stores config, database and logs in _build/relive/
There's available the well-known script:
_build/relive/ejabberdctl
Please note this fails immediately:
r3:do(compile).
This crashes a few seconds later:
rebar3:run(["compile"]).
Workaround that works correctly:
ejabberd_admin:update().
2022-02-03 18:21:47 +01:00
Holger Weiss
67b5de05c7
mod_pubsub: Unsubscribe JID on whitelist removal
...
If a JID is removed from the affiliation lists of a node with access
model 'whitelist', remove it from the list of subscribers as well.
2022-02-02 22:35:28 +01:00
Paweł Chmielowski
11c725018b
Make dialyzer happy
2022-02-02 18:33:45 +01:00
Paweł Chmielowski
9542cca0db
One more place where we need to handle socket field not being available
2022-02-02 16:26:39 +01:00
Paweł Chmielowski
8824a912ef
Don't expect that socket will be available in c2s_terminated hook
...
For detached connection we free socket, so let's make code account for this
(and we really need it for printing debug informations).
This makes sure we call ejabberd_sm:close_session
2022-02-02 16:19:13 +01:00
Paweł Chmielowski
cae4fbb40b
Store all mucsub notifications not only message notifications
...
Previously we stored only message/subject change notifications, but if user
request also change notificaitons for affiliation/config/subscribers then
i don't see reason why we shouldn't store it as well.
2022-02-01 15:18:50 +01:00
Holger Weiss
52ac941034
mod_shared_roster: Adjust special group cache size
...
Let the size of the cache used for 'special' groups (such as @all@ or
@online@) depend on the number of virtual hosts, as the cache will
contain seperate entries per domain.
Thanks to Ingo Jrgensmann for reporting the issue.
2022-01-25 16:57:27 +01:00
Badlop
4579fd6ac7
Remove reference to the obsolete Vagrant environment
2022-01-25 13:46:27 +01:00
Badlop
7714046511
Run autoupdate to replace obsolete AC_HELP_STRING with AS_HELP_STRING
...
This change is required to work with autoconf 2.71 or higher,
and it works with autoconf 2.59 or higher.
2022-01-25 13:20:36 +01:00
Badlop
1b192987d2
Support MQTT subscriptions spread over the cluster ( #3750 )
2022-01-25 13:20:31 +01:00
Badlop
585afcbc77
Pass property name as expected in mqtt_codec (fixes login using MQTT 5)
2022-01-25 13:16:07 +01:00
badlop
78aa187067
Merge pull request #3757 from kianmeng/fix-typos
...
Fix typos
2022-01-25 13:13:10 +01:00
Kian-Meng Ang
adf0f87e99
Fix typos
2022-01-24 08:02:04 +08:00
Pouriya Jahanbakhsh
259876cb74
feat: event handling
...
run multiple event handlers
generate new events in timing event handlers
print human-readable times
output each callback time info is optional and by default is disabled
2022-01-22 18:17:11 +03:30
Pouriya Jahanbakhsh
20326e8908
feat: process hook tracing
2022-01-21 03:18:55 +03:30
Pouriya
03485f5e94
Merge branch 'processone:master' into master
2022-01-21 03:14:28 +03:30
Holger Weiss
0f2d36dc53
mod_pubsub: Allow for limiting item_expire value
...
If mod_pubsub's 'max_item_expire_node' option is specified, reject node
configurations with an 'item_expire' value that exceeds the specified
limit.
2022-01-17 19:08:36 +01:00
Holger Weiss
8e88fa3884
mod_shared_roster: Normalize JID on unset_presence
...
Don't forget to normalize the JID handed over from ejabberd_sm on
presence-unavailable. Without normalization, mod_shared_roster might
fail to look up the storage backend for the given host name, for
example.
Fixes #3752 .
2022-01-15 18:18:24 +01:00
Badlop
a9ac10e876
Document that 'unregister' command deletes data associated with the account
2022-01-13 19:34:37 +01:00
Badlop
1fb908b70f
Document option subscrube_room_many_max_users introduced in fc34661b6
2022-01-13 19:34:10 +01:00
Badlop
1ce3bd256b
Update section URLs in ldap documentation
2022-01-13 19:34:07 +01:00
Badlop
ce14c28faf
Fix version when this command was really updated
2022-01-11 17:28:36 +01:00
Badlop
03a11c63bd
Fix login when generating client id, keep connection record ( #3593 )
2022-01-11 17:19:12 +01:00
Paweł Chmielowski
9ba20d26cb
Add better descripion of subscribe_room_many command
2022-01-05 16:44:05 +01:00
Badlop
cc7ebb86b4
Fix Dialyzer, related to Luerl API update from 0.3 to 1.0
2022-01-04 23:06:30 +01:00
Badlop
79ddde3040
Workaround to support rebar2 git tag "1.0" and rebar3 hex version "1.0.0"
2022-01-04 21:56:31 +01:00
Badlop
61dc89a068
Update Luerl to 1.0.0, now available in Hex.pm ( rvirding/luerl#142 )
2022-01-04 21:32:23 +01:00
Badlop
7c9b47fb78
Fix "make rel" when using mix, broken after 94a733c66
2022-01-04 17:31:30 +01:00
Paweł Chmielowski
dc81966938
Fix 'make update' when used with rebar 3.18
2022-01-03 13:51:58 +01:00
Holger Weiss
59c9500944
mod_muc_room: Fix function name typo
2021-12-30 21:17:11 +01:00
Badlop
8ccad7fada
Publish CT logs and Cover on failure to an external GH Pages repo
2021-12-23 16:39:36 +01:00
Badlop
8a5d90797a
Check dialyzer results in its step when using rebar 2
2021-12-23 16:39:34 +01:00
Badlop
aa580b3f6e
Only care about new-schema results when new-schema tests were ran
2021-12-23 16:39:31 +01:00
Badlop
3841097428
Clean actions steps, remove redundant ones
2021-12-23 16:39:28 +01:00
Holger Weiss
5ff45e0f00
ejabberdctl: Let shellcheck ignore unused ERTS_VSN
...
The ERTS_VSN variable is only used for releases built with Rebar 3.
2021-12-23 14:46:53 +01:00
Holger Weiss
94a733c666
Fix ERTS path in ejabberdctl with rebar3 release
...
Rebar 2 expands {{erts-vsn}} to "erts-$vsn", Rebar 3 expands it to just
"$vsn". Make sure `make rel` doesn't end up with a "$vsn" directory
next to "erts-$vsn" (which happened when using Rebar 3), and make sure
that ejabberdctl expects both "erl" and "epmd" to be installed below
"erts-$vsn" (which it didn't when using Rebar 3).
2021-12-23 14:24:27 +01:00
Badlop
e2b7717dd9
Workaround to support ShellCheck older than 0.8.0
2021-12-23 13:57:16 +01:00
Badlop
694d80b7fa
Test shell scripts in CI ( #3738 )
2021-12-23 13:57:14 +01:00
Badlop
84d23e60d1
In POSIX sh, RANDOM is undefined: use always the other method
2021-12-23 13:57:12 +01:00
Badlop
f4e2d278ba
Dollar is unnecessary on arithmetic variables
2021-12-23 13:57:10 +01:00
Badlop
d8be168cff
Use dollar notation instead of legacy backticked
2021-12-23 13:57:08 +01:00
Badlop
cde089ce9c
Disable some shellcheck warnings
2021-12-23 13:57:06 +01:00
Badlop
fdc664a318
The read value is useless, so use throwaway variable name
2021-12-23 13:57:04 +01:00
Badlop
4deff0513c
Harmless warning, but let's prevent it anyway
2021-12-23 13:57:02 +01:00
Badlop
46324385f2
SCRIPT_DIR is used by relx releases
2021-12-23 13:57:00 +01:00
Badlop
b5d8b22486
In POSIX sh, RANDOM is undefined, use alternative
2021-12-23 13:56:58 +01:00
Badlop
1b22368f6b
In POSIX sh, OSTYPE is undefined. ejabberd doesn't work natively in win anyway
2021-12-23 13:56:56 +01:00
Badlop
f88aa49913
Give hint about what ejabberd.cfg.example sourcing
2021-12-23 13:56:53 +01:00
Badlop
200a842cb0
Configure shellcheck to test with sh POSIX script
2021-12-23 13:56:51 +01:00
Badlop
66bb4cbfa9
Only provide Relx start script in dev profile
...
That script serves a similar purpose to ejabberdctl to start ejabberd,
but we can't guarantee it is completely equivalent to ejabberdctl.
The prod profile must provide only the well-known script.
The test profile provides the Relx script so we can experiment with it.
2021-12-23 13:54:08 +01:00
Holger Weiss
aaa053829f
Revert "rebar.config: Don't create extended start script"
...
This reverts commit 0881c5941a
.
The extended start had been enabled intentionally, as some commands
(such as 'ping', 'status', or 'pid') actually do work.
2021-12-23 07:12:02 +01:00
Holger Weiss
0881c5941a
rebar.config: Don't create extended start script
...
We currently don't use the start script(s) generated by Relx.
2021-12-21 00:01:17 +01:00
Holger Weiss
3c46e6aba5
Merge remote-tracking branch 'processone/pr/3735'
...
* processone/pr/3735:
node_pep: Add config-node and multi-items features
2021-12-20 09:37:37 +01:00
Alexey Shchepin
fc34661b6f
Add subscribe_room_many command
2021-12-20 09:42:02 +03:00
Alexey Shchepin
a26c9d2475
Optimize user removal handling in mod_muc
2021-12-20 09:42:02 +03:00
Alexey Shchepin
536beedeb6
Accept more types of ejabberdctl commands arguments as JSON-encoded
2021-12-20 09:42:02 +03:00
Linus Jahn
7196f46730
node_pep: Add config-node and multi-items features
...
Fixes #3714 .
2021-12-19 21:06:33 +01:00
Holger Weiss
42bdb501ca
mod_stun_disco: Fix parsing of IPv6 listeners
...
Don't crash if `mod_stun_disco` is used with `offer_local_services`
and an IPv6 listener has an explicit `ip:` address configured.
Thanks to Daniel Kenzelmann for reporting the issue.
2021-12-18 17:50:26 +01:00
Badlop
24742031e9
Revert "Github Actions: use MD5 pass encryption to support PostgreSQL 14 ( #3691 )"
...
This workaround is not needed anymore, thanks to p1_pgsql 3bf645b,
included in p1_pgsql 1.1.13, and used in ejabberd 21.12.
This reverts commit 964cb3aaca
.
2021-12-15 00:50:52 +01:00
Badlop
7e07cba406
Let get_all_rooms handle "global" argument, fixes rooms_unsued_... ( #3726 )
2021-12-15 00:50:17 +01:00
Alexey Shchepin
8b7da70b57
Handle user removal in mod_muc
2021-12-14 09:55:55 +03:00
Paweł Chmielowski
a94209a0e0
Update stun and esip dependencies
2021-12-09 12:13:48 +01:00
Badlop
ed5ba1f645
Update CHANGELOG.md to 21.12
2021-12-09 11:07:43 +01:00
Badlop
1915f29d4b
Update Chinese translation (thanks to Eric and 52871299hzy)
2021-12-09 10:55:26 +01:00
Badlop
333eaef6dc
Update French translation (thanks to Éfrit and ButterflyOfFire)
2021-12-09 10:55:23 +01:00
Badlop
d1bfd6c90d
Annotate modules, options and command major changes in 21.12
2021-12-09 10:55:21 +01:00
Badlop
ca143c1873
Update man page
2021-12-09 10:55:19 +01:00
Badlop
e10f2a9e47
OTP 24 means whatever version provided by Actions... nowadays it's 24.1
2021-12-09 10:55:16 +01:00
Badlop
0f9a0156c6
Handle mix version when running docker-ejabberd/ecs/build.sh latest
2021-12-08 16:31:36 +01:00
Badlop
68ea5834c8
Relax strictness in mix dependency versions
2021-12-08 16:31:34 +01:00
Holger Weiss
4a52042435
Merge remote-tracking branch 'processone/pr/3724'
...
* processone/pr/3724:
Remove CTLLOCKDIR (/var/lock/ejabberdctl) from Makefile.in
2021-12-07 10:19:59 +01:00
Florian Schmaus
6b1f78e87a
Remove CTLLOCKDIR (/var/lock/ejabberdctl) from Makefile.in
...
Flock'ing /var/lock/ejabberdctl by ejabberdctl was removed with
f7d4aae64d
("Use UUID for ctl node name (#1021 )"), however the
according recipies in the Makefile where never removed. This commit
does that.
2021-12-07 10:15:47 +01:00
Badlop
3f4423e996
Use P1's coveralls-erl fork to handle unicode in git commit author
2021-12-07 01:33:16 +01:00
Paweł Chmielowski
8d8a3177e1
Eliminate xref warning from last commit
2021-12-06 15:46:52 +01:00
Paweł Chmielowski
7897c3d0e1
Add workaround for bug in older erlang version in rest module
2021-12-06 15:08:10 +01:00
badlop
b173ec0a78
Merge pull request #3652 from weiss/bump-max-items
...
PubSub: Bump default value for 'max_items' limit
2021-12-03 16:11:18 +01:00
Badlop
7fd0eefa30
Run make options
2021-12-03 16:09:58 +01:00
Badlop
dab4c0cc10
New allow_modules option to restrict registration modules
2021-12-03 16:09:55 +01:00
Badlop
0372878ba5
Minor improvements in conversejs documentation
2021-12-03 16:09:10 +01:00
Paweł Chmielowski
ad3c91b86e
Update mix deps
2021-11-29 15:36:57 +01:00
Paweł Chmielowski
75b133d968
Update deps
2021-11-29 15:20:10 +01:00
Alexey Shchepin
89ad8a5502
Add mod_conversejs
2021-11-23 08:43:54 +03:00
Badlop
15d3ebb842
Fix Dialyzer warning, old passwd tuple don't match current tuple definition
2021-11-17 17:26:44 +01:00
Badlop
689749a563
Update Jose to 1.11.1 (the last in hex.pm correctly versioned)
2021-11-17 13:22:34 +01:00
Badlop
a590e81922
Add DIAGNOSTIC to rebar3 coveralls, this fails since some days ago
2021-11-17 13:20:33 +01:00
Paweł Chmielowski
405a5172d5
Improve mod_multicast
2021-11-17 11:32:42 +01:00
Paweł Chmielowski
97b8373fd2
Better version of dialyzer fix
2021-11-16 10:59:53 +01:00
Paweł Chmielowski
bdd4e52699
Make dialyzer happy
2021-11-16 10:57:15 +01:00
Paweł Chmielowski
03817de827
Make s2s connection table cleanup more robust
...
Using monitors instead of doint that from terminate() makes us immune to
s2s handler processes being forcefully killed.
2021-11-16 10:25:03 +01:00
Paweł Chmielowski
132ebb8f2d
Fix exception in mucsub {un}subscription events multicast handler
...
While those event are wrapped in mucsub envelope they doesn't
contain regular messages that require updating 'to' attribute,
so don't process in that same way as events with wrapped
message in them.
2021-11-10 17:04:50 +01:00
Holger Weiss
2cdda4cf49
mod_caps: Don't forget caps on XEP-0198 resumption
...
Many thanks to Thilo Molitor for spotting the issue and testing the fix.
2021-11-06 23:48:49 +01:00
Badlop
4e014d23bd
Improve documentation of some commands
2021-11-05 15:58:00 +01:00
Badlop
b6a2eeebeb
Mention "help" as an available ejabberdctl command
2021-11-05 15:57:57 +01:00
Badlop
684ef60ec3
Annotate support for XEP-0317: Hats, since commit 5d0e599f1
2021-11-05 15:57:53 +01:00
Holger Weiss
6e3df8e80b
Update 'stun' dependency
...
The new 'stun' release should improve UDP performance quite a bit.
2021-11-02 12:34:19 +01:00
Holger Weiss
c4f6c9dfe7
mod_muc_room.hrl: Work around old Dialyzer bug
...
On Erlang/OTP versions older than 21, Dialyzer stumbles over non-empty
map type specifications for record fields (OTP-15098).
2021-10-31 21:59:00 +01:00
Holger Weiss
13cbd7c35d
mod_pubsub: Remove unused check_opt_range/3 clause
2021-10-31 21:38:49 +01:00
Holger Weiss
65a900668c
node_pep: Fix remove_expired_items/2 argument name
2021-10-31 21:32:45 +01:00
Holger Weiss
2f1611f918
mod_pubsub: Fix get_max_items_node/1 specification
...
Make it explicit that the get_max_items_node/1 function returns
?MAXITEMS if the 'max_items_node' option isn't specified. The function
didn't actually fall back to 'undefined' (but to the 'max_items_node'
default; i.e., ?MAXITEMS) anyway. This change just clarifies the
behavior and adjusts the function specification accordingly.
2021-10-30 13:45:10 +02:00
Holger Weiss
29dcc9b94c
PubSub: Add delete_expired_pubsub_items command
...
Support XEP-0060's pubsub#item_expire feature by adding a command for
deleting expired PubSub items.
Thanks to Ammonit Measurement GmbH for sponsoring this work.
2021-10-30 13:19:30 +02:00
Alexey Shchepin
5d48329a3f
Update 'xmpp' dependency
2021-10-29 05:48:03 +03:00
Alexey Shchepin
5d0e599f17
Support MUC hats (XEP-0317, conversejs/prosody compatible)
2021-10-29 05:35:16 +03:00
Badlop
5462a26a0a
Remove obsolete cookie preparation in spool dir, it's now stored in HOME
2021-10-21 16:12:41 +02:00
Badlop
5f3c8dcca4
Use the configured user in systemd's ejabberd.service
2021-10-21 16:12:38 +02:00
Badlop
54c23a65db
Fix create_room_with_opts when using SQL storage ( #3700 )
2021-10-21 12:44:51 +02:00
Badlop
4d384b6bf5
If tests succeed, test also new SQL schema
2021-10-15 16:59:32 +02:00
Badlop
c2db003431
When tests fail, show also error.log as it may have meaningful content
2021-10-15 16:59:28 +02:00
Badlop
d3aa329769
Fix vcard_search definition in pgsql new schema (thanks to Stu Tomlinson)( #3695 )
...
How to update an existing database:
ALTER TABLE vcard_search DROP CONSTRAINT vcard_search_pkey;
ALTER TABLE vcard_search ADD PRIMARY KEY (server_host, lusername);
2021-10-14 15:28:00 +02:00
Badlop
db920b7d7b
Only install some files when option enabled in configure ( #3633 )
2021-10-14 15:26:41 +02:00
Holger Weiss
6b0fa44386
Update 'xmpp' dependency
...
Fixes #3529 .
2021-10-09 10:56:30 +02:00
Badlop
964cb3aaca
Github Actions: use MD5 pass encryption to support PostgreSQL 14 ( #3691 )
2021-10-07 16:54:27 +02:00
Holger Weiss
1377dcf6d2
mod_mam: Declare XEP-0441 support
2021-10-06 01:13:11 +02:00
Badlop
595b016019
Use mod_register in web register form, so its restrictions are used ( #3688 )
2021-10-04 12:08:59 +02:00
Badlop
85408662ff
Use mod_register to format some common error messages
2021-10-04 12:08:56 +02:00
Badlop
d205e6ff1f
Support old scram records before xmpp's 651050f9 and ejabberd's e5cad9be6
( #3680 )
2021-09-27 17:12:17 +02:00
Badlop
dd359a7328
Add indexes from 95fa43aa
to the old-to-new MySQL schema update script
2021-09-27 16:33:23 +02:00
Badlop
f74a715713
Add indexes from 95fa43aa
to the old-to-new schema update function
2021-09-27 13:05:18 +02:00
Badlop
af4b49f720
Update export/import of scram password to XEP-0227 1.1 ( #3676 )
2021-09-22 16:15:22 +02:00
Badlop
ceeba3eea1
Don't crash when exporting a module that is not enabled
2021-09-22 15:30:11 +02:00
Badlop
cfc393a12e
When exporting mod_mam, MUC entries are assigned to the MUC service ( #3680 )
2021-09-22 11:12:28 +02:00
Alexey Shchepin
c9c5839da4
Fix roster_tests:get_items
2021-09-21 13:30:52 +03:00
Alexey Shchepin
bf068f5659
Small optimization in mod_roster_sql:get_roster
2021-09-21 12:10:00 +03:00
Alexey Shchepin
32cf44827d
Use INSERT ... ON CONFLICT in SQL_UPSERT for PostgreSQL >= 9.5
2021-09-19 06:20:20 +03:00
Alexey Shchepin
0c403c0f0e
Fix SQL_UPSERT in mod_push_sql:store_session
2021-09-19 06:20:20 +03:00
Pouriya
3eb795357f
Merge branch 'processone:master' into master
2021-09-18 16:09:11 +04:30
Badlop
2f5b15129a
Fix previous commit: add forgotten endline blankspaces
2021-09-14 15:13:37 +02:00
Badlop
f8167fc5d0
Update documentation to match the implemented options values ( #3675 )
2021-09-14 13:47:41 +02:00
Alexey Shchepin
5abc03ff8f
Optimize MucSub processing
2021-09-13 08:20:47 +03:00
Holger Weiss
3114ce4ed2
ejabberd_admin: Fix ejabberd_piefxis commands
...
These days, the ejabberd_piefxis commands expect their arguments to be
handed over as binary strings.
2021-09-08 18:34:20 +02:00
Holger Weiss
868387a405
mod_http_upload_quota: Avoid 'max_days' race
...
Try to spread clean-up runs for multiple hosts, rather than scheduling
them in parallel. This should reduce I/O spikes, and avoid race
conditions where multiple processes detect and then try to delete the
same old files (if multiple hosts have the same 'docroot').
Fixes #3497 .
2021-09-05 20:00:05 +02:00
Holger Weiss
caf07692db
mod_register_web: Handle unknown host gracefully
...
Return a proper error message on registration attempts against unknown
hosts, rather than crashing.
Thanks to Ingo Jrgensmann for reporting the bug.
2021-09-05 13:24:51 +02:00
Badlop
91350ad472
Fix WebAdmin recent change
2021-08-27 13:39:06 +02:00
badlop
d967103d89
Merge pull request #3668 from longlene/master
...
rebar version get minor fix
2021-08-27 13:23:56 +02:00
Badlop
f77686481a
Add internal links in WebAdmin Vhosts page
2021-08-27 13:23:24 +02:00
Badlop
b0da69f050
Send ping from server, not bare user JID ( #3658 )
2021-08-27 13:23:15 +02:00
loong0
9643e18be7
minor fix
2021-08-26 20:33:37 +08:00
Holger Weiss
ebf03a3745
node_flat: Avoid catch-all clauses for RSM
...
Apply the change made in the previous commit to Mnesia storage as well.
2021-08-23 22:04:03 +02:00
Holger Weiss
c952cc420b
node_flat_sql: Avoid catch-all clauses for RSM
...
Explicitly catch invalid <before/> and <after/> timestamps specified by
clients in RSM queries, but crash on other errors, rather than silently
ignoring those.
2021-08-23 21:28:15 +02:00
Badlop
4d0503b6b3
Fix syntax in mod_disco example configuration
2021-08-23 15:49:52 +02:00
Badlop
8b6c90c2d9
Tell dialyzer that gen_tags only cares about markdown output, not html
2021-08-23 15:39:01 +02:00
Badlop
655dcbcb74
New command to produce markdown with tags and their associated commands
2021-08-23 14:04:54 +02:00
Badlop
ac4f240261
Produce module names with specific syntax, docs Makefile will convert to links
2021-08-23 14:04:52 +02:00
Badlop
506e2f3b97
Use specific syntax so modules and top-level will be links
...
If we use _`whatever`_ here in ejabberd man pages,
it is converted to *`whatever`* in markdown,
and docs.ejabberd.im/Makefile converts to the proper links
2021-08-23 14:04:49 +02:00
Badlop
30ae66e99e
Improve formatting and add sections links
2021-08-23 14:04:46 +02:00
Badlop
f5038b86f8
Copy log_rotate_count explanation from docs site
2021-08-23 14:04:44 +02:00
Badlop
9446b251fd
Export function, so ACME API commands are listed in the documentation
2021-08-23 14:04:42 +02:00
Badlop
94fb0a65b0
Change set_master command tag from mnesia to cluster
2021-08-23 14:04:40 +02:00
Badlop
69d362595e
Remove obsolete mod_register_web ideas and improve documentation
2021-08-23 14:04:37 +02:00
Badlop
b7f7713fae
Add example config to mod_http_api documentation
2021-08-23 14:04:35 +02:00
Badlop
8af66b0831
Update API Reference page menu name and order
2021-08-23 14:04:31 +02:00
Holger Weiss
7e9c9703dd
Merge remote-tracking branch 'processone/pr/3666'
...
* processone/pr/3666:
PubSub: Add delete_old_pubsub_items command
PubSub: Optimize publishing on large nodes (SQL)
PubSub: Support unlimited number of items
PubSub: Support 'max_items=max' node configuration
2021-08-22 15:17:02 +02:00
Holger Weiss
8d5025076f
PubSub: Add delete_old_pubsub_items command
...
Add a command for keeping only the specified number of items on each
node and removing all older items. This might be especially useful if
nodes may be configured to have no 'max_items' limit.
Thanks to Ammonit Measurement GmbH for sponsoring this work.
2021-08-22 12:44:50 +02:00
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
Badlop
df8b0cb1a5
Add sql to package files ( #3251 )
2021-07-16 13:36:15 +02:00
Badlop
a00a11e38a
Add vars.config to package files: version and cond_deps use it
2021-07-16 13:36:13 +02:00
Badlop
94949c9617
Sort package files
2021-07-16 13:36:10 +02:00
Badlop
e2aaca7cdd
Update mix applications list to fix error "p1_utils is listed as both..."
2021-07-16 13:36:04 +02:00
Badlop
3afaacab76
With the recent changes it seems mod_mix supports 0.14.1 ( #3634 )
2021-07-15 17:19:32 +02:00
badlop
57be0e38d8
Merge pull request #3634 from lnjX/mix-identity-conf-mix
...
mod_mix: Use disco identity conference/mix
2021-07-15 17:15:48 +02:00
Paweł Chmielowski
27c69f263c
Allow multicast hook registering by host
2021-07-14 13:58:53 +02:00
Badlop
e22ed8081a
Provide proper error message when create_room fails with invalid_service
2021-07-13 20:43:52 +02:00
Badlop
5beaf50c67
Fix spec: xmpp:set_from_to/3 allows undefined as second argument
2021-07-13 20:43:44 +02:00
Paweł Chmielowski
a07029dcad
Fix previous commit to pass all tests
2021-07-13 17:56:16 +02:00
Paweł Chmielowski
0de6f1c538
Use multicast routing for more packets generated by muc
2021-07-13 16:01:25 +02:00
Badlop
2e2667bbd7
Update documentation: mod_muc ram_db_type supports SQL since 17.04 ( #3632 )
2021-07-08 12:29:16 +02:00
Badlop
271a9f097d
After create_room, store in DB if it's persistent ( #3632 )
2021-07-08 12:29:13 +02:00
Badlop
7e3276f3a8
Ignore captcha scripts copied by relx after "make dev"
2021-07-08 12:29:03 +02:00
badlop
42fdac0b41
Merge pull request #3639 from McPo/xep0033-bcc-strip-fix
...
Correctly strip only third-party bcc addresses
2021-07-07 19:07:21 +02:00
Emmet McPoland
509331a563
Correctly strip only other bcc addresses i.e. bcc receiver should still be able to see their bcc address element and no other bcc address element
2021-07-07 16:44:58 +01:00
Badlop
08c2d0a83e
Tell relx to include src, so that the tar will contain include/ ( #3633 )
...
That's the only way to ensure that tar.gz will contain include/
of ejabberd and its dependencies, which is required to compile
ejabberd-contrib modules with "ejabberdctl module_install ..."
2021-07-06 13:37:14 +02:00
Badlop
bb0c6e1e02
Show messages with next configuration steps when installing a module
2021-07-06 13:37:04 +02:00
badlop
331a67f5f8
Merge pull request #3566 from Robbilie/feature/mqtt-shared-roster-groups-placeholder
...
allow shared roster group placeholder in mqtt topic
2021-07-06 13:36:41 +02:00
Paweł Chmielowski
e3e4dae583
Yet another dialyzer warning fix
2021-06-28 12:53:30 +02:00
Paweł Chmielowski
b669e4499c
Fix dialyzer warning
2021-06-28 12:18:19 +02:00
Paweł Chmielowski
6e900d6a8f
Add send_timeout option to listener
2021-06-28 11:31:45 +02:00
Paweł Chmielowski
795addca7d
Try to limit serial access when checking api permissions
2021-06-28 11:31:43 +02:00
Badlop
774de2bdc5
Include odbc app in release only when required ( #3633 )
2021-06-27 17:32:09 +02:00
Badlop
b5b2ad560a
Copy captcha scripts in release ( #3633 )
2021-06-27 17:32:06 +02:00
Badlop
b93fc4333c
Let "make dev" always update SCRIPT_DIR in ejabberdctl, even if link exists
2021-06-27 17:32:04 +02:00
Linus Jahn
d7c9809c59
mod_mix: Use disco identity conference/mix
...
Probably someone has forgotten to update it here.
https://xmpp.org/extensions/xep-0369.html#example-5
Fixes #2901 .
2021-06-27 01:20:45 +02:00
Badlop
ac06161f30
There are so many targets... add "make help"
2021-06-25 12:53:47 +02:00
Badlop
0fe2aea709
New "make dev" and "./ejabberdctl" (requires using rebar3)
2021-06-25 12:53:43 +02:00
Badlop
21b021d912
Set SCRIPT_DIR as done by the ejabberd script generated by "rebar3 release"
2021-06-25 12:53:30 +02:00
Badlop
d5adcaea61
Add support for rebar3 to "make rel"
2021-06-25 12:53:22 +02:00
Holger Weiss
9d4c01d425
mod_push_keepalive: Fix 'resume_timeout' docs
...
The default 'resume_timeout' value is 72 hours, not 72 minutes.
2021-06-25 01:30:10 +02:00
Badlop
ea97be9124
Don't cache rebar3 binaries... compiling is less than 2 minutes anyway
2021-06-21 11:46:10 +02:00
Paweł Chmielowski
2458f55837
Update stringprep in mix
2021-06-18 11:45:18 +02:00
Pouriya
5f8114974f
ref: fix WS typos
2021-06-15 15:13:03 +04:30
badlop
1ef9f28f2d
Merge pull request #3622 from pouriya/fix-ws-typos
...
ref: fix WS typos
2021-06-14 17:21:33 +02:00
Badlop
3ed41e39f6
CI: don't cache dialyzer output file: when there are several, ln fails
2021-06-14 17:20:57 +02:00
Badlop
4ee10c155d
Fix reverse order of items when using <before/> in Pubsub with RSM ( #3621 )
2021-06-14 12:22:37 +02:00
Badlop
c2d8bc7b2f
Add mqtt_pub table definition for MSSQL ( #3097 )
2021-06-14 12:22:21 +02:00
Pouriya Jahanbakhsh
b5bafca640
ref: fix WS typos
2021-06-12 20:27:30 +04:30
Badlop
9a93562b94
Revert luerl from v0.4 which has a compilation warning; v0.3 is enough
...
Revert "Update luerl dependency from v0.3 to v0.4"
This reverts commit 64f3f3287a
.
2021-06-08 19:00:46 +02:00
Badlop
bf8b4acf01
Return proper index when using after of before in PubSub with RSM ( #3618 )
...
This fixes Index attribute in examples from:
https://xmpp.org/extensions/xep-0059.html#forwards
https://xmpp.org/extensions/xep-0059.html#backwards
2021-06-08 19:00:44 +02:00
Badlop
41fd2afeb3
Fix index attribute when getting last page from PubSub with RSM ( #3618 )
...
This fixes Example 11 from "2.5 Requesting the Last Page in a Result Set":
https://xmpp.org/extensions/xep-0059.html#last
2021-06-08 19:00:41 +02:00
Badlop
4520d5f3c1
Support for simple limiting the number of items in PubSub with RSM ( #3618 )
...
This fixes crash in Example 1 from "2.1 Limiting the Number of Items":
https://xmpp.org/extensions/xep-0059.html#limit
2021-06-08 19:00:39 +02:00
Badlop
ccadbf45a2
Get explicitely rebar3 3.15 binary that works with Erlang 21.3
2021-06-07 12:13:22 +02:00
Badlop
2b0d724aef
Workaround so coveralls website shows git commit information
...
References:
https://github.com/markusn/coveralls-erl/pull/36
https://github.com/deadtrickster/prometheus.erl/pull/123
2021-06-06 16:56:29 +02:00
Badlop
9010c35193
CI: Get rebar3 compatible with previous OTP, the one in Ubuntu 20.04 is not
2021-05-28 16:56:05 +02:00
Badlop
2c20414453
Update eredis dependency from v1.0.8 to v1.2.0
2021-05-28 16:54:58 +02:00
Badlop
64f3f3287a
Update luerl dependency from v0.3 to v0.4
2021-05-28 16:53:09 +02:00
Badlop
1befa8d8b7
Update lager dependency from 3.6.10 to 3.9.1 to make Dialyzer happy
2021-05-28 16:51:59 +02:00
Holger Weiß
3b5ddf0254
mod_muc_room: Don't leak owner JIDs ( #3615 )
...
Avoid publishing room owner JIDs (via the muc#roominfo form) without
their explicit consent.
Closes #3609 .
2021-05-28 16:43:49 +02:00
Badlop
33fd45a960
Remove .travis.yml as it's superseded by ci.yml ( #3613 )
2021-05-25 19:16:06 +02:00
Badlop
77ef03e104
New ci.yml with all static and dynamic testing suites ( #3613 )
...
It supports all that was already in .travis.yml and tests.yml, plus:
- exclude paths that don't affect source code
- two very distinct scenarios, ancient a recent (OTP, Rebar, Ubuntu)
- cache binaries and dialyzer for small speedup and network usage
- separated results, to view comfortably where and what failed
- use coveralls example rebar3 code, instead of custom rebar2
- upload binaries.zip that can be used with Binary Installers
2021-05-25 18:45:31 +02:00
Badlop
70640e71f1
Remove tests.yml github workflow, a new reworked one is coming ( #3613 )
2021-05-25 18:40:28 +02:00
Badlop
1ee64091b3
Fix extauth.py failure in test suite with Python 3 ( #3612 )
2021-05-25 18:39:18 +02:00
Nikat
7b33499811
MySQL Backend Patch for scram-sha512 ( #3582 )
...
* Update mysql.new.sql
scram-sha512 does not work, because serverkey is longer, then that array. All passwords was unhashed.
* Update mysql.sql
2021-05-20 13:32:50 +02:00
Badlop
d94bae241c
Align numbers in WebAdmin tables to the right
2021-05-19 15:00:22 +02:00
Badlop
58a623778f
Show uptime date in WebAdmin, it's easier to understand that uptime seconds
2021-05-19 15:00:19 +02:00
Badlop
494ba9a635
Show mnesia table memory in bytes, not in words
2021-05-19 15:00:16 +02:00
Paweł Chmielowski
95fa43aa96
Add missing indexes to sql sr_group tables
2021-05-18 18:29:32 +02:00
Badlop
16af8a4739
New simple webadmin pages to view mnesia tables information and content
2021-05-17 16:16:26 +02:00
Badlop
57202d958a
Use G macro name for tag, as T overlapped T from translation
2021-05-17 16:14:39 +02:00
Badlop
d741f6f5f2
Update documentation references for import_prosody and export2sql
2021-05-14 16:07:03 +02:00
Badlop
20b4deffe3
Apply improvement from 29462f005
to delete/2, and fix delete/3 ( #3564 )
2021-05-14 16:06:59 +02:00
Badlop
ee3796b925
When exporting for SQLite, use its specific escape options ( #2576 )
2021-05-14 16:06:43 +02:00
Badlop
8e08703833
Tell io_lib:print to not care about line length, to avoid newlines in SQL export
2021-05-14 16:06:39 +02:00
Paweł Chmielowski
3b716d2cb0
Update econf:vcard() to generate correct vcard_temp record
2021-05-12 21:46:36 +02:00
Paweł Chmielowski
0f51a03d08
Update xmpp to bring updated vcard
2021-05-12 18:05:11 +02:00
Mickaël Rémond
20247af6f6
Use the new Github container registry
2021-05-12 11:51:40 +02:00
Mickaël Rémond
2698024b82
Use latest version of the container
...
This is the only image available for now
2021-05-12 11:22:45 +02:00
Mickaël Rémond
a142dc4b11
Remove set up already set in prebuilt image
2021-05-12 11:17:26 +02:00
Mickaël Rémond
2844a2d73e
Use a prebuilt image
2021-05-12 11:16:46 +02:00
Badlop
160cd11c83
Minor fixes for new_sql_schema support in SQLite ( #3303 )
2021-05-11 18:36:16 +02:00
Badlop
4fdebd296a
Document that update_sql command only supports postgresql ( #3439 )
2021-05-11 18:36:14 +02:00
Badlop
b18f622984
Use the deps versions defined in rebar.config, not the latest available
2021-05-11 18:36:11 +02:00
Badlop
f61607df65
Don't add ejabberd version in API page either, following 3e4ebfae7
2021-05-11 18:36:08 +02:00
Mickaël Rémond
5d0c0eb03d
Expose port label
2021-05-11 09:00:44 +00:00
Mickaël Rémond
ef1d9a0723
Ignore basic Mnesia directory
2021-05-11 08:32:44 +00:00
Mickaël Rémond
5465e7ed2f
Forward XMPP legacy SSL and MQTT ports
2021-05-11 08:29:38 +00:00
Mickaël Rémond
7edd9e3766
Install Erlang and Elixir VSCode extensions as default
2021-05-11 08:06:44 +00:00
Mickaël Rémond
7a6425544c
Remove file syntax deprecation
2021-05-11 08:06:16 +00:00
Mickaël Rémond
97e7f25e6e
Merge pull request #3595 from processone/codespaces
...
Codespaces
2021-05-11 09:50:46 +02:00
Badlop
916653e234
Cast as boolean when exporting privacy_list_data to PostgreSQL ( #1773 )
2021-05-10 12:04:52 +02:00
Badlop
6db228fcb3
Document that sql_ssl can be used with MySQL too
2021-05-05 11:57:08 +02:00
Badlop
c2821be94c
Use the new 'note' field to annotate changes in 20.01..21.03
2021-05-05 11:57:05 +02:00
Badlop
999d0af502
New 'note' field in commands and options documentation
2021-05-05 11:57:02 +02:00
Paweł Chmielowski
78c09789f7
Fix invalid_encoding error when using extended plane characters in vcard.
2021-04-29 14:21:37 +02:00
Paweł Chmielowski
5a8f1ca528
Display extender error message in ejabberdctl
...
This for example makes error from register explain what account
can't be registered
For reference https://github.com/processone/ejabberd/discussions/3584
2021-04-22 11:56:58 +02:00
badlop
2d38d48a55
Merge pull request #3578 from tappytaps/srg-cache-fix
...
Fixed srg_create params and shared roster groups cache issues
2021-04-20 21:22:25 +02:00
Jindrich Sarson
dcc5d8704f
delete cache after performing change to be sure that in cache will be up to date data
2021-04-17 19:07:21 +02:00
Jindrich Sarson
c10e4fa275
update srg_create API to use label parameter instead of name
2021-04-17 18:49:26 +02:00
Paweł Chmielowski
e462f0a584
Fix dialyzer warnings
2021-04-16 11:55:48 +02:00
Paweł Chmielowski
45bbbd0284
Fix syntax not recognized by older erlang
2021-04-16 10:46:28 +02:00
Paweł Chmielowski
5b0f0d8352
Improve database and caching in mod_shared_roster
...
This makes us keep cache of groups that use wildcards no matter
of cache settings, and tries to not same fetch data multiple times
in roster get operations.
2021-04-16 10:34:32 +02:00
Paweł Chmielowski
54916caf65
Use proper source for cache options in mod_shared_roster
2021-04-16 10:20:13 +02:00
Paweł Chmielowski
c8afb5ceb6
Reconfigure cache in mod_shared_roster when options change
2021-04-16 10:19:09 +02:00
Badlop
b3374e1f99
Remove SMP option from ejabberdctl.cfg, -smp was removed in OTP 21 ( #3560 )
2021-04-15 20:28:43 +02:00
Badlop
4914b33f8c
Support the recent changes in the "ejabberdctl help" command ( #3569 )
2021-04-15 20:25:54 +02:00
Badlop
0ec69f0279
Major changes in ejabberdctl help output ( #3569 )
...
ejabberdctl: show list of commands
ejabberdctl some-command: if wrong number of arguments, shows command help
ejabberdctl help: show explanation of how to use "help"
ejabberdctl help tags: list tags with list of commands
ejabberdctl help commands: list tags with commands details
ejabberdctl help whatever*: filters commands and tags
2021-04-15 20:25:52 +02:00
Badlop
6f565147cb
Change tag name because there's already a command called "stats"
2021-04-15 20:25:49 +02:00
Badlop
f8a02f5d9d
Get the arguments definition from the record ( #3569 )
...
This fixes "ejabberdctl help help"
2021-04-15 20:25:47 +02:00
Badlop
327dc31e62
Copy a change from include file available since OTP 17.0
...
See:
5e575f6562
2021-04-15 20:25:44 +02:00
Mickaël Rémond
f77a163341
Update bug_report.md
2021-04-15 15:30:23 +02:00
Mickaël Rémond
c280d172b1
Update feature_request.md
2021-04-15 15:30:06 +02:00
Badlop
b860a25c82
When using OTP 24.0, use the new 'application' record definition ( #3568 )
...
This fixes "ejabberdctl update_list", "update", and the equivalent feature
on ejabberd's WebAdmin that got broken when using Erlang/OTP 24
2021-04-14 17:12:08 +02:00
Mickaël Rémond
ab2b499869
Update devcontainer.json
2021-04-13 10:25:05 +02:00
Mickaël Rémond
0a55e07326
Use Dockerfile
2021-04-13 08:24:01 +00:00
Mickaël Rémond
22cc7cedff
Use Dockerfile
2021-04-12 09:54:06 +00:00
Mickaël Rémond
cdbfd91ec4
Update devcontainer.json
...
Disable docker compose for now
2021-04-12 11:45:59 +02:00
Mickaël Rémond
9359bab677
Create docker-compose.yml
2021-04-12 11:44:10 +02:00
Robert Schuh
0e93f70e38
allow shared roster group placeholder in mqtt topic
2021-04-08 23:21:15 +02:00
Holger Weiss
10905b0447
mod_push: Handle MUC/Sub events correctly
...
Unwrap MUC/Sub messages so that our check for a message body yields the
correct result.
Many thanks to Robert Schuh for pointing out the issue and suggesting a
fix.
Closes #3565 .
2021-04-08 19:36:16 +02:00
Jérôme Sautret
4468c87115
Set version to 21.04
2021-04-07 17:23:30 +02:00
Badlop
4b83ec1204
New Albanian translation (thanks to Besnik Bleta)
2021-04-07 16:01:28 +02:00
Paweł Chmielowski
03e62308e2
Update deps in mix
2021-04-07 12:14:58 +02:00
badlop
c0dafc074d
Merge pull request #3558 from fdie/fix_node_get_state_return_value
...
fix gen_pubsub_node:get_state return value
2021-03-29 15:52:04 +02:00
Badlop
3bb89010fe
Recompile man page with "ejabberdctl man"
2021-03-26 11:05:49 +01:00
Badlop
3e4ebfae7e
Revert "Add ejabberd version number to man pages"
...
That versioning just added noise to the git log in each release.
This reverts commit aa0ed37034
.
2021-03-26 11:01:45 +01:00
Badlop
c64df48978
Run "make translations", and *.msg get a warning to not edit them manually
2021-03-26 10:50:06 +01:00
Badlop
1c74bb7131
Update Japanese translation (thanks to Mako N)
2021-03-26 10:48:00 +01:00
Badlop
f577715468
Update Greek translation (thanks to Michalis and Stratos Kostidis)
2021-03-26 10:47:13 +01:00
Badlop
1cd4f730b9
Update Esperanto translation (thanks to phlostically)
2021-03-26 10:46:48 +01:00
fdie
edae3c9cc5
fix gen_pubsub_node:get_state return value
2021-03-25 14:32:24 +01:00
Badlop
815030a4f0
I think no need to be so strict in mix dependencies versions
2021-03-24 23:03:53 +01:00
Badlop
82bd7e5d5b
Update rebar dependencies
2021-03-24 23:03:46 +01:00
Badlop
453d504fb7
No need to ignore ejabberd.app.src, it was recently removed, see 3c16f214
2021-03-19 15:13:20 +01:00
Badlop
627564983b
No need to ignore XmppAddr*, it was removed in 2018, see 0bb14d16
2021-03-19 15:13:18 +01:00
Badlop
7e8b59a0aa
No need to ignore extract_translations, it was removed in 2017, see cd098c5a
2021-03-19 15:13:15 +01:00
Badlop
9bf37d7fdf
No need to ignore doc/, it was removed in 2015! See 1854b5e4
2021-03-19 15:13:04 +01:00
Badlop
02830a8b76
Tell git to ignore .deps-update/ used by tools/update-deps-releases.pl
2021-03-19 15:12:52 +01:00
Badlop
d8f01080ce
Cache rebar2 deps/ dir in Travis for a 10% speedup approx.
2021-03-19 15:12:50 +01:00
Badlop
1f88a26f60
When unregistering XMPP account close its MQTT sessions ( #3426 )
2021-03-19 15:12:48 +01:00
Badlop
c6f2d0c3eb
Improve wording of sql_pool_size option documentation ( #2541 )
2021-03-19 15:12:43 +01:00
Badlop
13e1307ab1
When occupant is banned, remove his subscriptions too ( #2451 )
2021-03-18 16:15:17 +01:00
Badlop
f6c6ff561a
Document that send_stanza_c2s requires an existing sender C2S session
2021-03-18 16:15:07 +01:00
Badlop
c4d45ec08c
Revert "Close pgsql ports on ejabberd_sql process termination ( #2541 )"
...
This reverts commit 404ae56e07
.
2021-03-18 16:14:49 +01:00
Holger Weiss
7008ae231c
Don't fail on PEP unsubscribe
...
Don't crash if a PEP node is explicitly unsubscribed. This fixes a
regression introduced by 45eb49125b
.
Thanks to Melvin Keskin for reporting the bug.
2021-03-16 17:26:47 +01:00
Badlop
14c8e1226f
Generate enabled_backends in ejabberd.app instead of configure ( #3549 )
...
Passing a list of atoms in vars.config.in (introduced in 3c16f214
)
breaks rebar2 in "make rel"
2021-03-15 10:11:05 +01:00
Badlop
8b78d27f30
Update Elixir logger, so logging should work now
2021-03-12 20:50:54 +01:00
Badlop
2fbd447f64
Update gitignore for Elixir, mnesiadb/ was renamed to database/ in ef6af11f1
2021-03-12 20:50:51 +01:00
Badlop
14d82fa600
Add mod_doc/0 to mod_presence_demo.ex so compiler stops complaining
2021-03-12 20:50:49 +01:00
Badlop
33fc320f1d
Update jiffy and epam to fix compilation ( #3413 )
2021-03-12 20:50:46 +01:00
Badlop
9fbea40721
Sort dependencies alphabetically, it makes manual checking easier
2021-03-12 20:50:44 +01:00
Badlop
9525978f26
Fix INTRUDER and add padding to second text line
...
b41ce8828c (r47461104)
2021-03-12 20:50:41 +01:00
badlop
75a4e23996
Merge pull request #3458 from nosnilmot/sqlite3-macos
...
Remove external dependency on sqlite3 for macos
2021-03-09 01:18:00 +01:00
Badlop
404ae56e07
Close pgsql ports on ejabberd_sql process termination ( #2541 )
2021-03-09 00:58:36 +01:00
Badlop
2946df357c
Update FORM_TYPE from captcha to register ( #3045 )
2021-03-09 00:58:31 +01:00
Badlop
5318bf3743
If stanza is type error, allow it passing ( #3290 )
2021-03-09 00:58:22 +01:00
Badlop
0f43c2c528
New command get_user_subscriptions ( #3403 )
2021-03-09 00:57:41 +01:00
Badlop
b5da0ffd7e
Show in WebAdmin the erlang node where the room resides
...
https://www.ejabberd.im/forum/29687/muc-mangement#comment-67685
2021-03-09 00:57:35 +01:00
Badlop
7ee018ad23
Obtain and provide photo type in vCard LDAP ( #3541 )
2021-03-08 16:33:30 +01:00
Badlop
31884f6c9d
Fix remove_mam_for_user_with_peer when removing room archive ( #3536 )
2021-03-08 16:33:23 +01:00
Badlop
c46bf7d56b
Remove support for HiPE, it was experimental and Erlang/OTP 24 removes it
2021-03-08 16:33:16 +01:00
Badlop
1b155ed6e7
Add --enable-lua, and use that for luerl instead of --enable-tools ( #3508 )
...
--enable-tools is for development tools, but prosody2ejabberd is used at
runtime, so better move luerl to --enable-lua
2021-03-08 16:33:06 +01:00
Badlop
e648cd7397
Sort libraries alphabetically, so they're easier to check manually
2021-03-08 16:33:03 +01:00
Badlop
3c248745e5
crypto:hmac is removed in Erlang/OTP 24, use our wrapper
2021-03-04 16:41:27 +01:00
Badlop
c45b526ec3
Update sql_query record to handle the Erlang/OTP 24 compiler reports
...
As mentioned in the Erlang/OTP 24 announcement:
"Compiler warnings and errors now include column numbers
in addition to line numbers."
2021-03-04 16:41:24 +01:00
Badlop
bf1600891b
Get back description and simplify processing ( #3507 )
2021-03-04 16:41:22 +01:00
Badlop
b139eb2fb3
Tell git to ignore rebar.lock used by rebar3
2021-03-04 16:41:19 +01:00
Badlop
9bd4f60c8a
Added badges for github actions, coveralls.io and weblate
2021-03-04 16:41:15 +01:00
Paweł Chmielowski
ca5d5f3b4c
Use monitors to track muc rooms
...
This should prevent keeping rooms that were hard killed from in
online table.
2021-03-03 11:32:05 +01:00
badlop
7209486386
Merge pull request #3507 from slezakattack/master
...
Allow ejabberd to be compatible as a dependency for an Erlang project…
2021-03-02 19:01:33 +01:00
Badlop
bb8bdf57b3
New Github Actions workflow to test Dialyzer, Xref, Options and Hooks
2021-02-23 19:45:53 +01:00
Badlop
c8bec07c45
Clone to the dir specified in rebar.config... useful for erlang-sqlite3
2021-02-23 19:45:41 +01:00
Holger Weiß
b41ce8828c
Add question/answer-based CAPTCHA script ( #3533 )
...
* New captcha.sh question/answer based
* Keep original CAPTCHA script
Rather than replacing the original CAPTCHA script, keep it next to the
new one, for the moment.
* CAPTCHA-ng script cleanup
* remove various bashisms
* replace all echos with printf
+ add quotations to many variables
Co-authored-by: Adrien Bourmault <neox@os-k.eu>
Co-authored-by: nico wellpott <nico@magicbroccoli.de>
2021-02-22 09:34:02 +01:00
Badlop
3720b42b0f
When using rebar3, "make dialyzer" needs just a single call
2021-02-19 17:00:39 +01:00
Badlop
69be0abdba
Fix Dialyzer warning about function contract that changed in fad14ff31
2021-02-19 17:00:35 +01:00
Badlop
09f5e2aa03
Improve support for rebar3 in "make translations"
2021-02-19 17:00:32 +01:00
Paweł Chmielowski
7da033f733
Fix muc tests
2021-02-17 13:09:29 +01:00
Paweł Chmielowski
14871c54ac
Take in account subscriber's affiliation when checking access to moderated room
...
This should fix issue #3525
2021-02-17 10:45:30 +01:00
Michael Slezak
3c16f21413
Allow ejabberd to be compatible as a dependency for an Erlang project using rebar3
2021-02-16 10:28:30 -07:00
Paweł Chmielowski
14d87cb5e9
Skip reading roster in one more case in mod_caps
2021-02-16 13:39:34 +01:00
Badlop
72ecf91f08
Return modules errors in set_vcard callback ( #3502 )
2021-02-16 13:09:33 +01:00
Badlop
4bc57f76eb
make hooks and options work with rebar3 too
2021-02-16 13:09:30 +01:00
Badlop
18c9f5eedf
Create annotated tags, meant for releases, instead of lightweight ( #3512 )
2021-02-16 13:09:27 +01:00
Badlop
4495f0f0b9
For OTP<22 define LAGER macro in ext_mod like in rebar.config ( #3493 )
2021-02-16 13:09:21 +01:00
Paweł Chmielowski
fad14ff319
Make fetching roster in mod_privacy lazy
2021-02-16 10:57:55 +01:00
Paweł Chmielowski
8cb7ff7a88
Add fallback branch to last commit
2021-02-16 10:40:35 +01:00
Paweł Chmielowski
96929a5084
Don't request roster in mod_caps when not needed
2021-02-16 10:13:29 +01:00
Stu Tomlinson
1f194e417d
fix eldap certificate verification ( #3528 )
...
Reported in #3527 . Add hostname matching function, and specify SNI
Also, OTP 23 dropped backwards compatibility for 0, 1, 2 values for verify, so
replace with combination of verify_none/verify_peer and fail_if_no_peer_cert
as appropriate
2021-02-15 14:29:58 +01:00
Badlop
e3fd120fd4
According to fast_tls, only atom and binary may accompany error tuple
2021-02-11 20:38:51 +01:00
Badlop
7b8bd960c6
Fix URL of CAPTCHA section
2021-02-11 20:38:45 +01:00
Paweł Chmielowski
d147c733bb
Update xmpp
2021-02-10 10:10:24 +01:00
Paweł Chmielowski
3d7fa15be7
Add argument guards to roster commands
2021-02-09 13:46:23 +01:00
Stu Tomlinson
6a0b01fe7f
Move sql directory from extra_src_dirs to src_dirs ( #3520 )
...
rebar3 needs sql directory as a src dir so that tests can reference sql
files, so sql dir was added to extra_src_dirs in d9c1befb
. It turns out
extra_src_dirs does unexpected unwanted extra things like copy all beam
files there too, so move sql dir to regular src_dirs
2021-02-08 13:02:50 +01:00
Frank
2d79a69719
Fix PONG responses ( #3515 )
...
Co-authored-by: Frank Diebolt <frank.diebolt@al-enterprise.com>
2021-02-04 19:57:20 +01:00
Badlop
a51e777c56
Try to fix coveralls report in Travis, related to commit 2f3f6f8b7
2021-02-04 11:27:47 +01:00
Badlop
1c3a7b7c96
Use the mysql service available in Travis
...
Xenial in Travis nowadays includes mysql 5.7
Reverted "Let Travis grab MySQL 5.6 from repo.mysql.com"
Reverted "Use static key for mysql repo" and related ones
2021-02-02 19:03:14 +01:00
Badlop
26ee3141a9
Improve prepare-tr so *.msg files inform to not edit them ( #3484 )
2021-02-02 18:58:36 +01:00
Badlop
75c0443df2
Test against newest 23.1.2, and remove useless intermediate 22.3
2021-02-02 18:58:32 +01:00
Marek
5eab8450e7
New listener for encrypted ejabberd_c2s
...
Add a new listener on port 5223 for the TLS-enabled ejabberd_c2s, which combined with proper SRV records allows passing the XEP-0368 compliance test.
2021-02-02 15:25:19 +01:00
Divine
22d76bd1a4
Fix specified key was too long ( #3513 )
...
* Fix specified key was too long
This adds the correct engine and sets it to utf8mb4 collate. Prevents "Specified key was too long; max key length is 1000 bytes" from happening.
* Make two import SQL files consistent
As suggested by @prefiks
2021-02-01 22:50:33 +01:00
Badlop
bb397bb424
Fix bug handling jid:decode/1 return, introduced in cdb286d1d
( #3461 )
2021-02-01 00:10:33 +01:00
Badlop
b3d9c0d1f7
Fix bug in send_message introduced in 7fc500dae
( #3485 )
2021-02-01 00:09:18 +01:00
Badlop
d3aeed839d
Fix MAM tests that now fail due to commit d6e9e0342
( #3506 )
2021-02-01 00:09:10 +01:00
Badlop
c0b364839c
Fix typo in Weblate URL
2021-02-01 00:08:22 +01:00
Holger Weiss
6a6b771e0b
mod_mam: Add missing semicolon
2021-01-29 20:27:07 +01:00
Holger Weiss
58e28e82bb
Merge remote-tracking branch 'processone/pr/3506'
...
* processone/pr/3506:
Remove queryid from MAM fin element
2021-01-29 19:25:40 +01:00
Paul Fariello
d6e9e03422
Remove queryid from MAM fin element
...
According to xep, fin element is not supposed to have a queryid attribute.
2021-01-29 19:21:45 +01:00
Jerome Sautret
fca41796c0
Fix version number
2021-01-29 16:00:35 +01:00
Jerome Sautret
b1fec7dc29
Bump version in mix.exs
2021-01-29 10:01:29 +01:00
Paweł Chmielowski
8c5b312601
Add cache for displayed groups in ldap_shared_cache
...
This is based on pull request by Ivan Agarkov:
https://github.com/processone/ejabberd/pull/952
2021-01-28 12:57:47 +01:00
Paweł Chmielowski
ee3ecc6cc0
Update mix deps
2021-01-28 11:04:53 +01:00
Paweł Chmielowski
f708bbe2e8
Update deps
2021-01-28 10:42:16 +01:00
Paweł Chmielowski
f7004f793d
Fix delete_old_message when using sqlite spool table
...
This fixes issue #3503
2021-01-27 19:41:21 +01:00
Badlop
5c3b3d22db
Other minor translation updates
2021-01-27 18:18:18 +01:00
Badlop
cfd1c710f2
Update Chinese translation (thanks to Shelley Shian)
2021-01-27 18:18:15 +01:00
Badlop
601a61249e
Update Portuguese (Brazil) translation (thanks to Wellington Terumi Uemura)
2021-01-27 18:17:56 +01:00
Badlop
8180b6b54e
Update Norwegian Bokmål translation (thanks to Allan Nordhøy)
2021-01-27 18:13:58 +01:00
Badlop
a260270483
Update Indonesian translation (thanks to Uira)
2021-01-27 18:12:26 +01:00
Badlop
9b9a2d380b
Update German translation (thanks to Maximilian Trummer)
2021-01-27 18:10:08 +01:00
Badlop
5ec8cf9e09
Document the recent oauth_cache_rest_failure_life_time option
2021-01-27 17:44:17 +01:00
Badlop
248d8b8aff
Update ejabberd man file ( #3490 )
2021-01-27 17:25:46 +01:00
Badlop
f1fe3ce5dc
Remove old and obsolete win32/ ( #3487 )
2021-01-27 17:11:00 +01:00
Badlop
5eb766e2d2
Remove old and obsolete examples/transport-configs/ ( #3487 )
2021-01-27 17:10:56 +01:00
Badlop
6e0161470e
Update newest copyright year to 2021 ( #3464 )
2021-01-27 17:02:06 +01:00
Paweł Chmielowski
e4225174d5
Update deps to tagged versions
2021-01-27 11:43:33 +01:00
Paweł Chmielowski
faaee94060
Add oauth_cache_rest_failure_life_time option
...
This allows to use shorted life time for failures in rest oauth
backend than specified in oauth_cache_life_time.
2021-01-27 11:23:39 +01:00
Paweł Chmielowski
3516d2053c
Add 'ejabberdctl foreground-quiet'
...
This starts ejabberd without detaching process but setups
console logging to display only critical messages.
2021-01-27 09:24:05 +01:00
Paweł Chmielowski
b977320091
Don't fetch subscribers list in room_unused_*
2021-01-26 11:13:23 +01:00
Paweł Chmielowski
bb87b6f948
Rename function arguments
2021-01-25 20:00:07 +01:00
Paweł Chmielowski
07d28c3898
Skip reading pep nodes that we know won't be requested due to caps
2021-01-25 19:58:38 +01:00
Holger Weiss
6c2bd91f01
ejabberd_stun: Block loopback addresses by default
...
Don't accept loopback addresses as TURN peers by default. This makes
sure the TURN service won't allow remote clients to access local UDP
services.
However, this will break the case where the 'turn_ipv4_address' was set
to 127.0.0.1 as fallback and TURN worked "by accident" if both clients
were using the same TURN service. The service then talked to itself on
the loopback interface.
2021-01-22 16:20:24 +01:00
Holger Weiss
b6f86187f3
Update 'stun' dependency
...
The 'stun' application now rejects Teredo and 6to4 TURN peers
unconditionally. Therefore, remove those networks from the default
'turn_blacklist'.
2021-01-22 16:12:48 +01:00
Badlop
8098b83114
Revert "mod_register language reworked"
...
This reverts commit 3906b5300c
.
# Conflicts:
# src/mod_register_web.erl
2021-01-22 14:23:05 +01:00
Badlop
e4155b6f16
Revert "ejabberd_oauth language reworked"
...
This reverts commit 3d1efd14dc
.
2021-01-22 14:23:02 +01:00
Badlop
50ebe2e415
Revert "mod_roster language reworked"
...
This reverts commit 72cf63c0a8
.
2021-01-22 14:22:59 +01:00
Badlop
adfcbfdcba
Fix URL of ejabberd_po, use the final one
2021-01-22 13:39:02 +01:00
Badlop
cfdd3aa4f8
Those gettext PO files are now available in the new ejabberd_po repository
2021-01-22 13:32:07 +01:00
Badlop
0b55ded612
When running "make translations" use the external ejabberd_po repository
2021-01-22 13:16:42 +01:00
Jing Sun
5af7532504
mod_muc/mod_muc_room: add option limits for password and captcha_whitelist ( #2255 )
2021-01-21 16:58:05 +01:00
Paweł Chmielowski
e0101338af
Let's update xmpp once more
2021-01-21 16:27:24 +01:00
Paweł Chmielowski
6efdbb17e4
Revert "Update xmpp"
...
This reverts commit a4b06df604
.
Needs more work, breaks some tests.
2021-01-21 15:25:10 +01:00
Paweł Chmielowski
5212b0aaa6
Validate affiliations in set_room_affiliation command
2021-01-21 14:20:30 +01:00
Paweł Chmielowski
a4b06df604
Update xmpp
...
This brings memory usage optimization for detached sessions
2021-01-21 13:44:07 +01:00
badlop
c5f0dc6e5b
Merge pull request #3488 from comradekingu/patch-3
...
mod_roster language reworked
2021-01-18 13:32:21 +01:00
Allan Nordhøy
72cf63c0a8
mod_roster language reworked
2021-01-16 09:17:44 +01:00
Badlop
bc08e75f75
Update Greek translation (thanks to rafaila42)( #3484 )
2021-01-15 19:02:40 +01:00
badlop
9b1da6f5f5
Merge pull request #3486 from comradekingu/patch-2
...
ejabberd_oauth language reworked
2021-01-15 17:52:33 +01:00
Badlop
2c06f48b6b
Update Greek translation (thanks to rafaila42)( #3484 )
2021-01-14 13:25:47 +01:00
Allan Nordhøy
3d1efd14dc
ejabberd_oauth language reworked
2021-01-14 10:21:07 +01:00
Paweł Chmielowski
7fc500dae6
Don't include empty <subject/> in messages sent by send_message
...
Please refer issue #3485
2021-01-13 20:58:13 +01:00
Badlop
b6d90cc55c
Allow non-occupant non-subscribed service admin send private MUC message ( #3474 )
2021-01-13 16:49:45 +01:00
Badlop
e1a79ba1b0
Run "make translations"
2021-01-13 16:20:58 +01:00
badlop
d01cd2976b
Merge pull request #3483 from weblate/weblate-ejabberd-ejabberd
...
Translations update from Weblate
2021-01-13 16:19:31 +01:00
Allan Nordhøy
f98453fd28
Update Norwegian Bokmål translation
...
Currently Norwegian Bokmål translated at 49.5% (326 of 658 strings)
141 fuzzy + 191 not translated = 332 remaining
https://hosted.weblate.org/projects/ejabberd/ejabberd/nb_NO/
2021-01-13 16:18:21 +01:00
uira
1b559daef2
Update Indonesian translation
...
Currently Indonesian translated at 57.1% (376 of 658 strings)
80 fuzzy + 202 not translated = 282 remaining
https://hosted.weblate.org/projects/ejabberd/ejabberd/id/
2021-01-13 16:18:21 +01:00
Allan Nordhøy
db7197925c
Update Norwegian Bokmål translation
...
Currently Norwegian Bokmål translated at 45.4% (299 of 658 strings)
129 fuzzy + 230 not translated = 359 remaining
https://hosted.weblate.org/projects/ejabberd/ejabberd/nb_NO/
2021-01-13 16:18:21 +01:00
Licaon Kter
8232fb767c
New Romanian translation
...
https://hosted.weblate.org/projects/ejabberd/ejabberd/ro/
2021-01-13 16:18:21 +01:00
Badlop
59d5cf4d47
Uniformize terms create->register, delete->unregister ( #3482 )
2021-01-13 16:12:00 +01:00
badlop
aff1a62607
Merge pull request #3482 from comradekingu/patch-1
...
mod_register language reworked
2021-01-13 15:57:29 +01:00
badlop
ea253ba914
Merge pull request #3480 from Neustradamus/git
...
Remove .git ending from links
2021-01-13 15:53:32 +01:00
Paweł Chmielowski
95c157409b
Fix handling of log_rotate_size: infinity
...
This should fix issue reported in #3462
2021-01-13 11:48:46 +01:00
Allan Nordhøy
3906b5300c
mod_register language reworked
2021-01-13 09:35:36 +01:00
Neustradamus
34f9eaa8e9
Remove .git ending from links
...
Remove .git ending from links
2021-01-13 03:22:41 +01:00
Badlop
83cea3c23e
Mention gettext and weblate to update translations
2021-01-12 18:33:27 +01:00
J. Lavoie
f96502607d
Update French translation
...
Currently French translated at 70.0% (461 of 658 strings)
72 fuzzy + 125 not translated = 197 remaining
https://hosted.weblate.org/projects/ejabberd/test-ejabberd/fr/
2021-01-12 13:15:14 +01:00
Badlop
1f492a4c8a
Update Catalan translation
2021-01-12 13:01:03 +01:00
Badlop
557b9858c6
Update translatable, and translated strings
2021-01-11 21:15:13 +01:00
Badlop
50f74c932b
Replace Jabber->XMPP and Ejabberd (thanks to Neustradamus)( #3469 )
2021-01-11 21:11:20 +01:00
Paweł Chmielowski
446cb485ac
Don't use REPLACE for upsert when there are "-" fields.
...
This should fix problem reported in #3476
2021-01-11 14:20:17 +01:00
Badlop
402b301eb5
Update Spanish translation
2021-01-11 13:14:41 +01:00
Badlop
3a371bfbe5
Run "make translations"
2021-01-11 13:11:14 +01:00
Badlop
a670451447
Apply cosmetic changes from documentation
2021-01-08 18:34:38 +01:00
Paweł Chmielowski
9be3d948b2
Make ext_mod compile module with debug_info flags
...
This should fix issue #3472
2021-01-07 15:10:39 +01:00
Paweł Chmielowski
d9588feae5
Add sql script to migrate mysql from old schema to new
2021-01-07 13:54:53 +01:00
Holger Weiss
7844d86ea3
Allow for listening on privileged ports
...
Let systemd give ejabberd the capability to bind to ports below 1024.
2021-01-06 18:56:08 +01:00
Holger Weiss
e919171393
ejabberd_systemd: Fix comment
2021-01-06 18:52:22 +01:00
Holger Weiss
d7087c3952
Merge remote-tracking branch 'processone/pr/3471'
...
* processone/pr/3471:
Integrate nicely with systemd
2021-01-06 18:47:25 +01:00
Neustradamus
3bf51a0994
+ ejabberd mucroom logs ( #3468 )
...
+ ejabberd mucroom logs
2021-01-06 17:33:29 +01:00
Holger Weiss
6f026ca26d
Integrate nicely with systemd
...
Support systemd's watchdog feature and enable it by default in the unit
file, so that ejabberd is auto-restarted if the VM becomes unresponsive.
Also, set the systemd startup type to 'notify', so that startup of
followup units is delayed until ejabberd signals readiness. While at
it, also notify systemd of configuration reload and shutdown states.
Note: "NotifyAccess=all" is required as long as "ejabberdctl foreground"
runs the VM as a new child process, rather than "exec"ing it. This way,
systemd views the ejabberdctl process itself as the main service
process, and would discard notifications from other processes by
default.
2021-01-06 00:20:12 +01:00
Neustradamus
4132aedb9c
XEP-0033 ( #3467 )
...
XEP-0033
2021-01-05 10:05:42 +01:00
Badlop
b8178c79a7
Clarify documentation of log_rotate_size option ( #3462 )
2021-01-04 13:05:28 +01:00
Paweł Chmielowski
aefe3f8585
Document ldap_userjidattr option
2020-12-31 10:30:12 +01:00
ethoms
cdb286d1d1
Add multi-domain support (and flexibility) to LDAP shared roster (rev2). ( #3461 )
2020-12-31 10:19:43 +01:00
Pouriya
c056002f7c
JWT enhancement ( #3460 )
...
* ref: run the default JWT verifier as hook callback
* ref: add system timestamp to JWT debug log
2020-12-28 10:06:45 +01:00
Stu Tomlinson
1f60f5d8af
Remove external dependency on sqlite3 for macos
...
On macos, erlang-sqlite3 is built using amalgamated sqlite3 library, there is
no external sqlite3 dependency required
2020-12-23 12:41:13 +00:00
Paweł Chmielowski
bd08f408ca
Fix invalid timezone in mod_time (issue #3454 )
2020-12-22 11:37:25 +01:00
Badlop
3cf5ceb106
Document that the workaround is only needed for OTP lower than 23.2
2020-12-18 21:21:27 +01:00
Badlop
705f401961
Fix a pair of pubsub specs to please Dialyzer
2020-12-18 20:40:26 +01:00
Badlop
ac24d6ee9f
Fix typo in case clause detected by Dialyzer
2020-12-18 20:40:17 +01:00
Paweł Chmielowski
cb6322a3a7
Add option to check for missing hex releases to update script
2020-12-18 16:43:20 +01:00
Paweł Chmielowski
9c221848d7
Correctly sort mixed versions vX.Y and X.Y in update-deps script
2020-12-18 16:42:41 +01:00
Stu Tomlinson
2f3063def6
Fix sqlite3 dependency version ( #3452 )
...
erlang-sqlite3 versions got messed up, causing ejabberd build to regress
to 1.1.6 from Jan 2018 when using rebar3 which fails to build with OTP23.
Update to correctly tagged version 1.1.9, which also has matching hex.pm
package, fixes this.
2020-12-18 12:42:18 +01:00
Paweł Chmielowski
9f851008f6
Update spec for get_room_pid
2020-12-18 12:36:31 +01:00
Badlop
1b7502acbc
Old passwd scram tuples do not conform to current records definitions
2020-12-18 10:54:59 +01:00
Paweł Chmielowski
2ab7da1e8f
Use better fallback value for room activity time when skipping room in decide_room
2020-12-17 09:55:12 +01:00
Mickaël Rémond
371c0777bb
Update Dockerfile
2020-12-16 08:40:30 +01:00
Mickaël Rémond
538eeb3d6f
Create Dockerfile
2020-12-16 08:40:05 +01:00
Mickaël Rémond
8d052fe339
Create devcontainer.json
2020-12-16 08:32:15 +01:00
Licaon_Kter
65c5208905
Reword auth_scram_hash info ( #3448 )
2020-12-15 17:47:56 +01:00
Paweł Chmielowski
778c84dac9
Update xmpp dep in mix
2020-12-15 17:07:06 +01:00