sw_engine image: code refactoring
[platform/core/graphics/tizenvg.git] / CONTRIBUTING.md
index 925b1a8..5713ff5 100644 (file)
@@ -1,10 +1,44 @@
-This page guides a format for your contribution.
+We always appreciate your contribution. ThorVG doesn't expect perfect patch contributions, instead we expect contributions if your patch makes thorvg better than before. This page guides the ThorVG contribution format.<br />
+<br />
+## Reviewers
+Hermet Park (hermet) is the lead maintainer. Also there are designated maintainers you can request your pull-request for separate modules.
 
+<b>common:</b> Junsu Choi (JSUYA) <br />
+<b>sw_engine:</b> Junsu Choi (JSUYA), Mira Grudzinska (mgrudzinska), Michal Szczecinski (mihashco) <br />
+<b>gl_engine:</b> Prudhvi Raj Vasireddi (prudhvirajv) <br />
+<b>svg_loader:</b> Junsu Choi (JSUYA), Mira Grudzinska (mgrudzinska), Michal Maciola (mmaciola) <br />
+<b>jpg_loader:</b> Michal Maciola (mmaciola) <br />
+<b>tvg_loader:</b> Michal Maciola (mmaciola) <br />
+<b>tvg_saver:</b> Mira Grudzinska (mgrudzinska) <br />
+<b>wasm:</b> Shinwoo Kim (kimcinoo), Michal Maciola (mmaciola) <br />
+<b>svg2png:</b> Junsu Choi (JSUYA), Michal Maciola (mmaciola) <br />
+<b>capi:</b> Michal Szczecinski (mihashco), Mira Grudzinska (mgrudzinska) <br />
+<br />
+
+## Self Test & Verification
+After updating ThorVG code, please verify your change doesn't break the library. We suggest unit-tests using the Catch2 framework. You can easily run it with build commands as the following: <br />
+<br/>
+`
+$meson . build -Dtests=true -Dloaders="all" -Dsavers="tvg" -Dbindings="capi" -Dtools="all" -Dlog=true
+`
+<br />
+`
+$ninja -C build test
+`
+<br/>
+<br/>
+Please make it sure running all tests and no any fail case.<br/>
+<br/>
+Expected Fail:      0<br/>
+Fail:               0<br/>
+Unexpected Pass:    0<br/>
+Skipped:            0<br/>
+Timeout:            0<br/>
+<br/>
 ## Commit Message
-[Module][Feature] - [Title]
+[Module][Feature]: [Title]
 
 [Description]
-##
 
 - [Module] is a sub module majorly affected by your change. Most of times this indicates a sub folder name.
 This indicates whom need to review your patch as well.
@@ -39,23 +73,36 @@ You can keep the file name, but don't please contain any prefix(tvg) nor suffix(
   
   Lastly, please append any issue ticket numbers in this section if any.
   
-  - ex) common composite: newly added path clipping feature
+  
+- Here is a overall commit message what we expect to review:
+  
+  - common composite: newly added path clipping feature
 
     We introduced new method Paint::composite() to support composite behaviors. </br>
     This allows paints to composite with other paints instances. </br>
-    Composite behaviors depends on its compoite method type. </br>
+    Composite behaviors depend on its composite method type. </br>
     Here we firstly introduced "ClipPath" method to support clipping by path unit of paint.</br>    
     
-    tagetPaint->composite(srcPaint, CompoisiteMethod::ClipPath);</br>
+    tagetPaint->composite(srcPaint, CompositeMethod::ClipPath);</br>
     
     Beaware if the source paint doesn't contain any path info, clipping won't be applied as you expected.
     
     @API Additions:</br>
     enum CompositeMethod {None = 0, ClipPath}; </br>
-    Result Paint::composite(std::unique_ptr<Paint> target, CompMethod method) const noexcept;</br>
+    Result Paint::composite(std::unique_ptr<Paint> target, CompositeMethod method) const noexcept;</br>
 
     @Examples: added ClipPath</br>
+    
+    @References: any links to the references such as screenshot images.
 
     @Issues: 49
+<br />
+
+## Pull Request
   
-  
+Once you submitted a pull request(PR), please make it sure below check list.
+-  Reviewers: Check Reviewers List
+-  Assignees: You
+-  Labels: Patch Purpose
+-  CODING STYLE CHECK: Must be perfect
+<p align="center"><img width="1000" height="1072" src="https://github.com/Samsung/thorvg/blob/master/res/contribution.png"></p>