1{
2 buildPythonPackage,
3 pythonOlder,
4
5 # build-system
6 hatchling,
7
8 # dependencies
9 opentelemetry-api,
10 opentelemetry-instrumentation,
11 opentelemetry-semantic-conventions,
12 packaging,
13 sqlalchemy,
14 wrapt,
15
16 # tests
17 opentelemetry-test-utils,
18 pytestCheckHook,
19}:
20
21buildPythonPackage {
22 inherit (opentelemetry-instrumentation) version src;
23 pname = "opentelemetry-instrumentation-sqlalchemy";
24 pyproject = true;
25
26 disabled = pythonOlder "3.8";
27
28 sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-sqlalchemy";
29
30 build-system = [ hatchling ];
31
32 dependencies = [
33 opentelemetry-api
34 opentelemetry-instrumentation
35 opentelemetry-semantic-conventions
36 packaging
37 sqlalchemy
38 wrapt
39 ];
40
41 nativeCheckInputs = [
42 opentelemetry-test-utils
43 pytestCheckHook
44 ];
45
46 pythonImportsCheck = [ "opentelemetry.instrumentation.sqlalchemy" ];
47
48 meta = opentelemetry-instrumentation.meta // {
49 homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/instrumentation/opentelemetry-instrumentation-sqlalchemy";
50 description = "SQLAlchemy instrumentation for OpenTelemetry";
51 };
52}