Skip to content

Commit be64293

Browse files
committed
[Build] Deprecate builtin_zeromq and builtin_cppzmq build options
The `builtin_zeromq` and `builtin_cppzmq` build options are deprecated and will be removed in ROOT 6.42. The ZeroMQ library and its Python bindings are used by the experimental RooFit multiprocessing package, and the ZeroMQ versions it requires (>=4.3.5) are now readily available in the package managers (Conda, Homebrew, and newer Linux distributions).
1 parent 319a37e commit be64293

11 files changed

Lines changed: 11 additions & 19 deletions

File tree

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
CMAKE_CXX_STANDARD=23
2-
builtin_cppzmq=OFF
3-
builtin_zeromq=OFF
42
builtin_zlib=ON
53
builtin_zstd=ON
64
experimental_adaptivecpp=ON
75
pythia8=ON
6+
roofit_multiprocess=ON
87
test_distrdf_dask=OFF
98
test_distrdf_pyspark=OFF
109
vdt=OFF
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
CMAKE_CXX_STANDARD=23
2-
builtin_cppzmq=OFF
3-
builtin_zeromq=OFF
42
builtin_zlib=ON
53
builtin_zstd=ON
64
experimental_adaptivecpp=ON
75
pythia8=ON
6+
roofit_multiprocess=ON
87
test_distrdf_pyspark=OFF
98
vdt=OFF

.github/workflows/root-ci-config/buildconfig/global.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ asserts=OFF
66
builtin_cfitsio=OFF
77
builtin_clang=ON
88
builtin_cling=ON
9-
builtin_cppzmq=ON
9+
builtin_cppzmq=OFF
1010
builtin_fftw3=OFF
1111
builtin_freetype=OFF
1212
builtin_ftgl=OFF
@@ -24,7 +24,7 @@ builtin_unuran=OFF
2424
builtin_vdt=OFF
2525
builtin_xrootd=OFF
2626
builtin_xxhash=OFF
27-
builtin_zeromq=ON
27+
builtin_zeromq=OFF
2828
builtin_zlib=OFF
2929
builtin_zstd=OFF
3030
ccache=ON
@@ -67,7 +67,7 @@ pythia8=OFF
6767
qt6web=OFF
6868
r=ON
6969
roofit=ON
70-
roofit_multiprocess=ON
70+
roofit_multiprocess=OFF
7171
root7=ON
7272
rootbench=OFF
7373
roottest=ON

.github/workflows/root-ci-config/buildconfig/mac-beta.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
CMAKE_CXX_STANDARD=23
22
builtin_cfitsio=ON
3-
builtin_cppzmq=ON
43
builtin_fftw3=ON
54
builtin_freetype=ON
65
builtin_ftgl=ON
@@ -17,7 +16,6 @@ builtin_unuran=ON
1716
builtin_vdt=ON
1817
builtin_xrootd=ON
1918
builtin_xxhash=ON
20-
builtin_zeromq=ON
2119
builtin_zstd=ON
2220
check_connection=ON
2321
cocoa=ON

.github/workflows/root-ci-config/buildconfig/mac14.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
ROOT_CTEST_CUSTOM_FLAGS="-E ^tutorial-"
22
asimage_tiff=OFF
33
builtin_cfitsio=ON
4-
builtin_cppzmq=ON
54
builtin_fftw3=ON
65
builtin_freetype=ON
76
builtin_ftgl=ON
@@ -20,7 +19,6 @@ builtin_unuran=ON
2019
builtin_vdt=ON
2120
builtin_xrootd=ON
2221
builtin_xxhash=ON
23-
builtin_zeromq=ON
2422
builtin_zstd=ON
2523
cocoa=ON
2624
davix=OFF

.github/workflows/root-ci-config/buildconfig/mac15.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
builtin_cfitsio=ON
2-
builtin_cppzmq=ON
32
builtin_fftw3=ON
43
builtin_freetype=ON
54
builtin_ftgl=ON
@@ -16,7 +15,6 @@ builtin_unuran=ON
1615
builtin_vdt=ON
1716
builtin_xrootd=ON
1817
builtin_xxhash=ON
19-
builtin_zeromq=ON
2018
builtin_zstd=ON
2119
cocoa=ON
2220
davix=OFF

.github/workflows/root-ci-config/buildconfig/mac26.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
CMAKE_CXX_STANDARD=23
22
builtin_cfitsio=ON
3-
builtin_cppzmq=ON
43
builtin_fftw3=ON
54
builtin_freetype=ON
65
builtin_ftgl=ON
@@ -17,7 +16,6 @@ builtin_unuran=ON
1716
builtin_vdt=ON
1817
builtin_xrootd=ON
1918
builtin_xxhash=ON
20-
builtin_zeromq=ON
2119
builtin_zstd=ON
2220
check_connection=ON
2321
cocoa=ON
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
builtin_cppzmq=OFF
2-
builtin_zeromq=OFF
31
builtin_zlib=ON
42
builtin_zstd=ON
53
pythia8=ON
64
test_distrdf_dask=OFF
75
test_distrdf_pyspark=OFF
86
tmva-sofie=OFF
97
vdt=OFF
8+
roofit_multiprocess=ON

.github/workflows/root-ci-config/buildconfig/windows10.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ minuit2_omp=OFF
2525
pyroot2=OFF
2626
pyroot3=ON
2727
r=OFF
28-
roofit_multiprocess=OFF
2928
runtime_cxxmodules=OFF
3029
ssl=OFF
3130
test_distrdf_dask=OFF

README/ReleaseNotes/v640/index.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ The following people have contributed to this new version:
4343
never had any effect on ROOT. The associated bit TDirectory::fgAddDirectory was deprecated as well. Although users can set and read the bit, its usage should be
4444
stopped completely to avoid any confusion. The bit and functions will be removed in ROOT 7.
4545
* The method `RooRealVar::removeRange()` and the corresponding method in `RooErrorVar` have been deprecated because the name was misleading, and they will be removed in ROOT 6.42. Despite the name, the function did not actually remove a range, but only cleared its limits by setting them to `−inf,+inf` leaving the named range itself defined (so `hasRange()` would still return `true`). Users should now explicitly call `removeMin()` and `removeMax()` to remove the lower and upper limits of a range.
46+
* The `builtin_zeromq` and `builtin_cppzmq` build options are deprecated and will be removed in ROOT 6.42.
47+
The ZeroMQ library and its C++ bindings are used by the experimental RooFit multiprocessing package, enabled by the `roofit_multiprocess` build option.
48+
The ZeroMQ versions it requires (>=4.3.6 or 4.3.5 with the draft API) are now available in the package managers of several platforms, for example Conda, Homebrew, Fedora and the Extra Packages for Enterprise Linux (EPEL).
49+
The `roofit_multiprocess` feature is only required by a small set of RooFit power uses, who are using one of these environments and therefore don't require the builtin ZeroMQ library.
4650

4751
## Removals
4852

0 commit comments

Comments
 (0)