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
Detect stale and unreleased entries in Agent release requirements (DataDog#23813)
* Validate stale Agent release requirements
* Skip unreleased integrations in Agent release output
* Tighten unreleased-integrations parsing and broaden tests
- Validate that by-agent-version-range keys contain the '..' separator and raise a clear ValueError naming the offending key.
- Drop the redundant else branch in exclude_unreleased_integrations and move the historical folder-name comment back next to normalize_catalog.
- mkdir(exist_ok=True) in the write_repo_config helper for consistency with neighbours.
- Parametrize test_agent_version_in_range_is_inclusive (now covers below/above bounds and the malformed-range error path).
- Add a direct unit test on get_unreleased_integrations that exercises by-integration and by-agent-version-range together.
- Add a clean-pass test for validate agent-reqs and pull the set_root teardown into an isolated_root yield fixture.
- Add changelog entries for ddev and datadog_checks_dev.
* Surface malformed version ranges as a clean ddev abort
- Drop the redundant empty parent table header in .ddev/config.toml; the two sub-tables imply it.
- Catch ValueError from agent_version_in_range at every command entry point that triggers the lookup (integrations, changelog, integrations_changelog) and surface it via app.abort so config authors get a clean message instead of a Python traceback.
- Document that exclude_unreleased_integrations accepts both raw and folder-normalized catalog keys.
* Scope stale-entry detection to whole-file invocations
When the user runs `ddev validate agent-reqs <check>`, only the requested check should be validated; previously the new stale-entry detection still scanned the whole requirements file and surfaced unrelated stale packages, defeating per-check pre-commit usage.
Fail `ddev validate agent-reqs` when `requirements-agent-release.txt` pins a `datadog-*` package whose integration folder is no longer present in the repo.
Skip integrations pinned in Agent release requirements but not actually shipped in a given Agent release, configurable under `[overrides.release.agent.unreleased-integrations]` in `.ddev/config.toml`.
0 commit comments