← Back to issue list

fix(project): handle devel bases in is_effective_base_eol()

View original Github issue

Metadata

Project
craft-application
Number
#1153
Type
pull request
State
merged
Author
lengau
Labels
Created
Updated
Closed

Current evaluation

Merged fix for is_effective_base_eol() crash on devel or unrecognized bases. Now treats devel as never EOL and catches unknown errors, matching sibling methods. Includes unit tests and passed review.

Suggested action:

No scores available.

Issue body

## Summary Fixes #1152 `ProjectService.is_effective_base_eol()` did not handle a `build-base`/`base` of `devel` (or any base unrecognized by `distro-support`) the same way its sibling methods do, causing an unhandled `UnknownVersionError` crash. This gives `is_effective_base_eol()` the same treatment as `check_base_is_supported()` and `base_eol_soon_date()`: - Treat a `devel` series as never EOL. - Catch `(UnknownDistributionError, UnknownVersionError)` and assume the base is supported when `distro-support` doesn't recognize it. ## Testing Added `test_is_effective_base_eol` covering supported, EOL, `devel` build-base, and unrecognized-base cases. Full `tests/unit/services/test_project.py` suite passes (2199 passed, 54 skipped).

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.6-35b-a3b Merged fix for is_effective_base_eol() crash on devel or unrecognized bases. Now treats devel as never EOL and catches unknown errors, matching sibling methods. Includes unit tests and passed review.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 85
needs review Fixes UnknownVersionError crash in is_effective_base_eol() by treating devel and unrecognized bases as supported. Approved by 1 reviewer, 1 unresolved comment, and one failing lint check.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 25
Confidence: 85
needs review Fixes crash in is_effective_base_eol() for devel and unrecognized bases by aligning with sibling methods. Includes unit tests. Currently awaiting maintainer review with one failing lint check.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 90
needs review Fixes crash in is_effective_base_eol() for devel and unrecognized bases by aligning with sibling methods and catching unknown version errors. Currently awaiting maintainer review; most CI checks pass, with one minor lint failure.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 85
needs review Fixes unhandled UnknownVersionError in is_effective_base_eol() for devel and unrecognized bases. Aligns behavior with sibling methods and adds tests. Currently awaiting maintainer review with a failing lint check.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 85
needs review Fixes is_effective_base_eol() to handle devel and unrecognized bases, preventing UnknownVersionError crashes. Aligns behavior with sibling methods. Currently pending maintainer review with CI checks running.
qwen/qwen3.6-35b-a3b
Staleness: 5
Complexity: 15
Confidence: 90
needs review Fixes a crash in is_effective_base_eol() when encountering devel or unrecognized bases by treating them as supported. Includes unit tests. Currently awaiting maintainer review and pending CI checks.

Update history

Date Change
updated
updated
updated
updated
updated
created

Related issues

Issue Project State Summary Similarity
#1152 is_effective_base_eol() crashes with UnknownVersionError on build-base: devel craft-application closed Closed. The is_effective_base_eol() crash on build-base devel was fixed by adding UnknownVersionError handling, treating unrecognized bases as supported to match sibling methods.
77%
#4523 fix(lifecycle): return correct base when using devel for build-base snapcraft merged Merged fix for get_effective_base() returning devel for build-base, preventing invalid LD_LIBRARY_PATH paths. Approved by three reviewers, passed CI, and resolves #4508. Reviewers requested targeting hotfix/8.0 and discussed a core24 validator.
75%
#946 test: check EOL bases on a *real* EOL base! craft-application merged Merged test changes verifying EOL bases on a real EOL base. Approved by two reviewers, passed all CI checks, and modified 7 files with 78 additions and 30 deletions.
74%
#4540 fix(lifecycle): return correct base when using devel for build-base (… snapcraft merged Merged a fix to return the correct base when using devel for build-base. Approved by two reviewers, the change spans seven files. Codecov noted one uncovered line, but the pull request was successfully merged.
73%
#886 fix(check_supported_base): ESM still counts as EOL craft-application merged Merged fix to check_base_is_supported that correctly classifies extended support bases as EOL. Approved by two reviewers with all CI checks passing. Maintainer bypassed a pending review to unblock related work.
70%