← Back to issue list

Migrate to pydantic 2

View original Github issue

Metadata

Project
imagecraft
Number
#60
Type
pull request
State
merged
Author
upils
Labels
—
Created
Updated
Closed

Current evaluation

PR #60 merged as commit be1741a, migrating Imagecraft to Pydantic V2 and newer craft libraries (FR-8917); pyproject now pins pydantic~=2.12.5. Approved by one reviewer with no unresolved comments.

Resolution: closed resolved

Reason: The PR was merged into main via commit be1741a ("Merge pull request #60 from canonical/migrate-to-pydantic-2"). The 27-file diff (+278/-340) completed the Pydantic V2 migration and the resulting pyproject.toml declares pydantic~=2.12.5, confirming the change landed.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Migrate to pydantic V2 and adapt to new craft libraries. Fixes: FR-8917

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved PR #60 merged as commit be1741a, migrating Imagecraft to Pydantic V2 and newer craft libraries (FR-8917); pyproject now pins pydantic~=2.12.5. Approved by one reviewer with no unresolved comments.
stealth/space-bunny-alpha — closed resolved Merged into main as commit be1741a (branch migrate-to-pydantic-2,27 files, +278/-340), moving Imagecraft to Pydantic V2 and newer craft libraries; fixes FR-8917.
stealth/space-bunny-alpha — closed resolved Merged PR #60 in commit be1741a, migrating Imagecraft to Pydantic V2 and newer craft libraries; resolves FR-8917 with 98.06% reported coverage.
qwen/qwen3.6-35b-a3b — — Merged after approval. The codebase was migrated to Pydantic V2 with updated craft libraries. Changes span 27 files (+278/-340 lines) and maintain 98% test coverage, resolving FR-8917.
qwen3.6-35b-a3b-mtp-q6 — — Merged after passing 98% code coverage and maintainer review. Migrates the codebase to Pydantic V2 and adapts to updated craft libraries, resolving FR-8917.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/snapcraft#4955 (confidence 55%)

    Same Pydantic 2 breaking migration performed in parallel across the craft ecosystem (fixing snapcraft#4941, CRAFT-3159); shared craft-library API adaptations.

  • Related To: canonical/craft-parts#728 (confidence 45%)

    craft-parts Pydantic 2.x migration (CRAFT-2913) that this PR's craft-library adaptations would depend on.

Related issues

Issue Project State Summary Similarity
#4941 Migrate to Pydantic 2 snapcraft closed Pydantic 2 migration completed in merged snapcraft#4955 via commit 1fc8fe6ab, resolving CRAFT-3159.
78%
#728 Migrate to Pydantic 2.x craft-parts closed Pydantic 2 migration landed in canonical/craft-parts#771 via commit 6b155294, followed by cleanup in #778; craft-parts now requires pydantic>=2.0.0.
77%
#401 build!: update to pydantic 2 craft-application merged Merged PR #401 as commit c2f0978a, migrating craft-application to Pydantic 2 across 23 files; craft-grammar#34 was required for the tests.
76%
#103 feat: upgrade to pydantic 2.x craft-archives merged Merged PR #103 as commit b69f44a, upgrading craft-archives to Pydantic 2.x after three approvals; residual review feedback was moved to #118.
75%
#345 Migrate to Pydantic 2 craft-application closed Pydantic 2 migration landed via merged PR #401, commit c2f0978a, updating 23 files and replacing the issue's Pydantic 1 requirements.
75%
#110 Migrate to Pydantic 2 craft-archives closed Pydantic 2 migration was completed in merged PR #103 (commit b69f44a) on feature/2.0; the branch later reached main through PR #123.
75%
#4955 chore!: migrate to pydantic 2 snapcraft merged Merged snapcraft#4955 completed the Pydantic 2 migration for CRAFT-3159 and fixed snapcraft#4941; commit 1fc8fe6ab moved dependencies to Pydantic 2.
74%
#451 build(deps): bump pydantic to v2 craft-providers merged Merged PR #451 upgraded craft-providers to Pydantic v2 for 2.0; current project metadata requires pydantic~=2.4.
74%
#1768 Migrate to Pydantic 2 charmcraft closed Migrated Charmcraft to Pydantic 2 via merged PR #1777 (70078b03), with the feature branch merged to main in #1817 (394e6e55).
73%
#32 Make a pydantic 2 release of craft-grammar craft-grammar closed Pydantic 2 support was delivered by merged PR canonical/craft-grammar#33, updating craft-grammar from Pydantic 1 to Pydantic 2.
72%