You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -161,6 +162,7 @@ Open a pull request against the main `opentelemetry-python-contrib` repo.
161
162
162
163
* If the PR is not ready for review, please put `[WIP]` in the title, tag it
163
164
as `work-in-progress`, or mark it as [`draft`](https://github.blog/2019-02-14-introducing-draft-pull-requests/).
165
+
* Make sure tests and lint are passing locally before requesting a review.
164
166
* Make sure CLA is signed and CI is clear.
165
167
166
168
### How to Get PRs Reviewed
@@ -216,13 +218,26 @@ For a deeper discussion, see: https://github.com/open-telemetry/opentelemetry-sp
216
218
2. Make sure you have `tox` installed. `pip install tox`.
217
219
3. Run `tox` without any arguments to run tests for all the packages. Read more about [tox](https://tox.readthedocs.io/en/latest/).
218
220
221
+
Some tests can be slow due to pre-steps that do dependencies installs. To help with that, you can run tox a first time, and after that run the tests using previous installed dependencies in toxdir as following:
222
+
223
+
1. First time run (e.g., opentelemetry-instrumentation-aiopg)
### Testing against a different Core repo branch/commit
220
233
221
234
Some of the tox targets install packages from the [OpenTelemetry Python Core Repository](https://github.com/open-telemetry/opentelemetry-python) via pip. The version of the packages installed defaults to the main branch in that repository when tox is run locally. It is possible to install packages tagged with a specific git commit hash by setting an environment variable before running tox as per the following example:
The continuation integration overrides that environment variable with as per the configuration [here](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/2518a4ac07cb62ad6587dd8f6cbb5f8663a7e179/.github/workflows/test.yml#L9).
240
+
The continuous integration overrides that environment variable with as per the configuration [here](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/.github/workflows/test.yml#L9).
226
241
227
242
## Style Guide
228
243
@@ -260,3 +275,24 @@ Below is a checklist of things to be mindful of when implementing a new instrume
260
275
## Expectations from contributors
261
276
262
277
OpenTelemetry is an open source community, and as such, greatly encourages contributions from anyone interested in the project. With that being said, there is a certain level of expectation from contributors even after a pull request is merged, specifically pertaining to instrumentations. The OpenTelemetry Python community expects contributors to maintain a level of support and interest in the instrumentations they contribute. This is to ensure that the instrumentation does not become stale and still functions the way the original contributor intended. Some instrumentations also pertain to libraries that the current members of the community are not so familiar with, so it is necessary to rely on the expertise of the original contributing parties.
278
+
279
+
## Updating supported Python versions
280
+
281
+
### Bumping the Python baseline
282
+
283
+
When updating the minimum supported Python version remember to:
284
+
285
+
- Remove the version in `pyproject.toml` trove classifiers
286
+
- Remove the version from `tox.ini`
287
+
- Search for `sys.version_info` usage and remove code for unsupported versions
288
+
- Bump `py-version` in `.pylintrc` for Python version dependent checks
289
+
290
+
### Adding support for a new Python release
291
+
292
+
When adding support for a new Python release remember to:
293
+
294
+
- Add the version in `tox.ini`
295
+
- Add the version in `pyproject.toml` trove classifiers
296
+
- Update github workflows accordingly; lint and benchmarks use the latest supported version
Copy file name to clipboardExpand all lines: README.md
-9
Original file line number
Diff line number
Diff line change
@@ -46,7 +46,6 @@ The Python auto-instrumentation libraries for [OpenTelemetry](https://openteleme
46
46
*[Releasing](#releasing)
47
47
*[Releasing a package as `1.0` stable](#releasing-a-package-as-10-stable)
48
48
*[Contributing](#contributing)
49
-
*[Running Tests Locally](#running-tests-locally)
50
49
*[Thanks to all the people who already contributed](#thanks-to-all-the-people-who-already-contributed)
51
50
52
51
## Installation
@@ -143,14 +142,6 @@ Emeritus Maintainers:
143
142
144
143
*Find more about the maintainer role in [community repository](https://github.com/open-telemetry/community/blob/main/community-membership.md#maintainer).*
145
144
146
-
## Running Tests Locally
147
-
148
-
1. Go to your Contrib repo directory. `cd ~/git/opentelemetry-python-contrib`.
149
-
2. Create a virtual env in your Contrib repo directory. `python3 -m venv my_test_venv`.
150
-
3. Activate your virtual env. `source my_test_venv/bin/activate`.
151
-
4. Make sure you have `tox` installed. `pip install tox`.
152
-
5. Run tests for a package. (e.g. `tox -e test-instrumentation-flask`.)
153
-
154
145
### Thanks to all the people who already contributed
Copy file name to clipboardExpand all lines: instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py
0 commit comments