1
- # Contributing to Flutter Packages
2
-
3
- [ ![ Build Status] ( https://api.cirrus-ci.com/github/flutter/packages.svg )] ( https://cirrus-ci.com/github/flutter/packages/main )
4
-
5
- _ See also: [ Flutter's code of conduct] ( https://github.com/flutter/flutter/blob/master/CODE_OF_CONDUCT.md ) _
6
-
7
1
## Welcome
8
2
9
3
For an introduction to contributing to Flutter, see [ our contributor
@@ -16,15 +10,32 @@ Additional resources specific to the packages repository:
16
10
- [ Packages repository structure] ( https://github.com/flutter/flutter/wiki/Plugins-and-Packages-repository-structure ) ,
17
11
to get an overview of how this repository is laid out.
18
12
- [ Contributing to Plugins and Packages] ( https://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages ) ,
19
- for more information about how to make PRs for this repository.
13
+ for more information about how to make PRs for this repository, especially when
14
+ changing federated plugins.
15
+ - [ Plugin tests] ( https://github.com/flutter/flutter/wiki/Plugin-Tests ) , which explains
16
+ the different kinds of tests used for plugins, where to find them, and how to run them.
17
+ As explained in the Flutter guide,
18
+ [ ** PRs need tests** ] ( https://github.com/flutter/flutter/wiki/Tree-hygiene#tests ) , so
19
+ this is critical to read before submitting a plugin PR.
20
20
21
21
## Notes
22
22
23
23
### Style
24
24
25
- Flutter packages follow [ Flutter's style
26
- guide] ( https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo ) , with the
27
- exception that code is formatted with ` dart format ` .
25
+ Flutter packages and plugins follow Google style—or Flutter style for Dart—for the languages they
26
+ use, and use auto-formatters:
27
+ - [ Dart] ( https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo ) formatted
28
+ with ` dart format `
29
+ - [ C++] ( https://google.github.io/styleguide/cppguide.html ) formatted with ` clang-format `
30
+ - ** Note** : The Linux plugins generally follow idiomatic GObject-based C
31
+ style. See [ the engine style
32
+ notes] ( https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style )
33
+ for more details, and exceptions.
34
+ - [ Java] ( https://google.github.io/styleguide/javaguide.html ) formatted with
35
+ ` google-java-format `
36
+ - [ Objective-C] ( https://google.github.io/styleguide/objcguide.html ) formatted with
37
+ ` clang-format `
38
+ - [ Swift] ( https://google.github.io/swift/ ) formatted with ` swift-format `
28
39
29
40
### Releasing
30
41
0 commit comments