xref: /aosp_15_r20/external/MPAndroidChart/CONTRIBUTING.md (revision f99be7d8b6514e88ac10f2e78d89d406712b34e9)
1*f99be7d8SXin Li> ### Notice
2*f99be7d8SXin Li> *Before you continue, this is the* **ANDROID** *library. If you have an* **iOS** *device, please go here instead*:
3*f99be7d8SXin Li>
4*f99be7d8SXin Li> – https://github.com/danielgindi/Charts
5*f99be7d8SXin Li>
6*f99be7d8SXin Li> They might tell you to come back here, if they do, listen to them and ignore this notice.
7*f99be7d8SXin Li
8*f99be7d8SXin Li# How to contribute
9*f99be7d8SXin Li
10*f99be7d8SXin LiBug-fixes and features often come from users of the MPAndroidChart library and improve it greatly. We want to keep it as easy as possible to contribute changes that improve the experience for users all around the world. There are a few guidelines that we need contributors to follow so that we can have a chance of keeping on top of things.
11*f99be7d8SXin Li
12*f99be7d8SXin Li## Creating Issues
13*f99be7d8SXin Li
14*f99be7d8SXin LiThere are two main issue templates, one for bugs and another for feature requests. Please use them! You're issue will be much easier to understand, and bugs easier to fix, if you follow the templates. If your issue doesn't fit into those, just use the generic template.
15*f99be7d8SXin Li
16*f99be7d8SXin LiSearch existing [issues] to see if your bug has already been reported or if a feature request already exists. Don't forget to remove `is:open` so you see all the issues! If you find that one already exists, use reactions to show how much you care!
17*f99be7d8SXin Li
18*f99be7d8SXin Li## Making Pull Requests
19*f99be7d8SXin Li
20*f99be7d8SXin LiCareful! If you fail to follow these guidlines, you're pull request may be closed, *even if it's really awesome*.
21*f99be7d8SXin Li
22*f99be7d8SXin Li  0. **Search** open [pull requests] AND existing [issues] to make sure what you want to do isn't already being worked on or already has an open pull request.
23*f99be7d8SXin Li  1. **Fork** the repository
24*f99be7d8SXin Li  1. **Create** a new branch based on `master`, and name it according to your changes
25*f99be7d8SXin Li  1. **Add** your commits, they MUST follow the [Commit Style](#commit-style) below
26*f99be7d8SXin Li  1. **Test** your changes by actually running the example app, or create a new example
27*f99be7d8SXin Li  1. **Create** a pull request, following the auto-generated template
28*f99be7d8SXin Li  1. ???
29*f99be7d8SXin Li  1. Profit :money_with_wings:
30*f99be7d8SXin Li
31*f99be7d8SXin LiYou are encouraged to use [GitHub Desktop] to inspect your code changes before committing them. It can reveal small changes that might have gone unnoticed, and would be requested for removal before merging.
32*f99be7d8SXin Li
33*f99be7d8SXin LiCheck out [#3975](https://github.com/PhilJay/MPAndroidChart/pull/3975) for an example of a good-made-better pull request.
34*f99be7d8SXin Li
35*f99be7d8SXin Li## Commit Style
36*f99be7d8SXin Li
37*f99be7d8SXin Li  * **Make commits of logical units**
38*f99be7d8SXin Li  Don't load your commits with tons of changes, this makes it hard to follow what is happening. However, if you have done a lot of work, and there are commits and merges all over the place, squash them down into fewer commits.
39*f99be7d8SXin Li
40*f99be7d8SXin Li  * **Conform to the code style**
41*f99be7d8SXin Li  It's easy, just look around!
42*f99be7d8SXin Li
43*f99be7d8SXin Li  * **Write good commit messages**
44*f99be7d8SXin Li  You may prefer [Tim Pope's style], you might like the [commitizen-friendly] way. Regardless of the color you pick, you MUST stay within the lines!
45*f99be7d8SXin Li  ```
46*f99be7d8SXin LiThe commit title CANNOT exceed 50 characters
47*f99be7d8SXin Li
48*f99be7d8SXin LiThe body of the message comes after an empty new line, and describes the
49*f99be7d8SXin Lichanges more thoroughly. If the change is obvious and self-explanatory
50*f99be7d8SXin Lifrom the title, you can omit the body. You should describe all changes
51*f99be7d8SXin Liif many were made, or maybe some trickery that only code wizards can
52*f99be7d8SXin Liunderstand.
53*f99be7d8SXin Li
54*f99be7d8SXin LiBe polite and wrap your lines to 72 characters, but if you prefer going
55*f99be7d8SXin Lito 100 characters then I guess we can't stop you.
56*f99be7d8SXin Li```
57*f99be7d8SXin Li
58*f99be7d8SXin Li## Final Notes
59*f99be7d8SXin Li
60*f99be7d8SXin LiThanks for reading the contributing file! Have some cake! :cake:
61*f99be7d8SXin Li
62*f99be7d8SXin Li[issues]: https://github.com/PhilJay/MPAndroidChart/issues
63*f99be7d8SXin Li[pull requests]: https://github.com/PhilJay/MPAndroidChart/pulls
64*f99be7d8SXin Li[GitHub Desktop]: https://desktop.github.com/
65*f99be7d8SXin Li[Tim Pope's style]: https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
66*f99be7d8SXin Li[commitizen-friendly]: https://github.com/commitizen/cz-cli
67