docs/release/remove-v1-checklist.md
Owner: @yurishkuro
Related: https://github.com/jaegertracing/jaeger/issues/7497
Prepared: 2025-11-12
We will perform a clean, audited migration from dual v1/v2 releases to v2-only releases. The migration is split into small, testable milestones so we do not break the ability to produce v1 artifacts until we intentionally stop publishing them.
This document is an update to the previously merged checklist and reflects the agreed milestone ordering and file allocations:
Notes:
pre-remove-v1-YYYY-MM-DD.docs/release/remove-v1-checklist.md.Owner: @yurishkuro
Goal
Acceptance criteria
scripts/makefiles/BuildBinaries.mk and other Makefiles/targets produce v2 artifacts by default except for the explicit exceptions listed above.scripts/build/build-upload-a-docker-image.sh, docker-related Makefiles) default to v2 tags; v1 tag generation is only produced when explicitly requested.Files / targets assigned to this milestone (non-exhaustive — guidance to scan repo)
scripts/makefiles/BuildBinaries.mk
scripts/build/build-upload-a-docker-image.sh
scripts/utils/compute-tags.sh
Implementation guidance
Milestone 1 testing
Goal
Acceptance criteria
Files assigned to Milestone 2 (update usage only)
docker-compose/tail-sampling/Makefile
JAEGER_VERSION=1... convenience defaults with v2 or remove v1 convenience targets.docker-compose/monitor/Makefile
examples/otel-demo/deploy-all.sh
examples/* and README example lines that are invoked by CI or referenced in release docs
scripts/e2e/* (only test helpers invoked by CI, if they default to v1)
scripts/utils/compare_metrics.py (if used in tests or example automation)
Implementation guidance
Milestone 2 testing
Goal
Acceptance criteria
Files assigned to Milestone 3 (publish removal)
.github/workflows/ci-release.yml
.github/workflows/ci-docker-build.yml (publish-related steps)
.github/workflows/ci-docker-hotrod.yml (if it participates in release publish)
scripts/build/build-upload-a-docker-image.sh
scripts/build/package-deploy.sh
VERSION_V1 artifacts; upload only v2 artifacts. Remove checks that required both versions.scripts/utils/compute-tags.sh
Implementation guidance
Milestone 3 testing
Goal
Files assigned to Milestone 4
RELEASE.md
CHANGELOG.md (and any tools that parse its headers)
scripts/release/start.sh
scripts/release/draft.py
gh release invocations to use v2 tag.Testing
start.sh -d and draft.py in dry-run to validate v2-first outputs.RELEASE.md to produce a v2 release.Goal
v1 references in examples, tests, CONTRIBUTING.md, and other non-critical areas. Split into small PRs.Files / areas
scripts/e2e/elasticsearch.sh (finalize v2 default)scripts/utils/compare_metrics.py (final cleanup)CONTRIBUTING.md (document v2 as primary; note v1 status)v1 sweepTesting
Goal
Action
chore/reassign-to-v2-defaults — re-number build targets to use v2 by default (change Makefiles and build scripts). Include test plan: run CI builds, verify v2 artifacts are produced by default and v1 override works.chore/remove-v1-usage — change convenience targets and examples (non-breaking). Include test plan: run CI tests, local smoke tests for example flows.chore/remove-v1-publish — change release/publish workflows and packaging scripts. Test on fork with dry-run release.pre-remove-v1-YYYY-MM-DD.Pick one:
chore/reassign-to-v2-defaults) that re-numbers build targets to use v2 by default (change Makefiles and build scripts). (Recommended first step.)chore/remove-v1-usage) that implements the minimal, safe changes to convenience Makefiles and example scripts and add a testing plan.Please confirm which path you prefer.