Badlop
4431fbbe5a
Include only observer; runtime_tools is automatically added
2024-02-21 16:46:37 +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
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
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
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
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
4daeb41f0e
Elixir: Fix compiling ejabberd as a dependency (4128)
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
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
3300f8bafb
Update fast_tls in mix
2023-11-20 15:39:07 +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
aa369de280
Fix xmpp dep in mix
2023-10-18 16:17:11 +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
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
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
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
Paweł Chmielowski
46f33e5051
Update dependencies
2023-04-18 11:22:33 +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
d43ce53f9a
Update xmpp version in mix following commit 6da1bb5b2
2023-03-30 16:54:35 +02:00
Paweł Chmielowski
c84cdb6bfb
Update mix dependences
2023-01-17 11:24:28 +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
Paweł Chmielowski
c4d834b879
Update deps
2022-10-12 12:44:36 +02:00
Paweł Chmielowski
09b33e17a6
Update mysql
2022-09-22 11:09:12 +02:00
Linus Jahn
e22d496610
Update xmpp module
2022-09-16 12:29:29 +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
Badlop
1ea53bf940
Add syntax_tools to applications, required when using ejabberd_sql_pt ( #3869 )
2022-07-27 15:16:52 +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
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
45c7fbb5ae
Switch "make rel" and "make dev" to paths: conf, database, logs
2022-05-02 13:17:53 +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
Paweł Chmielowski
5744d44e68
Fix compatibility with older mix versions
2022-04-08 18:26:07 +02: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
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
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
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
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
Paweł Chmielowski
2dc153751d
Put esip in mix included_applications only when it's enabled
2022-02-18 21:48:26 +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
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
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
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
Paweł Chmielowski
8d8a3177e1
Eliminate xref warning from last commit
2021-12-06 15:46:52 +01:00
Paweł Chmielowski
ad3c91b86e
Update mix deps
2021-11-29 15:36:57 +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
Alexey Shchepin
5d48329a3f
Update 'xmpp' dependency
2021-10-29 05:48:03 +03:00
Holger Weiss
6b0fa44386
Update 'xmpp' dependency
...
Fixes #3529 .
2021-10-09 10:56:30 +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
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
Badlop
cf72c5ee18
Remove leading zeros in ejabberd version number to satisfy Elixir SemVer
2021-07-21 21:29:04 +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
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
Paweł Chmielowski
2458f55837
Update stringprep in mix
2021-06-18 11:45:18 +02:00
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
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
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
Jérôme Sautret
4468c87115
Set version to 21.04
2021-04-07 17:23:30 +02:00