tree 5bdfdbec72539bc43154a25de510f0970d38522e
parent 08ba6bdd1e2bbfcbbcb888d06c370fff30b87fa7
author stuartmorgan <stuartmorgan@google.com> 1644437863 -0500
committer GitHub <noreply@github.com> 1644437863 -0800
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJiBCFnCRBK7hj4Ov3rIwAA43sIAApt62hd/sO4BYKmPqbMWPE0
 XrDwrBsCHq4Q3lon3TE5QHJaeGl3ir8UsTAZ8cN+nFswfqFZAXuEGwnFq3fqI2CI
 vpX3X2kXsX0LufaoLLvIYRGlQCb5+WRct9CiygFBT+5tTcJbXRAd8VST5veIyc3q
 kXWs3k8/UCj0zLVJv2H75xVa91RxjcP/S23B6993LoxUC+7bVLfkvHw52VVJ5xYC
 BYeYyT1UalXdQ7en16ITsFTuYLZ06R7PXV5iW9JlgH9cGuO4YRr3u42HBocQIU9M
 nvf6edRA2+V9XocEVPSfduFy97OrgcdP5wjY3tq+X3HbDWO5IlK5g1LhT1U7i48=
 =6rKD
 -----END PGP SIGNATURE-----
 

[url_launcher] Major version bump for desktop Dart-based url_launcher implementations (#4777)

https://github.com/flutter/plugins/pull/4719 converted the url_launcher implementations to Dart-based versions. This should have been completely transparent to clients, but there is a latent bug in `url_launcher` where the `default_package` entries for Linux, macOS, and Windows are incorrect. This went unnoticed until now because currently the only client-facing effect of `default_package` is in resolving which implementation to run Dart registration for. Because of the typos in the `default_package` entries, the resolution in the `flutter` tool doesn't recognize the registration for these packages as needing to run, causing them to be broken at runtime.

The affected versions have been retracted to fix the breakage in the short term. This is PR is the first half of the long-term fix; it re-releases them as a major version bump so that existing versions of `url_launcher` will not pick them up. Once they are published, a follow-up PR will update `url_launcher` to fix the typos and relax the version constraints for the dependencies on these implementation packages to allow 2.x or 3.x. (In theory this could be one PR, but doing it as two ensures that we get real testing on the `url_launcher` change, so is safer.)

Part of a long-term fix for https://github.com/flutter/flutter/issues/98097