Badlop
6b3333c3ff
Runtime: Test with new Elixir 1.19
2025-10-23 20:50:53 +02:00
Badlop
ae36405466
CI and Runtime: Reorganize steps to run in parallel, and ARM runner
2025-10-09 13:54:10 +02:00
Badlop
b759acdcea
Runtime: Remove Erlang 24 which won't work anymore with maybe_expr
2025-09-22 16:04:42 +02:00
dependabot[bot]
dd5bbda2dc
build(deps): bump actions/checkout from 4 to 5
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 4 to 5.
- [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/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-21 16:24:44 +02:00
Badlop
7647b77225
Runtime: Raise the minimum Erlang tested to Erlang/OTP 24
...
The Erlang containers from versions 20-23 use Debian Buster,
and require the debian repositories to install some development libraries.
The Debian Buster repositories are no longer available,
which means that we can no longer perform any test with Erlang 20-23.
2025-07-25 11:15:34 +02:00
Badlop
b4a917db09
Runtime: Fix step name
2025-05-30 17:17:32 +02:00
Badlop
c10e6ded78
Runtime: Use --with-min-erlang to bypass Erlang 25 soft requirement
2025-05-28 17:36:39 +02:00
Badlop
9bc991cb7d
CI and Runtime: Add Erlang/OTP 28 to the versions matrix
2025-05-28 17:36:39 +02:00
Badlop
ffa7c32d80
Rebar/Rebar3: Update binaries to work with Erlang/OTP 25-28 ( #4354 )
...
They are compiled from their git repositories, main branches,
using erlang:25-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
To compile ejabberd using rebar/rebar3 and Erlang 24.0 up to 24.3,
you can download the old binaries from ejabberd 24.12, available at:
https://github.com/processone/ejabberd/raw/24.12/rebar
https://github.com/processone/ejabberd/raw/24.12/rebar3
2025-05-28 17:36:07 +02:00
Badlop
bf3f904fe9
Runtime: Don't test rebar2 + OTP 28 because "make rel" fails
...
When running "make rel":
./rebar generate
==> rel (generate)
ERROR: generate failed while processing /__w/ejabberd/ejabberd/rel:
{'EXIT',{{badmatch,{error,"Application et is used in release \"ejabberd\" and cannot be excluded"}},
[{rebar_reltool,generate,2,
[{file,"src/rebar_reltool.erl"},{line,53}]},
{rebar_core,run_modules,4,[{file,"src/rebar_core.erl"},{line,493}]},
{rebar_core,execute,6,[{file,"src/rebar_core.erl"},{line,418}]},
{rebar_core,maybe_execute,8,
[{file,"src/rebar_core.erl"},{line,302}]},
{rebar_core,process_dir1,7,[{file,"src/rebar_core.erl"},{line,261}]},
{rebar_core,process_each,5,[{file,"src/rebar_core.erl"},{line,351}]},
{rebar_core,process_dir1,7,[{file,"src/rebar_core.erl"},{line,253}]},
{rebar_core,process_commands,2,
[{file,"src/rebar_core.erl"},{line,93}]}]}}
make: *** [Makefile:570: prod] Error 1
2025-05-13 12:37:14 +02:00
Badlop
05b0037462
Raise the minimum Elixir tested version to 1.14.0 ( #4281 )
...
Cannot test with Elixir 1.13.4 because its container image includes
Erlang/OTP 24.3 that ejabberd does not support anymore.
2025-04-22 12:27:10 +02:00
Badlop
54796f888e
Raise Erlang/OTP minimum requirement to 25.0 ( #4281 )
2025-04-22 12:27:10 +02:00
Badlop
67aaf93157
Runtime: Pull images from ECR instead of Docker Hub
...
Pull images from Amazon ECR (Elastic Container Registry) Public Gallery
instead of Docker Hub to reduce consumption of the pull limits
https://www.docker.com/blog/revisiting-docker-hub-policies-prioritizing-developer-experience/
2025-04-01 13:42:22 +02:00
Holger Weiss
aa8957f137
make-binaries: Bump dependency versions
2025-01-02 18:24:30 +01:00
Badlop
3ae636b454
Redis: Use eredis 1.7.1 from Nordix when using mix/rebar3 and Erlang 21+
2024-12-05 13:01:37 +01:00
Badlop
06e3f9f0a4
Runtime: Disable edoc when using old problematic Elixir versions
2024-12-05 13:01:35 +01:00
Badlop
cc5c9f6008
Fix problems introduced in two recent commits
2024-11-25 17:23:28 +01:00
Badlop
715b5b64c6
Runtime: Test Dialyzer in Rebars jobs ( #4281 )
...
The CI workflow uses ubuntu-24.04 and setup-beam action,
so it can test only Erlang/OTP 24 and higher.
To ensure Dialyzer is also ran with older Erlang versions,
let's add Dialyzer testing to the Runtime workflow,
which uses the erlang container, and that allows
to run Erlang/OTP 20 in ubuntu-24.04.
2024-11-14 13:58:14 +01:00
Badlop
c20ed8c7b3
Runtime: Try using elixir container for Rebar3+Elixir and Mix jobs ( #4281 )
2024-11-14 13:58:11 +01:00
Badlop
d3baacd78e
Workflows: Bump ubuntu from 22.04 to 24.04 when possible ( #4281 )
2024-11-14 13:58:07 +01:00
Badlop
795498fa45
Runtime: Cache hex.pm archive from rebar3 and mix
2024-08-26 15:50:25 +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
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
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
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
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
dbf0fb8e86
Runtime: Run Dialyzer in Mix jobs
2024-04-01 14:26:55 +02:00
Badlop
bb349d6085
Update "make edoc" to use ExDoc
2024-02-26 16:16:14 +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
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
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
b4b85e569e
Runtime: Clean Rebar tests and add Rebar2 to them
2024-01-17 14:44:09 +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
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
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
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