Skip to content

flutter/plugins needs a better releasing process #27258

@mklim

Description

@mklim

Releasing plugin updates has a few surprise gotchas right now. We could use at least some docs on it, maybe a better process.

  • No docs or formalized sanity checks on when the packages should be released. (Presumably after CI runs on the squashed master commit and it's green? Should there be any other manual checks run, ie to make sure the version bump matches the scale of the change?) See Plugins are broken since move to AndroidX #27106.
  • No automated reminders to publish a package, so it's possible to forget to publish a package entirely. See firebase_auth 0.6.7 doesn't exist #27247 and Publish firebase_auth 0.7.0 #26374.
  • pub publish publishes literally everything in the directory, not just what's tracked in git, so maintainers need to make sure their local directory is completely clear. (There are some cases where this is especially dangerous. in_app_purchase has an example app that needs unique release signing information stored locally to work. This is added to the .gitignore but would still be uploaded by pub if present.)
  • Sometimes plugins are in a state where they should not be published (in_app_purchase is currently in this state while it's under intense development), and right now there's no clear way that these are marked.
  • We probably should warn against releasing things closer to the weekend and have some suggested manual steps on how to monitor the plugin after rollout.

ETA 11/25/19:

  • No form of error monitoring, so it's possible to push a release and realize belatedly that it had some critical bug.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work listc: contributor-productivityTeam-specific productivity, code health, technical debt.d: wikiFlutter or engine wikispackageflutter/packages repository. See also p: labels.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions