Badlop
696e42b5b4
Use json module when Erlang/OTP 27, jiffy with older ones
2024-05-07 11:28:17 +02:00
Badlop
9fbc7b96e4
Update pkix dependency with minor fixes for compilation warnings
2024-05-07 11:28:11 +02:00
Badlop
5870e2e378
Use updated xmpp library with minor improvement in auth ( #4201 )
2024-04-30 18:00:16 +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
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
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
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
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
0f43a7f36b
Update deps
2024-02-26 17:26:30 +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
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
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
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
Paweł Chmielowski
506152d4e7
Use tagged version of dependencies
2024-01-23 13:39:21 +01:00
Badlop
589521bfd8
Update copyright year to 2024 ( #4139 )
2024-01-22 17:29:13 +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
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
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
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
Alexey Shchepin
a4bb695fc3
Support for XEP-0424 "Message Retraction"
2023-12-27 08:59:20 +03: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
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
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
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
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
36fffa5b23
Revert dialyzer changes commited by mistake
2023-10-25 20:07:02 +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
ad7db90c80
Use tagged deps
2023-10-16 15:14:31 +02:00
Paweł Chmielowski
765770aaa5
Add support for xep-0402 - PEP Native Bookmarks
2023-09-27 18:36:30 +02:00
Badlop
7522c29f25
Update xmpp version to send roomconfig_changesubject in disco info ( #4085 )
2023-09-08 18:37:38 +02:00
Badlop
07d4282603
Update XMPP library which supports XEP-0421 (3397)
2023-08-02 17:54:07 +02:00
Paweł Chmielowski
3710dc1e3b
Use prepared statement with mysql
2023-07-25 18:11:24 +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