-
Notifications
You must be signed in to change notification settings - Fork 479
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PS-9255 Adding CONTRIBUTING.md file #5445
base: 8.0
Are you sure you want to change the base?
PS-9255 Adding CONTRIBUTING.md file #5445
Conversation
db1d2ed
to
3605816
Compare
3605816
to
bfadb2c
Compare
bfadb2c
to
a67d186
Compare
* Contribute to [the documentation](https://github.com/percona/psmysql-docs/blob/innovation-release/contributing.md) | ||
* Reach us on our [ Forums ](https://forums.percona.com/c/mysql-mariadb) | ||
|
||
This document describes the workflow for submitting pull requests. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should list the steps in the workflow.
As a user, I want to know the steps and how complicated this process is BEFORE I start.
|
||
As soon as Jira issue is submitted, you are ready to start coding. | ||
|
||
## Working with the Source Code |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same thing - list the steps to work with the source code before I start.
|
||
### Before you start coding | ||
|
||
In the cloned local repository checkout the "trunk" branch you are going to work on. For 8.0.X releases is 8.0. For |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need a glossary - will the user automatically know these terms?
Very short definition of the issue | ||
``` | ||
|
||
The next step is to compile the code in your new branch before making changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should have a heading for each step - fork, compile, and so on.
``` | ||
|
||
The next step is to compile the code in your new branch before making changes. | ||
At his point, you need to fetch third-party code which is organized as Git sub-modules. Go to the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this point
|
||
The Git will fetch required third-party modules into the source tree. | ||
|
||
### First build of the source code |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Build the source code or build the project? Unclear.
|
||
``` | ||
|
||
Compiling from a source requires patience. MySQL has many dependencies on different libraries. The good hint is to install build dependencies for the "upstream" version of MySQL. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be moved to "Compiling" header. The user needs to have an idea how long the process takes.
|
||
Another hint is to check [ documentation on compilation ](https://docs.percona.com/percona-server/8.0/compile-percona-server.html) . | ||
|
||
If it does not help, we recommend a try and fail approach to installing the development packages. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why would the user persist in compiling the code?
./mtr main.1st | ||
``` | ||
|
||
### Coding ... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is more about setting the debug environment.
tests to cover your specific case. For the introduction of new features, the development of a comprehensive test suite | ||
is strongly recommended. | ||
|
||
## Preparing the Pool Request |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request - it says Pool Request
After finishing the tasks outlined above, you must prepare your branch for a pull request. | ||
Please do not forget to run ``` git clang-format ``` on your code before pushing to the GitHub repository. | ||
|
||
Then, squash all commits to one or a couple of logically consistent commits. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's confusing. I understand squashing to one, but how do you squash to a couple of commits? What makes a commit logically consistent?
description. The second line is usually a link to the Jira issue. Then the short description follows. No need to write a | ||
long description because you wrote one in the Jira issue. | ||
|
||
Example of a pool request form: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Example of a pull request (not pool request)
``` | ||
PS-9876 Fix of the compression bug | ||
``` | ||
Descriptopn: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Description
|
||
### Peer review | ||
|
||
Peer review of the code always goes before PR merge. So, you have to add some core development team members in the "Reviewers" field of PR. Best guess is to assign the PR to Yura Sorokin, our team lead. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just say add Yura as a reviewer.
|
||
Congratulations! You are now a recognized contributor. | ||
|
||
## Your Code and MySQL Versions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be moved to the beginning. It's a little late to talk about versioning.
time. | ||
|
||
We use a "train" approach. It means, that if some code is already in one of the "trunk" branches before the official | ||
upstream release, it will be released in Percona's distribution of new release. So, if we are already in the process of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Confusing.
"it will be released in Percona's distribution of a new release" - we have a Distribution release - are you talking about that or what? What is a distribution of a new release?"
PS-9255 Adding CONTRIBUTING.md file
https://perconadev.atlassian.net/browse/PS-9255