Skip to main content

python module wrapper for the data analytics software framework DASF

Project description


DASF: Messaging Python is part of the Data Analytics Software Framework (DASF,, developed at the GFZ German Research Centre for Geosciences ( It is funded by the Initiative and Networking Fund of the Helmholtz Association through the Digital Earth project (

DASF: Messaging Python is a RCP (remote procedure call) wrapper library for the python programming language. As part of the data analytics software framework DASF, it implements the DASF RCP messaging protocol. This message broker based RCP implementation supports the integration of algorithms and methods implemented in python in a distributed environment. It utilizes pydantic ( for data and model validation using python type annotations. Currently the implementation relies on Apache Pulsar ( as a central message broker instance.

Howto use it


Service Desk

For everyone without a Geomar Gitlab account, we setup the Service Desk feature for this repository. It lets you communicate with the developers via a repository specific eMail address. Each request will be tracked via the Gitlab issuse tracker.
In order to send a follow-up message, simply reply to the corresponding notification eMail.



We are working on a more detailed contributing guide, but here is the short version:

When you want to contribute to the code, please do clone the source code repository and install it with the [dev] extra, i.e.

git clone
cd dasf-messaging-python
pip install -e .[dev]

We use automated formatters (see their config in pyproject.toml and setup.cfg), namely

  • Black for standardized code formatting
  • blackdoc for standardized code formatting in documentation
  • Flake8 for general code quality
  • isort for standardized order in imports.
  • mypy for static type checking on type hints

We highly recommend that you setup pre-commit hooks to automatically run all the above tools every time you make a git commit. This can be done by running

pre-commit install

from the root of the repository. You can skip the pre-commit checks with git commit --no-verify but note that the CI will fail if it encounters any formatting errors.

You can also run the pre-commit step manually by invoking

pre-commit run --all-files

Running the test suite

Tests can be run via tox. Install tox via pip install tox and simply run


from the root of the repository.

Recommended Software Citation

Eggert, Daniel; Sommer, Philipp; Dransch, Doris (2021): DASF: Messaging Python: A python RCP wrapper for the data analytics software framework. GFZ Data Services.


Copyright 2021 Helmholtz Centre Potsdam GFZ German Research Centre for Geosciences, Potsdam, Germany / DASF Data Analytics Software Framework

Licensed under the Apache License, Version 2.0 (the "License");
you may not use these files except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.


Dr.-Ing. Daniel Eggert

Helmholtz Centre Potsdam GFZ German Research Centre for Geoscienes
Section 1.4 Remote Sensing & Geoinformatics
14473 Potsdam

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

demessaging-0.2.2.tar.gz (49.7 kB view hashes)

Uploaded Source

Built Distribution

demessaging-0.2.2-py3-none-any.whl (40.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page