Skip to content

Commit dff7bc7

Browse files
authored
Merge pull request #284 from boegel/eb5beta1
add page on beta releases & release candidates for EasyBuild v5.0
2 parents 0b7d7cd + 88d61ee commit dff7bc7

File tree

2 files changed

+95
-0
lines changed

2 files changed

+95
-0
lines changed

docs/easybuild-v5/index.md

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# EasyBuild v5.0
22

3+
4+
- [Beta releases and release candidates](release-candidates.md)
35
- [Overview of changes](overview-of-changes.md)
46
- [Backwards-incompatible changes](backwards-incompatible-changes.md)
57
- [Changes in default configuration](changes-in-default-configuration.md)
+93
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# Beta releases and release candidates for EasyBuild v5.0
2+
3+
Due to the large amount of changes in the upcoming EasyBuild v5.0 release,
4+
we will tag a couple of beta releases and release candidates before releasing EasyBuild v5.0.0.
5+
6+
**Please consider testing these and providing feedback!**
7+
8+
## Beta release `5.0.0beta1` (24 Dec 2024)
9+
10+
!!! warning
11+
This is an early pre-release that includes the majority of changes that will be included
12+
in EasyBuild v5.0.0.
13+
14+
It can be used for testing and providing feedback (reporting bugs or unexpected behaviour, etc.).
15+
16+
Additional changes can still be made before the release of EasyBuild v5.0.0, [see below][beta1_planned_changes].
17+
18+
### Highlighted changes
19+
20+
EasyBuild v5.0.0 will include some significant changes compared to EasyBuild v4.x.
21+
22+
Some of those changes are internal improvements and will be invisible to most users, but many others may need special attention
23+
as they incorporate new features, changes of behavior or deprecations that can impact your workflow.
24+
25+
This includes (but is not limited to):
26+
27+
- **Python >= 3.6** is required to run EasyBuild (Python >= 3.9 is recommended);
28+
- using **Lmod >= v8.0** or **Environment Modules v4.3.0** is required as modules tool (check with `module --version`);
29+
- a new function named `run_shell_cmd` is used to run shell commands like `cmake`, `make`, `pip`, etc. (more info [here](run_shell_cmd.md));
30+
- the **default setting of some configuration options has changed**:
31+
- **RPATH linking** is used by default (can be disabled with `--disable-rpath`);
32+
- **trace output** is enabled by default (can be disabled with `--disable-trace`);
33+
- Lua module files generated by EasyBuild will by default:
34+
- use `depends_on` rather than `load` (can be disabled with `--disable-module-depends-on`);
35+
- include an `extensions` statement to expose the list of included extensions (can be disabled with `--disable-module-extensions`);
36+
- reproducible creation of source tarballs from Git repositories via `git_config` in `sources` easyconfig parameter (when using Python >= 3.9);
37+
- the `use_pip` and `sanity_pip_check` custom easyconfig parameters used by the `PythonPackage` and `PythonBundle` easyblocks are enabled by default;
38+
- **some functionality has been deprecated**, including the use of the `run_cmd` and `run_cmd_qa` functions (`run_shell_cmd` should be used instead);
39+
- easyconfigs using an old [unsupported toolchain](../policies/toolchains.md) have been moved to the [easyconfigs archive](https://github.com/easybuilders/easybuild-easyconfigs-archive);
40+
41+
### Installation
42+
43+
To install the initial beta release of EasyBuild v5.0.0 (`5.0.0beta1`), you can either:
44+
45+
- use the [provided easyconfig file](https://github.com/easybuilders/easybuild-easyconfigs/pull/22049);
46+
- install into a Python virtual environment:
47+
48+
```shell
49+
venv_name='venv-eb-5.0.0beta1'
50+
python3 -m venv ${venv_name}
51+
unset PYTHONPATH
52+
source ${venv_name}/bin/activate
53+
54+
tag='5.0.0beta1'
55+
pip install https://github.com/easybuilders/easybuild-framework/archive/easybuild-framework-v${tag}.tar.gz
56+
pip install https://github.com/easybuilders/easybuild-easyblocks/archive/easybuild-easyblocks-v${tag}.tar.gz
57+
pip install https://github.com/easybuilders/easybuild-easyconfigs/archive/easybuild-easyconfigs-v${tag}.tar.gz
58+
# optional dependencies for EasyBuild
59+
pip install archspec rich
60+
```
61+
62+
### Planned additional changes {: #beta1_planned_changes }
63+
64+
A couple of additional changes that will be included in EasyBuild v5.0.0 are still a work-in-progress,
65+
including (but not limited to):
66+
67+
- deprecating of `module_req_guess` method (see [framework PR #4653](https://github.com/easybuilders/easybuild-framework/pull/4653));
68+
- deprecating of `parallel` easyconfig parameter (see [framework PR #4580](https://github.com/easybuilders/easybuild-framework/pull/4580));
69+
70+
For a complete overview of planned changed, see the [GitHub dashboard for EasyBuild v5.0](https://github.com/orgs/easybuilders/projects/18/views/2).
71+
72+
### Providing feedback & reporting problems
73+
74+
Please test this release, provide feedback, and report problems, either via:
75+
76+
- the `#eb5` channel in the EasyBuild Slack;
77+
- the EasyBuild maling list;
78+
- one of the upcoming [EasyBuild conf calls](https://github.com/easybuilders/easybuild/wiki/Conference-calls);
79+
- the [dedicated issue in the `easybuild` repository](https://github.com/easybuilders/easybuild/issues/911);
80+
81+
You should include:
82+
83+
- the output produced by `eb --version`, `eb --show-config`, and `eb --show-system-info`;
84+
- an overview of what you tried;
85+
- whether it worked or not;
86+
- which problems you ran into (if any);
87+
88+
Also positive feedback is welcome!
89+
90+
### FAQ
91+
92+
- *Do I need to reinstall all software that was installed with EasyBuild v4.x when I want to start using EasyBuild v5.x?*
93+
No, you do not. You can install additional software using EasyBuild v5.x on top of installations performed with EasyBuild v4.x.

0 commit comments

Comments
 (0)