Skip to content

Commit 9882599

Browse files
omikaderxrmx
authored andcommitted
feat(mysql): add support for mysql-connector-python v9 (open-telemetry#2751)
1 parent 14e8bf5 commit 9882599

File tree

8 files changed

+30
-7
lines changed

8 files changed

+30
-7
lines changed

Diff for: CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
111111
([#2610](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2610))
112112
- `opentelemetry-instrumentation-asgi` Bugfix: Middleware did not set status code attribute on duration metrics for non-recording spans.
113113
([#2627](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2627))
114+
- `opentelemetry-instrumentation-mysql` Add support for `mysql-connector-python` v9 ([#2751](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2751))
114115

115116
## Version 1.25.0/0.46b0 (2024-05-31)
116117

Diff for: instrumentation/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
| [opentelemetry-instrumentation-jinja2](./opentelemetry-instrumentation-jinja2) | jinja2 >= 2.7, < 4.0 | No | experimental
2727
| [opentelemetry-instrumentation-kafka-python](./opentelemetry-instrumentation-kafka-python) | kafka-python >= 2.0 | No | experimental
2828
| [opentelemetry-instrumentation-logging](./opentelemetry-instrumentation-logging) | logging | No | experimental
29-
| [opentelemetry-instrumentation-mysql](./opentelemetry-instrumentation-mysql) | mysql-connector-python ~= 8.0 | No | experimental
29+
| [opentelemetry-instrumentation-mysql](./opentelemetry-instrumentation-mysql) | mysql-connector-python >= 8.0, < 10.0 | No | experimental
3030
| [opentelemetry-instrumentation-mysqlclient](./opentelemetry-instrumentation-mysqlclient) | mysqlclient < 3 | No | experimental
3131
| [opentelemetry-instrumentation-pika](./opentelemetry-instrumentation-pika) | pika >= 0.12.0 | No | experimental
3232
| [opentelemetry-instrumentation-psycopg](./opentelemetry-instrumentation-psycopg) | psycopg >= 3.1.0 | No | experimental

Diff for: instrumentation/opentelemetry-instrumentation-mysql/pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ dependencies = [
3232

3333
[project.optional-dependencies]
3434
instruments = [
35-
"mysql-connector-python ~= 8.0",
35+
"mysql-connector-python >= 8.0, < 10.0",
3636
]
3737

3838
[project.entry-points.opentelemetry_instrumentor]

Diff for: instrumentation/opentelemetry-instrumentation-mysql/src/opentelemetry/instrumentation/mysql/package.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
# limitations under the License.
1414

1515

16-
_instruments = ("mysql-connector-python ~= 8.0",)
16+
_instruments = ("mysql-connector-python >= 8.0, < 10.0",)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
asgiref==3.7.2
2+
Deprecated==1.2.14
3+
importlib-metadata==6.11.0
4+
iniconfig==2.0.0
5+
mysql-connector-python==9.0.0
6+
packaging==24.0
7+
pluggy==1.5.0
8+
py-cpuinfo==9.0.0
9+
pytest==7.4.4
10+
tomli==2.0.1
11+
typing_extensions==4.9.0
12+
wrapt==1.16.0
13+
zipp==3.19.2
14+
-e opentelemetry-instrumentation
15+
-e instrumentation/opentelemetry-instrumentation-dbapi
16+
-e instrumentation/opentelemetry-instrumentation-mysql

Diff for: opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@
109109
"instrumentation": "opentelemetry-instrumentation-kafka-python==0.48b0.dev",
110110
},
111111
{
112-
"library": "mysql-connector-python ~= 8.0",
112+
"library": "mysql-connector-python >= 8.0, < 10.0",
113113
"instrumentation": "opentelemetry-instrumentation-mysql==0.48b0.dev",
114114
},
115115
{

Diff for: tox.ini

+9-3
Original file line numberDiff line numberDiff line change
@@ -177,8 +177,12 @@ envlist =
177177
lint-exporter-prometheus-remote-write
178178

179179
; opentelemetry-instrumentation-mysql
180-
py3{8,9,10,11,12}-test-instrumentation-mysql
181-
pypy3-test-instrumentation-mysql
180+
; The numbers at the end of the environment names
181+
; below mean these dependencies are being used:
182+
; 0: mysql-connector-python >=8.0.0,<9.0.0
183+
; 1: mysql-connector-python ~=9.0.0
184+
py3{8,9,10,11,12}-test-instrumentation-mysql-{0,1}
185+
pypy3-test-instrumentation-mysql-{0,1}
182186
lint-instrumentation-mysql
183187

184188
; opentelemetry-instrumentation-mysqlclient
@@ -562,7 +566,9 @@ commands_pre =
562566
mysql: pip install opentelemetry-semantic-conventions@{env:CORE_REPO}\#egg=opentelemetry-semantic-conventions&subdirectory=opentelemetry-semantic-conventions
563567
mysql: pip install opentelemetry-sdk@{env:CORE_REPO}\#egg=opentelemetry-sdk&subdirectory=opentelemetry-sdk
564568
mysql: pip install opentelemetry-test-utils@{env:CORE_REPO}\#egg=opentelemetry-test-utils&subdirectory=tests/opentelemetry-test-utils
565-
mysql: pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-mysql/test-requirements.txt
569+
mysql-0: pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-0.txt
570+
mysql-1: pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-1.txt
571+
lint-instrumentation-mysql: pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-1.txt
566572

567573
mysqlclient: pip install opentelemetry-api@{env:CORE_REPO}\#egg=opentelemetry-api&subdirectory=opentelemetry-api
568574
mysqlclient: pip install opentelemetry-semantic-conventions@{env:CORE_REPO}\#egg=opentelemetry-semantic-conventions&subdirectory=opentelemetry-semantic-conventions

0 commit comments

Comments
 (0)