Skip to content

Improve version migrations #6172

Description

@AmaniToamaWebDevelp1

Duplicate Check

Describe the requested feature

Hello Flet Team,

I am writing to you as a dedicated developer using Flet for my current project, Aqari (a real estate platform).

First, I want to say that I love Flet—it is my preferred framework because it makes development easy, fast, and fun. However, the recent updates to version 0.80+ have been very difficult to manage. Changing core element names and attributes (like ImageFit to BoxFit, or renaming text to label in buttons) required me to edit my entire codebase, which was incredibly frustrating and time-consuming.

I understand the move toward Version 1.0 stability, but please consider the impact of these breaking changes on active developers. I want to keep loving Flet for its simplicity!

Thank you for your hard work on this great tool.

Best Regards, Amani Dev

Suggest a solution

To help developers adapt more easily to future updates, I would like to suggest:

Introduce a Longer Deprecation Period
Instead of immediately renaming or removing core attributes, mark them as deprecated for at least one or two minor versions before full removal. This would give developers time to migrate gradually.

Provide an Automatic Migration Tool
A simple CLI tool (e.g., flet migrate) that scans a project and automatically updates renamed properties (like ImageFit → BoxFit, text → label) would save significant time.

Backward Compatibility Mode (Optional Flag)
A temporary compatibility mode (e.g., legacy_mode=True) could allow older syntax to continue working while displaying warnings in the console.

Clear Migration Guide with Before/After Examples
A dedicated migration page with clear code comparisons would make upgrading much smoother for active projects.

Semantic Versioning for Breaking Changes
Reserving major breaking changes strictly for major version releases (e.g., 1.0 → 2.0) would increase confidence for production use.

I truly appreciate the work being done toward Version 1.0 stability and hope these suggestions can help make the transition smoother for the developer community.

Screenshots

No response

Additional details

No response

Metadata

Metadata

Assignees

Labels

docsRelated to the documentation

Type

No type

Projects

Status
✅ Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions