Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

EcKit

Latest Tag CI CI

codecov License REUSE status Project Maturity

Overview

EcKit is a cross-platform C++ toolkit that supports development of tools and applications at ECMWF. It is based on code developed over the last 20 years within the MARS software and was re-factored out to be reused by other applications. It provides an abstraction layer on top of the operating system, so it is easier to port code to new architectures. It is developed taking into account the robustness requirements of running production systems at ECMWF. The main focus is UNIX/POSIX systems, and it has been thoroughly tested on Linux and Mac OSX. Historically, the code base pre-dates and in some way can be seen as a leaner substitute for some 'Boost' libraries.

Features

It features facilities to easily handle, in a cross-platform way:

  • multi-threading
  • json and yaml parsing
  • object serialization and persistence
  • object serialization supporting compression, to and from file and network
  • configuration of user options and resources
  • file-system abstraction
  • regular expressions
  • socket networking
  • http protocol
  • type-to-type conversions
  • asynchronous IO
  • asynchronous processing
  • exception handling and stack dumping
  • MPI object-oriented wrapper
  • linear algebra abstraction with multiple backends (BLAS, MKL, Eigen3)
  • advanced container classes
  • space partition trees
  • file-mapped arrays

Requirements

Make sure ecbuild is installed and the ecbuild executable script is found (which ecbuild).

Now proceed with installation as follows:

# Environment --- Edit as needed
srcdir=$(pwd)
builddir=build
installdir=$HOME/.local

# 1. Create the build directory:
mkdir $builddir
cd $builddir

# 2. Run CMake
ecbuild --prefix=$installdir -- $srcdir

# 3. Compile / Install
make -j10
make install

# 4. Check installation
$installdir/bin/eckit-version

Metadata

Release files for eckitlib 2.3.1.dev12

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for eckitlib 2.3.1.dev12
File
eckitlib-2.3.1.dev12-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
eckitlib-2.3.1.dev12-cp314-cp314-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64 Details
eckitlib-2.3.1.dev12-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
eckitlib-2.3.1.dev12-cp314-cp314-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 macOS 15.0+ ARM64 Details
eckitlib-2.3.1.dev12-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
eckitlib-2.3.1.dev12-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
eckitlib-2.3.1.dev12-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
eckitlib-2.3.1.dev12-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
eckitlib-2.3.1.dev12-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
eckitlib-2.3.1.dev12-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
eckitlib-2.3.1.dev12-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
eckitlib-2.3.1.dev12-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
eckitlib-2.3.1.dev12-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
eckitlib-2.3.1.dev12-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
eckitlib-2.3.1.dev12-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
eckitlib-2.3.1.dev12-cp311-cp311-macosx_15_0_arm64.whl CPython 3.11 CPython 3.11 macOS 15.0+ ARM64 Details

Total release size: 343.9 MB

Release files / eckitlib-2.3.1.dev12-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp314-cp314-manylinux_2_28_x86_64.whl
Size 37.8 MB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f560a148d0958a07741642911295370b99fcbbb14d8f753f81cf4732a1e80aa9
BLAKE2b-256 checksum
How to use checksums
61a8e9cbd07b6b91ff5cc4d9ef8ef3a6e4adbf407247b9a139eff3ff4c9e1aa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / eckitlib-2.3.1.dev12-cp314-cp314-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.3.1.dev12-cp314-cp314-manylinux_2_28_aarch64.whl
Size 35.0 MB
Tags CPython 3.14 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
a16b8d7a3f905f2c9c9d5b8a2496552ebc11333203df06e0462774bc956be664
BLAKE2b-256 checksum
How to use checksums
c9175c50eb259b75fd8bd56b16a2890231b018b2564fe10488090ed29e2e1f39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.0

Release files / eckitlib-2.3.1.dev12-cp314-cp314-macosx_15_0_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp314-cp314-macosx_15_0_x86_64.whl
Size 6.6 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
34da88fb296d827a3e43b9c692a894762cea9e28814b829d75f9b9b029168f9a
BLAKE2b-256 checksum
How to use checksums
ba03c4fd12d8713029a5b2f745d9b933e2153560e1c6a13e2239c4d80e427ff5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.14.0b3

Release files / eckitlib-2.3.1.dev12-cp314-cp314-macosx_15_0_arm64.whl

Download URL eckitlib-2.3.1.dev12-cp314-cp314-macosx_15_0_arm64.whl
Size 6.5 MB
Tags CPython 3.14 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
d45d782e28e7618a763f345bc04c955527e04d62bd0a6ae23c4a12f041c5bc88
BLAKE2b-256 checksum
How to use checksums
aa5845c75cca2e2319d9fd8ca325c936bc4420ad045a9fdf62f89232eaa7256e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.14.7

Release files / eckitlib-2.3.1.dev12-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp313-cp313-manylinux_2_28_x86_64.whl
Size 37.8 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8d1f5365913950e462404c1d2ff2314d320aa7f7e9427058f3f8b147eb78ef00
BLAKE2b-256 checksum
How to use checksums
e50b4eb04446e56be62b850aeed27f8e8c9de2a10274c0ede9fb940ddd194cb2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / eckitlib-2.3.1.dev12-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.3.1.dev12-cp313-cp313-manylinux_2_28_aarch64.whl
Size 35.0 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
c9b94aee1f8f4494eae86b83dc060833652a7b76fb4c82fafd1689161a04ed42
BLAKE2b-256 checksum
How to use checksums
9f1f866153a8e815d179a13e437a9a89a6b01bb6a6a4acd56833fd913974ded7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.9

Release files / eckitlib-2.3.1.dev12-cp313-cp313-macosx_15_0_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp313-cp313-macosx_15_0_x86_64.whl
Size 6.7 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
08440179f8befe51388eceb8a71fdc928f7852ced9e7678266d091d1f5c15d6e
BLAKE2b-256 checksum
How to use checksums
207295a20c02ab7d71a999825b40f20462686e138e41bf8ac896ac870edea96e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.2

Release files / eckitlib-2.3.1.dev12-cp313-cp313-macosx_15_0_arm64.whl

Download URL eckitlib-2.3.1.dev12-cp313-cp313-macosx_15_0_arm64.whl
Size 6.5 MB
Tags CPython 3.13 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
e99159a12f2139c704d351222d6673af024275ab557fd497576abb90d224b0b0
BLAKE2b-256 checksum
How to use checksums
cb4e108f7b11830fc569198ba46a972ab2007ef7121b8cf2466c8ff3ce55359a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.15

Release files / eckitlib-2.3.1.dev12-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp312-cp312-manylinux_2_28_x86_64.whl
Size 37.8 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
839578da4482c72012c66be4960d69ef58fcefcfc99b8fb3bdb8005c5cbcf5b3
BLAKE2b-256 checksum
How to use checksums
886f37c9fa63081cdbe510e9a87b6f1aa54e9eefd0508af8e974b7c268e116a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.12

Release files / eckitlib-2.3.1.dev12-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.3.1.dev12-cp312-cp312-manylinux_2_28_aarch64.whl
Size 35.0 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
dde7d79596428029789344733c92c367c1ff28703e2c1d7f64e62b0baf8fdecd
BLAKE2b-256 checksum
How to use checksums
ad20a27d6155e1259558f8702821360e20ed0561fe646d21582b3aa2d1b92971
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.12

Release files / eckitlib-2.3.1.dev12-cp312-cp312-macosx_15_0_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp312-cp312-macosx_15_0_x86_64.whl
Size 6.7 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
77e342fd34056a7e718c31bf5061e84e72af345b0b7a26c7e7cb6740d93f3b9e
BLAKE2b-256 checksum
How to use checksums
2a56515499f3ec7ec50c2544eb18222f0e88abc57b59e0b947bd766ce2ee8c00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.9

Release files / eckitlib-2.3.1.dev12-cp312-cp312-macosx_15_0_arm64.whl

Download URL eckitlib-2.3.1.dev12-cp312-cp312-macosx_15_0_arm64.whl
Size 6.5 MB
Tags CPython 3.12 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
80aebdb128c16794a5467544bd4cc2a7c6f9bc5bcd1d61260489e5f907b70e67
BLAKE2b-256 checksum
How to use checksums
0ecc5233c8451073c5615340a880eed8559b1e57a399014fe7aefcd022f9c1a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.7

Release files / eckitlib-2.3.1.dev12-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp311-cp311-manylinux_2_28_x86_64.whl
Size 37.8 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6ce5cb8c44641781df391cc1655009ee7214445349388005feefb67385a16d48
BLAKE2b-256 checksum
How to use checksums
2956dded200ca760a4dd9a53bde7afb67387ddb9c2b48fb570882f2d238a5e56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.14

Release files / eckitlib-2.3.1.dev12-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL eckitlib-2.3.1.dev12-cp311-cp311-manylinux_2_28_aarch64.whl
Size 35.0 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
6f7f6c3133ee4f9de9ac44805d02727fc360df66b7aca534682fc21b7378ca8c
BLAKE2b-256 checksum
How to use checksums
44e4cd4c3577665dd48b1cb27301bb6da4e41bbd7b1a05776e96b2327c4b4085
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.14

Release files / eckitlib-2.3.1.dev12-cp311-cp311-macosx_15_0_x86_64.whl

Download URL eckitlib-2.3.1.dev12-cp311-cp311-macosx_15_0_x86_64.whl
Size 6.6 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
6b27e1f722b314514473c26938cd61b162cc18bb106c40b8edead09ad4d965b3
BLAKE2b-256 checksum
How to use checksums
0c6e16ca0d79431e425434549cad010c76b69f4395d3f410a818cd25bba2cda4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.11

Release files / eckitlib-2.3.1.dev12-cp311-cp311-macosx_15_0_arm64.whl

Download URL eckitlib-2.3.1.dev12-cp311-cp311-macosx_15_0_arm64.whl
Size 6.5 MB
Tags CPython 3.11 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
603b4c8e41844911b10ac23aef02e850def2d32a18fdac0f8d1c9402b99ccb36
BLAKE2b-256 checksum
How to use checksums
172e627c92be0b753ce7d97d5c30bd72208a50532fc80fb6352d1c978f0024ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.11.16
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page