Skip to content

Commit af972a0

Browse files
authored
Create RELEASING.md, Update version to 1.15.0.dev/0.36b0.dev (open-telemetry#1429)
1 parent 05e23cd commit af972a0

File tree

97 files changed

+371
-267
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

97 files changed

+371
-267
lines changed

.github/workflows/test.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66
- 'release/*'
77
pull_request:
88
env:
9-
CORE_REPO_SHA: 2ac9e646af8d6420f13e7e3b2508586f3efb435a
9+
CORE_REPO_SHA: a97b3a70e852f77c6a25c69192fc506c127cdaaa
1010

1111
jobs:
1212
build:

CHANGELOG.md

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## Unreleased
99

10+
## Version 1.14.0/0.35b0 (2022-11-03)
11+
1012
### Deprecated
1113

1214
- `opentelemetry-distro` Deprecate `otlp_proto_grpc` and `otlp_proto_http` in favor of using

RELEASING.md

+102
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
# Releasing OpenTelemetry Packages (for maintainers only)
2+
This document explains how to publish all OT modules at version x.y.z. Ensure that you’re following semver when choosing a version number.
3+
4+
Release Process:
5+
* [Checkout a clean repo](#checkout-a-clean-repo)
6+
* [Update versions](#update-versions)
7+
* [Create a new branch](#create-a-new-branch)
8+
* [Open a Pull Request](#open-a-pull-request)
9+
* [Create a Release](#Create-a-Release)
10+
* [Move stable tag](#Move-stable-tag)
11+
* [Update main](#Update-main)
12+
* [Check PyPI](#Check-PyPI)
13+
* [Troubleshooting](#troubleshooting)
14+
15+
## Checkout a clean repo
16+
To avoid pushing untracked changes, check out the repo in a new dir
17+
18+
## Update versions
19+
The update of the version information relies on the information in eachdist.ini to identify which packages are stable, prerelease or
20+
experimental. Update the desired version there to begin the release process.
21+
22+
## Create a new branch
23+
The following script does the following:
24+
- update main locally
25+
- creates a new release branch `release/<version>`
26+
- updates version and changelog files
27+
- commits the change
28+
29+
*NOTE: This script was run by a GitHub Action but required the Action bot to be excluded from the CLA check, which it currently is not.*
30+
31+
```bash
32+
./scripts/prepare_release.sh
33+
```
34+
35+
## Open a Pull Request
36+
37+
The PR should be opened from the `release/<version>` branch created as part of running `prepare_release.sh` in the steps above.
38+
39+
## Create a Release
40+
41+
- Create the GH release from the main branch, using a new tag for this micro version, e.g. `v0.7.0`
42+
- Copy the changelogs from all packages that changed into the release notes (and reformat to remove hard line wraps)
43+
44+
45+
## Check PyPI
46+
47+
This should be handled automatically on release by the [publish action](https://github.com/open-telemetry/opentelemetry-python/blob/main/.github/workflows/publish.yml).
48+
49+
- Check the [action logs](https://github.com/open-telemetry/opentelemetry-python/actions?query=workflow%3APublish) to make sure packages have been uploaded to PyPI
50+
- Check the release history (e.g. https://pypi.org/project/opentelemetry-api/#history) on PyPI
51+
52+
If for some reason the action failed, see [Publish failed](#publish-failed) below
53+
54+
## Move stable tag
55+
56+
This will ensure the docs are pointing at the stable release.
57+
58+
```bash
59+
git tag -d stable
60+
git tag stable
61+
git push --delete origin tagname
62+
git push origin stable
63+
```
64+
65+
To validate this worked, ensure the stable build has run successfully: https://readthedocs.org/projects/opentelemetry-python/builds/. If the build has not run automatically, it can be manually trigger via the readthedocs interface.
66+
67+
## Update main
68+
69+
Ensure the version and changelog updates have been applied to main. Update the versions in eachdist.ini once again this time to include the `.dev0` tag and
70+
run eachdist once again:
71+
```bash
72+
./scripts/eachdist.py update_versions --versions stable,prerelease
73+
```
74+
75+
If the diff includes significant changes, create a pull request to commit the changes and once the changes are merged, click the "Run workflow" button for the Update [OpenTelemetry Website Docs](https://github.com/open-telemetry/opentelemetry-python/actions/workflows/docs-update.yml) GitHub Action.
76+
77+
## Hotfix procedure
78+
79+
A `hotfix` is defined as a small change developed to correct a bug that should be released as quickly as possible. Due to the nature of hotfixes, they usually will only affect one or a few packages. Therefore, it usually is not necessary to go through the entire release process outlined above for hotfixes. Follow the below steps how to release a hotfix:
80+
81+
1. Identify the packages that are affected by the bug. Make the changes to those packages, merging to `main`, as quickly as possible.
82+
2. On your local machine, remove the `dev0` tags from the version number and increment the patch version number.
83+
3. On your local machine, update `CHANGELOG.md` with the date of the hotfix change.
84+
4. With administrator privileges for PyPi, manually publish the affected packages.
85+
a. Install [twine](https://pypi.org/project/twine/)
86+
b. Navigate to where the `setup.py` file exists for the package you want to publish.
87+
c. Run `python setup.py sdist bdist_wheel`. You may have to install [wheel](https://pypi.org/project/wheel/) as well.
88+
d. Validate your built distributions by running `twine check dist/*`.
89+
e. Upload distributions to PyPi by running `twine upload dist/*`.
90+
5. Note that since hotfixes are manually published, the build scripts for publish after creating a release are not run.
91+
92+
## Troubleshooting
93+
94+
### Publish failed
95+
96+
If for some reason the action failed, do it manually:
97+
98+
- Switch to the release branch (important so we don't publish packages with "dev" versions)
99+
- Build distributions with `./scripts/build.sh`
100+
- Delete distributions we don't want to push (e.g. `testutil`)
101+
- Push to PyPI as `twine upload --skip-existing --verbose dist/*`
102+
- Double check PyPI!

_template/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

eachdist.ini

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ sortfirst=
1616
ext/*
1717

1818
[stable]
19-
version=1.14.0
19+
version=1.15.0.dev
2020

2121
packages=
2222
opentelemetry-sdk
@@ -34,7 +34,7 @@ packages=
3434
opentelemetry-api
3535

3636
[prerelease]
37-
version=0.35b0
37+
version=0.36b0.dev
3838

3939
packages=
4040
all

exporter/opentelemetry-exporter-prometheus-remote-write/src/opentelemetry/exporter/prometheus_remote_write/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

exporter/opentelemetry-exporter-richconsole/pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ classifiers = [
2727
dependencies = [
2828
"opentelemetry-api ~= 1.12",
2929
"opentelemetry-sdk ~= 1.12",
30-
"opentelemetry-semantic-conventions == 0.35b0",
30+
"opentelemetry-semantic-conventions == 0.36b0.dev",
3131
"rich>=10.0.0",
3232
]
3333

exporter/opentelemetry-exporter-richconsole/src/opentelemetry/exporter/richconsole/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-aio-pika/pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ instruments = [
3535
]
3636
test = [
3737
"opentelemetry-instrumentation-aio-pika[instruments]",
38-
"opentelemetry-test-utils == 0.35b0",
38+
"opentelemetry-test-utils == 0.36b0.dev",
3939
"pytest",
4040
"wrapt >= 1.0.0, < 2.0.0",
4141
]

instrumentation/opentelemetry-instrumentation-aio-pika/src/opentelemetry/instrumentation/aio_pika/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-aiohttp-client/pyproject.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ classifiers = [
2626
]
2727
dependencies = [
2828
"opentelemetry-api ~= 1.12",
29-
"opentelemetry-instrumentation == 0.35b0",
30-
"opentelemetry-semantic-conventions == 0.35b0",
31-
"opentelemetry-util-http == 0.35b0",
29+
"opentelemetry-instrumentation == 0.36b0.dev",
30+
"opentelemetry-semantic-conventions == 0.36b0.dev",
31+
"opentelemetry-util-http == 0.36b0.dev",
3232
"wrapt >= 1.0.0, < 2.0.0",
3333
]
3434

instrumentation/opentelemetry-instrumentation-aiohttp-client/src/opentelemetry/instrumentation/aiohttp_client/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-aiopg/pyproject.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ classifiers = [
2626
]
2727
dependencies = [
2828
"opentelemetry-api ~= 1.12",
29-
"opentelemetry-instrumentation == 0.35b0",
30-
"opentelemetry-instrumentation-dbapi == 0.35b0",
29+
"opentelemetry-instrumentation == 0.36b0.dev",
30+
"opentelemetry-instrumentation-dbapi == 0.36b0.dev",
3131
"wrapt >= 1.0.0, < 2.0.0",
3232
]
3333

@@ -37,8 +37,8 @@ instruments = [
3737
]
3838
test = [
3939
"opentelemetry-instrumentation-aiopg[instruments]",
40-
"opentelemetry-semantic-conventions == 0.35b0",
41-
"opentelemetry-test-utils == 0.35b0",
40+
"opentelemetry-semantic-conventions == 0.36b0.dev",
41+
"opentelemetry-test-utils == 0.36b0.dev",
4242
]
4343

4444
[project.entry-points.opentelemetry_instrumentor]

instrumentation/opentelemetry-instrumentation-aiopg/src/opentelemetry/instrumentation/aiopg/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-asgi/pyproject.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@ classifiers = [
2727
dependencies = [
2828
"asgiref ~= 3.0",
2929
"opentelemetry-api ~= 1.12",
30-
"opentelemetry-instrumentation == 0.35b0",
31-
"opentelemetry-semantic-conventions == 0.35b0",
32-
"opentelemetry-util-http == 0.35b0",
30+
"opentelemetry-instrumentation == 0.36b0.dev",
31+
"opentelemetry-semantic-conventions == 0.36b0.dev",
32+
"opentelemetry-util-http == 0.36b0.dev",
3333
]
3434

3535
[project.optional-dependencies]
@@ -38,7 +38,7 @@ instruments = [
3838
]
3939
test = [
4040
"opentelemetry-instrumentation-asgi[instruments]",
41-
"opentelemetry-test-utils == 0.35b0",
41+
"opentelemetry-test-utils == 0.36b0.dev",
4242
]
4343

4444
[project.urls]

instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-asyncpg/pyproject.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ classifiers = [
2626
]
2727
dependencies = [
2828
"opentelemetry-api ~= 1.12",
29-
"opentelemetry-instrumentation == 0.35b0",
30-
"opentelemetry-semantic-conventions == 0.35b0",
29+
"opentelemetry-instrumentation == 0.36b0.dev",
30+
"opentelemetry-semantic-conventions == 0.36b0.dev",
3131
]
3232

3333
[project.optional-dependencies]
@@ -36,7 +36,7 @@ instruments = [
3636
]
3737
test = [
3838
"opentelemetry-instrumentation-asyncpg[instruments]",
39-
"opentelemetry-test-utils == 0.35b0",
39+
"opentelemetry-test-utils == 0.36b0.dev",
4040
]
4141

4242
[project.entry-points.opentelemetry_instrumentor]

instrumentation/opentelemetry-instrumentation-asyncpg/src/opentelemetry/instrumentation/asyncpg/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-aws-lambda/pyproject.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,15 @@ classifiers = [
2222
"Programming Language :: Python :: 3.8",
2323
]
2424
dependencies = [
25-
"opentelemetry-instrumentation == 0.35b0",
25+
"opentelemetry-instrumentation == 0.36b0.dev",
2626
"opentelemetry-propagator-aws-xray == 1.0.1",
27-
"opentelemetry-semantic-conventions == 0.35b0",
27+
"opentelemetry-semantic-conventions == 0.36b0.dev",
2828
]
2929

3030
[project.optional-dependencies]
3131
instruments = []
3232
test = [
33-
"opentelemetry-test-utils == 0.35b0",
33+
"opentelemetry-test-utils == 0.36b0.dev",
3434
]
3535

3636
[project.urls]

instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-boto/pyproject.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ classifiers = [
2626
]
2727
dependencies = [
2828
"opentelemetry-api ~= 1.12",
29-
"opentelemetry-instrumentation == 0.35b0",
30-
"opentelemetry-semantic-conventions == 0.35b0",
29+
"opentelemetry-instrumentation == 0.36b0.dev",
30+
"opentelemetry-semantic-conventions == 0.36b0.dev",
3131
]
3232

3333
[project.optional-dependencies]
@@ -38,7 +38,7 @@ test = [
3838
"opentelemetry-instrumentation-boto[instruments]",
3939
"markupsafe==2.0.1",
4040
"moto~=2.0",
41-
"opentelemetry-test-utils == 0.35b0",
41+
"opentelemetry-test-utils == 0.36b0.dev",
4242
]
4343

4444
[project.entry-points.opentelemetry_instrumentor]

instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-boto3sqs/pyproject.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ classifiers = [
2626
]
2727
dependencies = [
2828
"opentelemetry-api ~= 1.12",
29-
"opentelemetry-instrumentation == 0.35b0",
30-
"opentelemetry-semantic-conventions == 0.35b0",
29+
"opentelemetry-instrumentation == 0.36b0.dev",
30+
"opentelemetry-semantic-conventions == 0.36b0.dev",
3131
"wrapt >= 1.0.0, < 2.0.0",
3232
]
3333

@@ -37,7 +37,7 @@ instruments = [
3737
]
3838
test = [
3939
"opentelemetry-instrumentation-boto3sqs[instruments]",
40-
"opentelemetry-test-utils == 0.35b0",
40+
"opentelemetry-test-utils == 0.36b0.dev",
4141
]
4242

4343
[project.entry-points.opentelemetry_instrumentor]

instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

instrumentation/opentelemetry-instrumentation-botocore/pyproject.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ classifiers = [
2626
]
2727
dependencies = [
2828
"opentelemetry-api ~= 1.12",
29-
"opentelemetry-instrumentation == 0.35b0",
30-
"opentelemetry-semantic-conventions == 0.35b0",
29+
"opentelemetry-instrumentation == 0.36b0.dev",
30+
"opentelemetry-semantic-conventions == 0.36b0.dev",
3131
]
3232

3333
[project.optional-dependencies]
@@ -38,7 +38,7 @@ test = [
3838
"opentelemetry-instrumentation-botocore[instruments]",
3939
"markupsafe==2.0.1",
4040
"moto[all] ~= 2.2.6",
41-
"opentelemetry-test-utils == 0.35b0",
41+
"opentelemetry-test-utils == 0.36b0.dev",
4242
]
4343

4444
[project.entry-points.opentelemetry_instrumentor]

instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
__version__ = "0.35b0"
15+
__version__ = "0.36b0.dev"

0 commit comments

Comments
 (0)