You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by xx...@apache.org on 2022/09/01 09:21:25 UTC

[kylin] 01/02: Refine how to contribute doc

This is an automated email from the ASF dual-hosted git repository.

xxyu pushed a commit to branch doc5.0
in repository https://gitbox.apache.org/repos/asf/kylin.git

commit 0957574d63a24022dd2bfdcc213b1a97d89942e2
Author: XiaoxiangYu <xx...@apache.org>
AuthorDate: Tue Aug 30 15:20:46 2022 +0800

    Refine how to contribute doc
---
 website/docs/development/how_to_contribute.md      |  48 +++++++++++++--------
 website/docs/development/how_to_write_doc.md       |  48 ++++++++++++---------
 website/docs/development/images/ISSUE_TEMPLATE.png | Bin 0 -> 680925 bytes
 website/docs/development/intro.md                  |  19 ++++++--
 website/docusaurus.config.js                       |   2 +-
 5 files changed, 73 insertions(+), 44 deletions(-)

diff --git a/website/docs/development/how_to_contribute.md b/website/docs/development/how_to_contribute.md
index ede3a86633..4715fe4a11 100644
--- a/website/docs/development/how_to_contribute.md
+++ b/website/docs/development/how_to_contribute.md
@@ -16,16 +16,20 @@ last_update:
     author: Tengting Xu, Xiaoxiang Yu
 ---
 
-Apache Kylin is always looking for contributions of not only code, but also usage document, performance report, Q&A etc. All kinds of contributions pave the way towards a Kylin Committer. There is opportunity for everyone, especially for those come from analysis and solution background, due to the lacking of content from user and solution perspective.
+Apache Kylin is always looking for contributions of not only code, but also user document, [performance report](https://cwiki.apache.org/confluence/display/KYLIN/Performance+Benchmark+Report+of+Kylin+4.0.0+vs+Kylin3.1.2+on+Hadoop), 
+[Q&A](https://cwiki.apache.org/confluence/display/KYLIN/FAQ+Kylin+4.X) etc. All kinds of contributions pave the way towards a [Apache Committer](https://www.apache.org/foundation/how-it-works.html#committers). 
+There is opportunity for [newcomers](https://community.apache.org/newcomers/index.html), especially for those come from analysis and solution background, due to the lacking of content from user and solution perspective.
 
 ### Source Branches
 Both code and document are under Git source control. Note the purpose of different branches.
 
-* `kylin5`: Development branch for v5.x
-* `doc5.0`: Document branch for v5.x
-* `main`: Maintenance branch for v4.x
-* `kylin3`: Maintenance branch for v2.x
-* `document`: Document branch for v4.x and before
+| Branch            | Category           |                 Comment                | 
+|:------------------|--------------------|:---------------------------------------|
+| **kylin5**        | Development branch | **Active** development branch for v5.x |
+| **doc5.0**        | Document branch    | Document branch for v5.x               |
+| **main**          | Maintenance branch | Maintenance branch for v4.x            |
+| **kylin3**        | Maintenance branch | Maintenance branch for v3.x     |
+| **document**      | Document branch    | Document branch for v4.x and before    |
 
 -----
 
@@ -37,7 +41,7 @@ Want to know what do different role(like contributor, committer and PMC member)
 
 ### Overall steps
 1. Fork [Apache Kylin Repo](https://github.com/apache/kylin) to your repository.
-2. Clone the fork repo to your local. It is recommended to [create a pull request from a fork](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork).
+2. Clone the fork repo to your local.
 3. Create a new development branch locally.
 4. [Setup development environment](how_to_debug_kylin_in_ide.md)
 5. [Pick or Create a JIRA](#open_issue), describe the feature/enhancement/bug.
@@ -46,29 +50,37 @@ Want to know what do different role(like contributor, committer and PMC member)
    - [ ] No strict code style at the moment, but the general rule is keep consistent with existing files. E.g. use 4-space indent for java files.
    - [ ] Add test case for your code change as much as possible.
    - [ ] Make sure [Run tests](how_to_test.md) can get success, this will ensure your change is in good quality and does not break anything.
-   - [ ] Sufficient unit test and integration test is a mandatory part of code change.
-8. Read [CODE REVIEW guidelines](#CodeReviewGuideline) and check if your code does not adhere to the guidelines, you may be asked to redo some work later if you forgot them.
+8. Read [Code Review Guidelines](#CodeReviewGuideline) and check if your code does **adhere to the guidelines**, you may be asked to redo some work later if you forgot them.
 9. [Create a pull request](#open_pull_request) for you code change.
 10. If you need to update doc, please check out [How to Write Document](./how_to_write_doc) for help.
 
+### Detailed Description of the steps
 
 #### <span id="open_issue">Step 4: Pick or create a task</span>
 There are open tasks waiting to be done, tracked by [KYLIN JIRA](http://issues.apache.org/jira/browse/KYLIN).
 If you want to create a new JIRA for bug or feature, remember to provide enough information for the community:
 
-* A well **summary** for the problem or feature
-* A detail **description**, which may include:
-    - the environment of this problem occurred
-      - Kylin version
-      - Hadoop/Spark version ...
-    - the steps to reproduce the problem
-    - the error trace or log files (as attachment)
-    - the metadata of the model or cube (as attachment)
+* A well **summary** for the problem or feature, like "Failed to read big resource /dict/xxxx at 'Build Dimension Dictionary' Step"
+* A correct **Type** of issue, choose 
+  - _New Feature_ , if you want to develop a brand-new function/feature by yourself
+  - _Improvement_ , if you find a way to improve an existent function/feature
+  - _Bug_ , if you find an existent function not works well as expected
+  - _Wish_ , if you want to a new function/feature and wish it will be developed by someone else
 * **Affected version**: which Kylin you're using.
+* A detailed **description**, which may include:
+  - the environment of this problem occurred
+    - Kylin version
+    - Hadoop/Spark version ...
+  - the steps to reproduce the problem
+  - the error [stacktrace](https://issues.apache.org/jira/secure/attachment/13048219/image-2022-08-17-13-17-40-751.png) or log files (as attachment)
+  - the metadata of the model or cube (as attachment)
+  - **Root cause**: For bug reports, provide root cause analysis if it is possible, here is an [example for root cause analysis](https://issues.apache.org/jira/browse/KYLIN-4153).
+
+![](images/ISSUE_TEMPLATE.png)
 
 #### <span id="mailing_list">Step 5: Discuss your proposal in mailing list</span>
 Do not forget to discuss in [mailing list](https://www.apache.org/foundation/mailinglists.html) before working on a big task.
-For how to discuss your idea/proposal in mailing list, please check this example : [Example for developer's proposal](https://lists.apache.org/thread/gtcntp4s8k0fz1d4glospq15sycc599x) .
+For how to discuss your idea/proposal in mailing list, please check [guide for ask good question](https://infra.apache.org/contrib-email-tips.html#usefulq) and [example for development's proposal](https://lists.apache.org/thread/gtcntp4s8k0fz1d4glospq15sycc599x) .
 
 :::caution subscribe a mailing list
 1. Before you sending mail to mailing list, please make sure you have subscribed a mailing list. Please [check this guide](https://www.apache.org/foundation/mailinglists.html#subscribing) if you don't know how to subscribe a mailing list.
diff --git a/website/docs/development/how_to_write_doc.md b/website/docs/development/how_to_write_doc.md
index f287873019..a8495eac73 100644
--- a/website/docs/development/how_to_write_doc.md
+++ b/website/docs/development/how_to_write_doc.md
@@ -21,7 +21,7 @@ From Kylin 5.0, Kylin community proposed to write documents using [Docusaurus](h
 ### Shortcut: Edit a single existent page
 
 :::caution
-1. If you found some minor typos or mistakes on a **single** page, you can quickly edit document in browser in quick way.
+1. If you found some minor typos or mistakes on a **single** page, you can edit document in browser in this way in several minutes.
 2. But if you want to add/edit **several** pages, upload images, or change global config files, please jump to next paragraph: [Before your work](#Before_your_work).
 :::
 
@@ -42,7 +42,7 @@ Before you add new documentation, please deploy the document compilation environ
 There are two steps:
 
 - [Install Node.js](#Install)
-- [Clone Github repo](#Download)
+- [Clone Github Repo](#Download)
 
 #### <span id="Install">Install Node.js</span>
 
@@ -50,7 +50,7 @@ First, make sure [Node.js](https://nodejs.org/en/download/) version 16.14 or abo
 
 When installing Node.js via **Windows/macOS Installer**, you are recommended to check all checkboxes related to dependencies. 
 
-#### <span id="Download">Clone Github repo</span>
+#### <span id="Download">Clone Github Repo</span>
 
 1. Clone the doc repo to any path you prefer.
 
@@ -135,17 +135,21 @@ DevelopmentSideBar: [
 
 
 #### Step 4: Preview in your local machine
-You can preview in your browser, to check exactly what it will look like, please run following commands in the `website` directory of repo folder:
+You can preview in your browser, please run following commands in the `website` directory, then access [doc5.0](http://127.0.0.1:3000) in your browser:
 
 ```
 npm run start
 ```
-Then access http://127.0.0.1:3000 in your browser.
+
+:::caution Checklist
+- [ ] Whether **look and feel** meet your expectation?
+- [ ] Whether the link/pictures works fine?
+- [ ] Whether the most important part was highlighted? You may [check this to highlight a paragraph](#highlight_paragraph).
+:::
 
 #### Step 5: Create a pull request
 If everything is normal, create a pull request to [Apache Kylin Repo](https://github.com/apache/kylin) and target branch is `doc5.0`.
 
-
 ----
 
 ### Documentation Specification
@@ -158,14 +162,14 @@ Apache Kylin's website and documentation is using [Docusaurus](https://docusauru
 
 #### Kylin document structure and navigation menu
 
-The Kylin [website as the Docusaurus source](https://github.com/apache/kylin/tree/document/doc5.0) is maintained under the `doc5.0` branch.
+The Kylin [website material](https://github.com/apache/kylin/tree/doc5.0) is maintained under the `doc5.0` branch.
 
 1. __Home Page__: Home page of Docs
 2. __Document__: General docs about Apache Kylin, including _Installation_, _Tutorial_, etc.
-3. __Development__: _"development"_ For developer to contribute, integration with other application and extend Apache Kylin
+3. __Development__: _"development"_ For developer to contribute, to develop, integration with other application and extend Apache Kylin
 4. __Download__: _"Download"_ Apache Kylin packages
 5. __Community__: Apache kylin Community information
-6. __Blog__: Technic blogs about Apache Kylin
+6. __Blog__: Engineering blogs about Apache Kylin
 
 #### Full doc structure
 
@@ -226,26 +230,28 @@ doc5.0
 
 More details about structure which managed by Docusaurus, please refer to [Project structure rundown](https://docusaurus.io/docs/installation#project-structure-rundown).
 
-#### Navigation menu
-
-The menu is managed by Docusaurus collection:
+#### Sidebar
+The Sidebar is managed by __sidebars.js__ , please refer to [Sidebar](https://docusaurus.io/docs/sidebar).
 
-* __sidebars.js__: All language version menu structure. Docusaurus can hold only one menu file to map any language version menu.
-
-More details about sidebars in Docusaurus, please refer to [Sidebar](https://docusaurus.io/docs/sidebar).
-
-
-#### How to add image
+#### How to add image in doc
 All image should be put under _images_ folder, in your document, please using below sample to include image:
 
 ```
-![](/images/how-to-write-doc-01.png)
+![](images/how-to-write-doc-01.png)
 ```
 
-
 #### How to link to another page
 Using relative path for site links, check this [Markdown links](https://docusaurus.io/docs/markdown-features/links)
 
 
-#### How to add code highlight
+#### How to add source code in doc
 We are using [Code Blocks Doc](https://docusaurus.io/docs/markdown-features/code-blocks) to highlight code syntax, check this doc for more detail sample.
+
+#### <span id="highlight_paragraph">How to highlight a sentence/paragraph</span>
+We recommend you to use [admonitions feature](https://docusaurus.io/docs/markdown-features/admonitions) to highlight a sentence/paragraph, following is a example:
+
+```
+:::caution
+Some **content** with _Markdown_ `syntax`. Check [this `api`](#).
+:::
+```
diff --git a/website/docs/development/images/ISSUE_TEMPLATE.png b/website/docs/development/images/ISSUE_TEMPLATE.png
new file mode 100644
index 0000000000..b1a6c448b0
Binary files /dev/null and b/website/docs/development/images/ISSUE_TEMPLATE.png differ
diff --git a/website/docs/development/intro.md b/website/docs/development/intro.md
index 6a693ac3c6..c33cd133d4 100644
--- a/website/docs/development/intro.md
+++ b/website/docs/development/intro.md
@@ -20,9 +20,20 @@ Check out the [How to Contribute](how_to_contribute.md) document.
 
 ### Source Repository
 Apache Kylin™ source code is version controlled using Git version control:
-Commits Summary
-Source Repo: https://github.com/apache/kylin
-Mirrored to Gitbox: https://gitbox.apache.org/repos/asf?p=kylin.git
+
+| Repository        |                      Link                       | 
+|:------------------|:------------------------------------------------|
+| Commits           |  https://github.com/apache/kylin/commits/kylin5 |
+| Source Repo       |  https://github.com/apache/kylin/               |
+| Mirrored to Gitbox| https://gitbox.apache.org/repos/asf?p=kylin.git |
+
 
 ### Issue Tracking
-Track issues on the “Kylin” Project on the [Apache JIRA](http://issues.apache.org/jira/browse/KYLIN)
\ No newline at end of file
+Track issues on the **Kylin Project** on the [Apache JIRA](http://issues.apache.org/jira/browse/KYLIN)
+
+### Wiki
+Please check [How to contribute wiki](https://cwiki.apache.org/confluence/display/KYLIN/How+to+contribute+wiki) .
+
+### Roadmap
+
+Please check [Roadmap of Kylin 5.0](./roadmap.md)
\ No newline at end of file
diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js
index 47612ab1af..008c020c89 100644
--- a/website/docusaurus.config.js
+++ b/website/docusaurus.config.js
@@ -149,7 +149,7 @@ const config = {
           },
           {
             type: 'doc',
-            docId: 'development/how_to_contribute',
+            docId: 'development/roadmap',
             position: 'left',
             label: 'Development',
           },