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
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
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
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
937d5fe495
Document which SQL servers can really use update_sql_schema
2024-08-21 10:51:49 +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
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
Badlop
65e16dcac1
make format
2024-07-18 11:11:48 +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
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
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
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
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
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
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
54f5db851d
Don't use host from url in webadmin, prefer host used for authentication
2024-07-03 13:15:33 +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
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
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
0b6d40c9df
Log messages not only when node joins the cluster, also when leaves it
2024-06-25 17:05:41 +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
9a6bd83aa1
Remove obsolete code for Erlang/OTP older than 20.0
2024-06-25 10:51:17 +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
899b77cdf4
ejabberd_ctl: Improve parsing of commas in arguments
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
701d2ce0f6
Define kick_user command version 2, useful for the WebAdmin command usage
2024-06-19 11:56:16 +02:00
Badlop
103a30df2c
Document that XEP-0485 is available in mod_pubsub_serverinfo
2024-06-10 19:03:25 +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
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
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
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
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
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
38fd9a3ed2
Update URLs of module documentations
2024-05-10 16:04:28 +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
13ebe89fdc
Remove unused format_status/2 callback that is deprecated in OTP 27
2024-04-30 18:00:32 +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
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
5c6a399f5b
Update links to some moved content in docs.ejabberd.im
2024-04-25 02:55:02 +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
45ca11ecd0
Improve markdown of generated documentation
2024-04-24 13:20:44 +02:00