Skip to main content

Cross-product protocol buffers

Pipeline Status (protobuf)

A library of python bindings for protocol buffer definitions used by one or more products in the Matilda Peak product suite.

The protocol buffers are used across multiple components and languages. At the outset we anticipate supporting Python, and Java/Scala. The root of all packages is src/main as required by build tools like Gradle. From there the directory must be matildapeak followed by component directories or a common directory. An example protocol message file might be:

src/main/matildapeak/patterncomponent/DelayMessage.proto

Installation

The protocol buffers are published on PyPI and can be installed from there:

pip install matildapeak-prototobuf

Get in touch

  • Report bugs, suggest features or view the source code on GitLab.

Fixing the Python import

The Python protocol buffer bindings use relative imports and do not function properly (at least this is true of Python 3.6 and protobuf 3.1.0).

The issue appears to be well documented but a workaround is to adjust the system path to include the directory of the component’s site package. In a clean virtual environment this is easily achieved with the following:

import os
import sys
sys.path.append(os.path.join(sys.path[-1], 'patterncomponent'))

Rather than use [-1] a safer approach might be to locate the site-packages directory in the system path and use that - it may not be the last entry on the path.

Metadata

Release files for matildapeak-protobuf 2018.2

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

Built distribution (wheel)

Table of built distributions (wheels) for matildapeak-protobuf 2018.2
File Interpreter ABI Platform
matildapeak_protobuf-2018.2-py3-none-any.whl Python 3 none any Details

Release files / matildapeak_protobuf-2018.2-py3-none-any.whl

Download URL matildapeak_protobuf-2018.2-py3-none-any.whl
Size 5.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a577893624a8d8bdb21e661d8235a391bce1059b73bef10d21937ee4c188a9b9
BLAKE2b-256 checksum
How to use checksums
8d8a6773beb77b8a826a72ebd915bec1d684e7f93e0725b14eeaaef1423376b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

2018.2 This release

1 release file

2018.1

1 release file

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