alexeyinkin commented on code in PR #22154:
URL: https://github.com/apache/beam/pull/22154#discussion_r918658578


##########
playground/frontend/pubspec.yaml:
##########
@@ -44,6 +44,7 @@ environment:
 # the latest version available on pub.dev. To see which dependencies have newer
 # versions available, run `flutter pub outdated`.
 dependencies:
+  akvelon_flutter_issue_106664_workaround: ^0.1.1

Review Comment:
   This is how I compare these options:
   
   ## Local package in Beam repo, referenced in pubspec.yaml by relative path ##
   
   ++ **Totally under Apache's control.**
   -- **Low chance that anyone will update the code** if the behavior of the 
bug changes in some Flutter versions or browsers since people will just forget 
about the issue.
   
   ## In-project code ##
   
   Same as above, but
   -- **Even less chance anyone will update the code** since there is even no 
hint in pubspec.yaml that this is a issue.
   -- **The import of `dart:html` produces a linter warning** ("Avoid web 
libraries in non-web packages") that has to be silenced. This is one of the 
reasons I like outsourcing it to dedicated packages so the main code is 
platform-agnostic and warning-free.
   -- **Cannot be reused** in ToB or other projects even within the same Beam 
repository.
   
   ## Git repo, referenced by URL in pubspec.yaml ##
   
   ++ **Can be reused** in ToB (should it go in Flutter) or even other apps 
outside of Beam repository.
   ++ **Higher chance of receiving updates** since it is a separate unit at 
Akvelon.
   -- **The least robust way** from Apache's perspective since the repository 
can be removed, or hidden, or the branch can be force-pushed into a broken 
state.
   
   ## Pub.dev package ##
   
   All benefits of the above, and
   ++ **Package will always be there** since pub.dev does not allow to change 
or delete what was published, unlike git.
   ++ **Highest chance of receiving updates** since 3rd parties will adopt this 
too.
   ++ **Notification when the bug is fixed.** Pub.dev packages can be flagged 
as discontinued, and this will produce a warning on Playground build. It will 
hint the Playground maintainers to remove the package which will improve user 
experience (no selection losses on mouse out).
   
   So pub.dev package is not necessary, but I see it as the most beneficial way 
to all parties.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to