Tencent / Tencent/tdesign-flutter

【Bug】tdesign_flutter 0.2.7 不兼容 Dart3.5+,IconData 为 final class 无法继承

Open
#963 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Dart
Stars
1.2k
Forks
182
Avg merge
2d 2h
Merged PRs (30d)
88

Description

你建议的文案是什么

【Bug】tdesign_flutter 0.2.7 不兼容 Dart3.5+,IconData 为 final class 无法继承

环境信息

Flutter: 3.22+/3.12
Dart: 3.12.2
tdesign_flutter: 0.2.7
pub镜像:storage.flutter-io.cn

报错信息

Error: The class 'IconData' can't be extended outside of its library because it's a final class.
class _TDIconsData extends IconData

问题说明
  1. TDesign官网标注最低兼容 dart >=3.2.6、flutter >=3.16.0,但0.2.7源码硬继承IconData;
  2. Dart3.5及以上版本将IconData标记为final class,外部禁止继承,直接编译失败;
  3. 更高修复版本(0.3.x/0.6.x)国内flutter-io镜像无收录,用户无法升级规避;
  4. 大量使用新版Flutter的开发者无法正常使用组件库,只能降级SDK或更换其他UI库。
诉求
  1. 尽快发布修复图标继承问题的新版本;
  2. 将新版同步至国内pub镜像;
  3. 更新官网适配说明,区分Dart3.5前后兼容区间。

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start from the _TDIconsData declaration that extends IconData and reproduce the failure with the listed Flutter and Dart versions. Confirm the icon implementation builds on Dart 3.5+, then check the compatibility guidance and package publication or mirror availability; done means users can install a released compatible version without the compilation error.

Written by the indexing model from the issue text.

Assessment

Tech stack
dart, flutter
Domain
mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.