-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Description
This ticket contains up-to-date information regarding the state of the migration from dart:html to package web: https://pub.dev/packages/web
This is a live ticket and information posted here will be changing.
As always, we would like to remind you that this is a project run by volunteers in their free time, and ask you to be mindful when asking for updates. Repeated requests and general unprofessional behavior is considered a breach of our Code of Conduct.
F.A.Q.
When will be packages migrated?
Update 2024-03-20: All packages that have a web implementation have been migrated.
Packages migrated
package_info_plusdevice_info_plusconnectivity_plussensors_plusshare_plusbattery_plus
Packages that don't require migration to web
android_alarm_manager_plusandroid_intent_plusnetwork_info_plus
All these packages are not supported on web.
Tickets
You can search in the repo for a specific package to see if it has been migrated, or if it still in progress:
- [Request]: (connectivity_plus): migrate to pkg:web from dart:html #2600
- [Request]: (device_info_plus): migrate to pkg:web from dart:html #2601
- [Request]: (sensors_plus) Migrate to
package:webto support WASM #2602 - [Request]: (share_plus) Migrate to
package:webto support WASM #2603 - fix(package_info_plus): migrate to pkg:web from dart:html #2316
- feat(package_info_plus): Use js_interop instead of html to support compilation to WASM #2625
- chore(package_info_plus): support web 0.5.0 #2605
- feat(device_info_plus)!: migrate to package:web #2624
- feat(sensors_plus)!: Migrate to dart:js_interop #2697
- feat(battery_plus)!: Migrate to package:web #2720
When will be packages released?
Update 2024-03-20: Releases should be going out this week, if everything is correct.
Dependency Overrides
If you have web package conflicts, you can try to override the version using "dependency override" https://dart.dev/tools/pub/dependencies#dependency-overrides, but there is no warranty that versions are compatible. Do this under your own risk!
dependency_overrides:
web: ^0.5.0
Git Ref
You can also use a git ref to reference a specific commit in your pubspec.yml, so you don't have to wait for a package release. Do this under your own risk!
dependencies:
package_info_plus:
git:
url: https://github.com/fluttercommunity/plus_plugins.git
path: packages/package_info_plus/package_info_plus
ref: branch or commit sha
I have a version conflict with the package web
Due to the package web being fairly new, each new release can be potentially a major release, and will require a new plus plugin release.
You can try using dependency_overrides as explained above to fix the issue, although the code may not be compatible with the selected web version.
Latest Firebase Packages are incompatible with Plus Plugins Package
We are aware. This is due to Firebase plugins adding a dependency to web: ^0.5.0.
You can solve this issue with the dependency_overrides as mentioned before, until a new release with the updated dependency is released.
This will happen again when web: 0.6.0 is released!
Min Dart SDK version
Because web 0.5.0 depends on the sdk version 3.3.0, all plugins using this package will start using sdk >=3.3.0.
This may require using the latest stable Flutter releases.