amplitude / experiment-python-server

Amplitude Experiment Python Server SDK
MIT License
3 stars 1 forks source link

Using an `alpine` docker image causes package imports to fail #49

Open morgs208 opened 1 month ago

morgs208 commented 1 month ago

Expected Behavior

Application builds and installs all amplitude experiment packages

Current Behavior

Application using an alpine image fails to load: File "/usr/local/lib/python3.11/site-packages/amplitude_experiment/local/evaluation/libevaluation_interop.py", line 548, in __call__ raise ImportError("Could not load %s." % libname) ImportError: Could not load libevaluation_interop.

Possible Solution

Changing the docker image to a debian image, fixed the issue:

Steps to Reproduce

Environment

bgiori commented 1 month ago

Hey @morgs208, Thanks for submitting this issue.

The SDK currently does not support alpine linux due to a shared binary that is used to implement the core evaluation logic that is built expecting glibc rather than muslc (used by alpine images).

We plan to support alpine once the core evaluation logic is transcribed to python. (currently the only two holdouts still using the binary are python and ruby).

I'll keep this issue open until we add support. Thanks for your patience.

Brian