Skip to content
This repository has been archived by the owner on Feb 22, 2023. It is now read-only.

Mass pubspec.yaml cleanup #3927

Merged
merged 7 commits into from May 21, 2021
Merged

Conversation

stuartmorgan
Copy link
Contributor

Regularizes the pubspec.yaml files of the plugins:

  • Changes from homepage to repository to improve the linking on pub.dev.
  • Adds an issue_tracker link that links directly to a search on that plugin's label, to improve the linking on pub.dev.
  • Standardizes the section order as environment, flutter, dependencies, dev_dependencies. This matches the current template, except that flutter is higher as it's critical information in a plugin (which should potentially be revisited in the template).
  • Sorts dependencies within each section.
  • Updates the Flutter SDK versions to 2.0.0; in practice this is already the case due to the Dart SDK version requirement, so this just makes it less confusing.
  • Standardizes the location of version in the initial block.

Changes that were considered out of scope:

  • Actually cleaning up dependencies (e.g., removing meta where it's no longer needed). The goal was to make this PR as mechanical as possible, and to not change any actual behavior).
  • The example/ pubspecs (just to limit the scope of the PR; we should eventually clean those up too).
  • Plugins that have Plus Plugin equivalents, per repo policy, as this is a non-critical change.

This does not update versions; these changes can be picked up the next time the plugins happen to be published.

This also doesn't add automated enforcement. We should consider that in the future though; filed as flutter/flutter#82913

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides. (Note that unlike the flutter/flutter repo, the flutter/plugins repo does use dart format. See plugin_tool format)
  • I signed the CLA.
  • The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
  • I listed at least one issue that this PR fixes in the description above.
  • I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
  • I updated CHANGELOG.md to add a description of the change.
  • I updated/added relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test exempt.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Copy link
Member

@ditman ditman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems you got the pubspecs to a common standardized format (environment, flutter, deps, dev_deps) and sorted dependencies alphabetically...

Is there a lint to keep the pubspec.yaml files this clean after this is merged? Or should we keep an eye out during PRs?

@ditman
Copy link
Member

ditman commented May 19, 2021

(Never mind, I've just seen your note)

This also doesn't add automated enforcement. We should consider that in the future though; filed as flutter/flutter#82913

@stuartmorgan stuartmorgan merged commit 388f916 into flutter:master May 21, 2021
@stuartmorgan stuartmorgan deleted the pubspec-cleanup branch May 21, 2021 15:34
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 21, 2021
fotiDim pushed a commit to fotiDim/plugins that referenced this pull request Sep 13, 2021
Regularizes the pubspec.yaml files of the plugins:
- Changes from `homepage` to `repository` to improve the linking on pub.dev.
- Adds an `issue_tracker` link that links directly to a search on that plugin's label, to improve the linking on pub.dev.
- Standardizes the section order as `environment`, `flutter`, `dependencies`, `dev_dependencies`. This matches the current template, except that `flutter` is higher as it's critical information in a plugin (which should potentially be revisited in the template).
- Sorts dependencies within each section.
- Updates the Flutter SDK versions to 2.0.0; in practice this is already the case due to the Dart SDK version requirement, so this just makes it less confusing.
- Standardizes the location of `version` in the initial block.

Changes that were considered out of scope:
- Actually cleaning up dependencies (e.g., removing meta where it's no longer needed). The goal was to make this PR as mechanical as possible, and to not change any actual behavior).
- The example/ pubspecs (just to limit the scope of the PR; we should eventually clean those up too).
- Plugins that have Plus Plugin equivalents, per repo policy, as this is a non-critical change.

This does not update versions; these changes can be picked up the next time the plugins happen to be published.

This also doesn't add automated enforcement. We should consider that in the future though; filed as flutter/flutter#82913
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.