Skip to content

Commit 6b71dba

Browse files
committed
README 1.0 release checklist + what is a CODEOWNER
1 parent 08daa9d commit 6b71dba

File tree

3 files changed

+39
-13
lines changed

3 files changed

+39
-13
lines changed

Diff for: .github/CODEOWNERS

+22
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,27 @@
11
# Code owners file.
22
# This file controls who is tagged for review for any given pull request.
3+
#
4+
# What is a "CODEOWNER"?
5+
#
6+
# A CODEOWNER MUST ____ for packages they own:
7+
# - introduce themselves at a Python SIG meeting
8+
# - demonstrate advanced knowledge of the dependencies
9+
# - respond to issues when they are notified
10+
# - fix failing unit tests or any other blockers to the CI/CD workflow
11+
# - update usage of `opentelemetry-python-core` APIs upon the introduction of breaking changes
12+
# - respond within 2~3 business days for any of the above asks
13+
#
14+
# A CODEOWNER SHOULD:
15+
# - be a member of the OpenTelemetry community
16+
#
17+
318

419
# For anything not explicitly taken by someone else:
520
* @open-telemetry/opentelemetry-python-contrib-approvers
21+
22+
# Learn about CODEOWNERS file format:
23+
# https://help.github.com/en/articles/about-code-owners
24+
#
25+
# Learn about membership in OpenTelemetry community:
26+
# https://github.com/open-telemetry/community/blob/main/community-membership.md
27+
#

Diff for: CODEOWNERS

-13
This file was deleted.

Diff for: README.md

+17
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,23 @@ install](https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs)
6666
pip install -e ./instrumentation/opentelemetry-instrumentation-{integration}
6767
```
6868

69+
## Releasing
70+
71+
Maintainers aim to periodically release new versions of the packages in `opentelemetry-python-contrib`.
72+
73+
Contributions that enhance OTel for Python are welcome to be hosted upstream for the benefit of group collaboration. However, as a general rule, releases for packages in `opentelemetry-python-contrib` will be in a perpetual `~=0.X.0` (pre-1.0) version state. This is because maintainers and approvers cannot feasibly provide the stability guarantees that are implied with a 1.0 release for so many packages.
74+
75+
To resolve this, members of the community are encouraged to commit to becoming a CODEOWNER for packages in `-contrib` that they feel experienced enough to maintain. CODEOWNERS can then follow the checklist below to release `-contrib` packages as 1.0 stable:
76+
77+
### Releasing a package as `1.0` stable
78+
79+
To release a package as `1.0` stable, the package MUST...:
80+
- [ ] Have a CODEOWNER. Submit an issue to become a CODEOWNER of a package and explain why you meet the responsibilities found in [CODEOWNERS](.github/CODEOWNERS)
81+
- [ ] Have unit tests that cover difference between versions the package claims to support
82+
- e.g. Instrumentation packages might use different techniques to instrument different major versions of python packages
83+
- [ ] Have clear documentation for non-obvious usages of the package
84+
- e.g. If an instrumentation package uses flags, a token as context, or parameters that are not typical of the `BaseInstrumentor` class, these are documented
85+
6986
## Contributing
7087

7188
See [CONTRIBUTING.md](CONTRIBUTING.md)

0 commit comments

Comments
 (0)