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