Install & Compatibility
Where this runs
tested against v1.8.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.920 runs
installs and imports cleanly · install 0.0s · import 0.018s · 20MB
glibcpy 3.10–3.920 runs
installs and imports cleanly · install 1.9s · import 0.032s · 21MB
18MB installed
● package 18MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
MemoryBuffer
✓ from firebird.base.buffer import MemoryBuffer
get_logger
✓ from firebird.base.logging import get_logger
✗ from firebird.base.logging import Logger
The firebird.base.logging module was completely reworked in v2.0.0. Use get_logger() instead of directly importing Logger or LogManager for basic logging.
Config
✓ from firebird.base.config import Config
Demonstrates basic usage of MemoryBuffer, a core utility for managing binary data, including the `get_raw` method introduced in v2.0.0.
from firebird.base.buffer import MemoryBuffer
import io
# Create a MemoryBuffer with an initial capacity of 1KB
buffer = MemoryBuffer(1024)
# Write some bytes to the buffer
test_data = b"This is a test string to be written into the buffer."
buffer.write(test_data)
# Move the cursor to the beginning to read
buffer.seek(0, io.SEEK_SET)
# Read all data from the buffer
read_data = buffer.read()
# Get the raw underlying buffer content (new in v2.0.0)
raw_content = buffer.get_raw()
print(f"Original data: {test_data}")
print(f"Read data: {read_data}")
print(f"Raw buffer content (up to written length): {raw_content[:len(test_data)]}")
# Verify data
assert read_data == test_data
assert raw_content[:len(test_data)] == test_data
print("Buffer operations successful!")
Errors
Common errors & fixes
TypeError: __signature__ must be an instance of inspect.Signature
An issue with signature matching in the `eventsocket` module was present in earlier versions.
fixUpgrade `firebird-base` to version 2.0.1 or newer to resolve the signature mismatch.
AttributeError: 'MemoryBuffer' object has no attribute 'get_raw'
The `get_raw` method was added to `MemoryBuffer` (and related buffer factories) in version 2.0.0.
fixUpgrade `firebird-base` to version 2.0.0 or newer to use the `get_raw` method.
ModuleNotFoundError: No module named 'firebird.base.logging.config'
The `firebird.base.logging` module was entirely rewritten in v2.0.0, changing its internal structure and API, including the removal of previous configuration modules.
fixAdapt your logging code to the new API introduced in `firebird-base` v2.0.0. For basic usage, refer to `firebird.base.logging.get_logger()`.
distutils.errors.DistutilsPlatformError: Python 3.10.x is not supported by Firebird Base Modules 2.0.0 and above.
Attempting to install or run `firebird-base` v2.0.0+ on a Python version older than 3.11.
fixUpgrade your Python environment to 3.11 or newer, or specify an older compatible version of `firebird-base` (e.g., `pip install 'firebird-base<2.0.0'`).
Upgrade
Version history
2.0.3latest on PyPI · released Apr 17, 2026
Audit
Dependencies
protobufrequiredUsed for configuration and data serialization, explicitly required by the library.