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

github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/incubator-tubemq-website.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new ea9743c  Automated deployment: Fri Mar  5 11:40:49 UTC 2021 
cd1d888847f19b514f5e99ae4e8b706165197a52
ea9743c is described below

commit ea9743c63bccbe1ae9fed02b6b9ff75ce6c95fc6
Author: gosonzhang <[email protected]>
AuthorDate: Fri Mar 5 11:40:49 2021 +0000

    Automated deployment: Fri Mar  5 11:40:49 UTC 2021 
cd1d888847f19b514f5e99ae4e8b706165197a52
---
 build/blog.js                          |  22 +-
 build/blogDetail.js                    |  22 +-
 build/community.js                     |  22 +-
 build/documentation.js                 |  22 +-
 build/home.js                          |  22 +-
 docs/en-us/download/download.md        |   9 +-
 docs/en-us/download/release-0.8.0.md   | 102 ++++++++
 docs/zh-cn/download/download.md        |   8 +-
 docs/zh-cn/download/release-0.8.0.md   | 100 ++++++++
 en-us/docs/download/download.html      |  10 +-
 en-us/docs/download/download.json      |   2 +-
 en-us/docs/download/download.md        |   9 +-
 en-us/docs/download/release-0.8.0.html | 446 +++++++++++++++++++++++++++++++++
 en-us/docs/download/release-0.8.0.json |   8 +
 en-us/docs/download/release-0.8.0.md   | 102 ++++++++
 zh-cn/docs/download/download.html      |  10 +-
 zh-cn/docs/download/download.json      |   2 +-
 zh-cn/docs/download/download.md        |   8 +-
 zh-cn/docs/download/release-0.8.0.md   | 100 ++++++++
 19 files changed, 963 insertions(+), 63 deletions(-)

diff --git a/build/blog.js b/build/blog.js
index 0626b6f..1e0c0bd 100644
--- a/build/blog.js
+++ b/build/blog.js
@@ -1,16 +1,16 @@
-!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
+!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
   Copyright (c) 2017 Jed Watson.
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
+!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
 //! moment.js
-return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Ar,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
+return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Ar,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
 object-assign
 (c) Sindre Sorhus
 @license MIT
 */
-var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
+var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
 //! moment.js locale configuration
 var t=function(e){return 
0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},n={s:["أقل من 
ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d 
ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d 
دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d 
ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d 
أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d 
أشهر","%d شهرا","%d ش [...]
 //! moment.js locale configuration
@@ -142,7 +142,7 @@ var 
t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:
 //! moment.js locale configuration
 function t(e,t){var n=e.split("_");return 
t%10==1&&t%100!=11?n[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?n[1]:n[2]}function
 n(e,n,r){var 
o={ss:n?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:n?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:n?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===r?n?"хвилина":"хвилину":"h"===r?n?"година":"годину":e+"
 "+t(o[r],+e)}function r(e,t){var n,r={nominative:"неділя_ [...]
 //! moment.js locale configuration
-var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
+var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
  * react-is.production.min.js
  *
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -150,20 +150,20 @@ var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جو
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
  */
-var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
- * UAParser.js v0.7.23
+var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
 !function(o,i){"use strict";var 
a="model",c="name",s="type",l="vendor",u="version",f="mobile",p="tablet",d="smarttv",h={extend:function(e,t){var
 n={};for(var r in 
e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return 
n},has:function(e,t){return"string"==typeof 
e&&-1!==t.toLowerCase().indexOf(e.toLowerCase())},lowerize:function(e){return 
e.toLowerCase()},major:function(e){/*!
- * UAParser.js v0.7.23
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
-return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
+return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
diff --git a/build/blogDetail.js b/build/blogDetail.js
index ed91762..94572dc 100644
--- a/build/blogDetail.js
+++ b/build/blogDetail.js
@@ -1,16 +1,16 @@
-!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
+!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
   Copyright (c) 2017 Jed Watson.
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
+!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
 //! moment.js
-return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Yr,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
+return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Yr,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
 object-assign
 (c) Sindre Sorhus
 @license MIT
 */
-var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
+var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
 //! moment.js locale configuration
 var t=function(e){return 
0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},n={s:["أقل من 
ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d 
ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d 
دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d 
ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d 
أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d 
أشهر","%d شهرا","%d ش [...]
 //! moment.js locale configuration
@@ -142,7 +142,7 @@ var 
t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:
 //! moment.js locale configuration
 function t(e,t){var n=e.split("_");return 
t%10==1&&t%100!=11?n[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?n[1]:n[2]}function
 n(e,n,r){var 
o={ss:n?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:n?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:n?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===r?n?"хвилина":"хвилину":"h"===r?n?"година":"годину":e+"
 "+t(o[r],+e)}function r(e,t){var n,r={nominative:"неділя_ [...]
 //! moment.js locale configuration
-var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
+var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
  * react-is.production.min.js
  *
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -150,20 +150,20 @@ var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جو
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
  */
-var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
- * UAParser.js v0.7.23
+var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
 !function(o,i){"use strict";var 
a="model",c="name",s="type",l="vendor",u="version",f="mobile",p="tablet",d="smarttv",h={extend:function(e,t){var
 n={};for(var r in 
e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return 
n},has:function(e,t){return"string"==typeof 
e&&-1!==t.toLowerCase().indexOf(e.toLowerCase())},lowerize:function(e){return 
e.toLowerCase()},major:function(e){/*!
- * UAParser.js v0.7.23
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
-return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
+return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
diff --git a/build/community.js b/build/community.js
index d6e8b57..04d86b0 100644
--- a/build/community.js
+++ b/build/community.js
@@ -1,16 +1,16 @@
-!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
+!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
   Copyright (c) 2017 Jed Watson.
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
+!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
 //! moment.js
-return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Ar,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
+return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Ar,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
 object-assign
 (c) Sindre Sorhus
 @license MIT
 */
-var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
+var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
 //! moment.js locale configuration
 var t=function(e){return 
0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},n={s:["أقل من 
ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d 
ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d 
دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d 
ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d 
أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d 
أشهر","%d شهرا","%d ش [...]
 //! moment.js locale configuration
@@ -142,7 +142,7 @@ var 
t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:
 //! moment.js locale configuration
 function t(e,t){var n=e.split("_");return 
t%10==1&&t%100!=11?n[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?n[1]:n[2]}function
 n(e,n,r){var 
o={ss:n?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:n?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:n?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===r?n?"хвилина":"хвилину":"h"===r?n?"година":"годину":e+"
 "+t(o[r],+e)}function r(e,t){var n,r={nominative:"неділя_ [...]
 //! moment.js locale configuration
-var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
+var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
  * react-is.production.min.js
  *
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -150,20 +150,20 @@ var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جو
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
  */
-var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
- * UAParser.js v0.7.23
+var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
 !function(o,i){"use strict";var 
a="model",c="name",s="type",l="vendor",u="version",f="mobile",p="tablet",d="smarttv",h={extend:function(e,t){var
 n={};for(var r in 
e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return 
n},has:function(e,t){return"string"==typeof 
e&&-1!==t.toLowerCase().indexOf(e.toLowerCase())},lowerize:function(e){return 
e.toLowerCase()},major:function(e){/*!
- * UAParser.js v0.7.23
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
-return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
+return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
diff --git a/build/documentation.js b/build/documentation.js
index 567ee29..5d3bb6c 100644
--- a/build/documentation.js
+++ b/build/documentation.js
@@ -1,16 +1,16 @@
-!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
+!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
   Copyright (c) 2017 Jed Watson.
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
+!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
 //! moment.js
-return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Yr,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
+return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Yr,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
 object-assign
 (c) Sindre Sorhus
 @license MIT
 */
-var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
+var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
 //! moment.js locale configuration
 var t=function(e){return 
0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},n={s:["أقل من 
ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d 
ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d 
دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d 
ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d 
أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d 
أشهر","%d شهرا","%d ش [...]
 //! moment.js locale configuration
@@ -142,7 +142,7 @@ var 
t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:
 //! moment.js locale configuration
 function t(e,t){var n=e.split("_");return 
t%10==1&&t%100!=11?n[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?n[1]:n[2]}function
 n(e,n,r){var 
o={ss:n?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:n?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:n?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===r?n?"хвилина":"хвилину":"h"===r?n?"година":"годину":e+"
 "+t(o[r],+e)}function r(e,t){var n,r={nominative:"неділя_ [...]
 //! moment.js locale configuration
-var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
+var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
  * react-is.production.min.js
  *
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -150,20 +150,20 @@ var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جو
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
  */
-var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
- * UAParser.js v0.7.23
+var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
 !function(o,i){"use strict";var 
a="model",c="name",s="type",l="vendor",u="version",f="mobile",p="tablet",d="smarttv",h={extend:function(e,t){var
 n={};for(var r in 
e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return 
n},has:function(e,t){return"string"==typeof 
e&&-1!==t.toLowerCase().indexOf(e.toLowerCase())},lowerize:function(e){return 
e.toLowerCase()},major:function(e){/*!
- * UAParser.js v0.7.23
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
-return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
+return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
diff --git a/build/home.js b/build/home.js
index 7bf8ef6..819c15c 100644
--- a/build/home.js
+++ b/build/home.js
@@ -1,16 +1,16 @@
-!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
+!function(e){function t(r){if(n[r])return n[r].exports;var 
o=n[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var 
n={};t.m=e,t.c=n,t.i=function(e){return 
e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var
 n=e&&e.__esModule?function(){return e.default}:function(){return e};return 
t.d(n,"a",n),n},t.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},t.p="/build/",t(t.s=122 [...]
   Copyright (c) 2017 Jed Watson.
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
 */
-!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
+!function(){"use strict";function n(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var a=n.apply(null,r);a&&e.push(a)}else 
if("object"===o)for(var c in r)i.call(r,c)&&r[c]&&e.push(c)}}return e.join(" 
")}var i={}.hasOwnProperty;void 
0!==e&&e.exports?(n.default=n,e.exports=n):(r=[],void 0!==(o=function(){return 
n}.apply(t,r))&&(e.exports=o))}()},function(e,t,n){(function(e){var t [...]
 //! moment.js
-return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Ar,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
+return 
sa.isValid=Dt,sa.abs=zr,sa.add=Nr,sa.subtract=Vr,sa.as=Ir,sa.asMilliseconds=Ki,sa.asSeconds=Wi,sa.asMinutes=Bi,sa.asHours=Ui,sa.asDays=qi,sa.asWeeks=Gi,sa.asMonths=Ji,sa.asQuarters=Xi,sa.asYears=$i,sa.valueOf=Kr,sa._bubble=Ar,sa.clone=Br,sa.get=Ur,sa.milliseconds=Zi,sa.seconds=Qi,sa.minutes=ea,sa.hours=ta,sa.days=na,sa.weeks=Gr,sa.months=ra,sa.years=oa,sa.humanize=Qr,sa.toISOString=to,sa.toString=to,sa.toJSON=to,sa.locale=Pn,sa.localeData=jn,sa.toIsoString=M("toIsoString()
 is depr [...]
 object-assign
 (c) Sindre Sorhus
 @license MIT
 */
-var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
+var 
o=Object.getOwnPropertySymbols,i=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var
 e=new 
String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map(function(e){return
 t[e]}).join(""))return!1;var 
r={};return"abcdefghijklmnopqrst".split("").forEach(function(e){r[e]=e}),"abcdefghijklmn
 [...]
 //! moment.js locale configuration
 var t=function(e){return 
0===e?0:1===e?1:2===e?2:e%100>=3&&e%100<=10?3:e%100>=11?4:5},n={s:["أقل من 
ثانية","ثانية واحدة",["ثانيتان","ثانيتين"],"%d ثوان","%d ثانية","%d 
ثانية"],m:["أقل من دقيقة","دقيقة واحدة",["دقيقتان","دقيقتين"],"%d دقائق","%d 
دقيقة","%d دقيقة"],h:["أقل من ساعة","ساعة واحدة",["ساعتان","ساعتين"],"%d 
ساعات","%d ساعة","%d ساعة"],d:["أقل من يوم","يوم واحد",["يومان","يومين"],"%d 
أيام","%d يومًا","%d يوم"],M:["أقل من شهر","شهر واحد",["شهران","شهرين"],"%d 
أشهر","%d شهرا","%d ش [...]
 //! moment.js locale configuration
@@ -142,7 +142,7 @@ var 
t={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:
 //! moment.js locale configuration
 function t(e,t){var n=e.split("_");return 
t%10==1&&t%100!=11?n[0]:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?n[1]:n[2]}function
 n(e,n,r){var 
o={ss:n?"секунда_секунди_секунд":"секунду_секунди_секунд",mm:n?"хвилина_хвилини_хвилин":"хвилину_хвилини_хвилин",hh:n?"година_години_годин":"годину_години_годин",dd:"день_дні_днів",MM:"місяць_місяці_місяців",yy:"рік_роки_років"};return"m"===r?n?"хвилина":"хвилину":"h"===r?n?"година":"годину":e+"
 "+t(o[r],+e)}function r(e,t){var n,r={nominative:"неділя_ [...]
 //! moment.js locale configuration
-var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
+var 
t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جولائی","اگست","ستمبر","اکتوبر","نومبر","دسمبر"],n=["اتوار","پیر","منگل","بدھ","جمعرات","جمعہ","ہفتہ"];return
 
e.defineLocale("ur",{months:t,monthsShort:t,weekdays:n,weekdaysShort:n,weekdaysMin:n,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D
 MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd، D MMMM YYYY 
HH:mm"},meridiemParse:/صبح|شام/,isPM:function(e){return"شام"===e},meridiem:function(e,t,n){return
 e<12?"صبح":"شام"},calendar [...]
  * react-is.production.min.js
  *
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -150,20 +150,20 @@ var t=["جنوری","فروری","مارچ","اپریل","مئی","جون","جو
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
  */
-var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
- * UAParser.js v0.7.23
+var i="function"==typeof 
Symbol&&Symbol.for,a=i?Symbol.for("react.element"):60103,c=i?Symbol.for("react.portal"):60106,s=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode"):60108,u=i?Symbol.for("react.profiler"):60114,f=i?Symbol.for("react.provider"):60109,p=i?Symbol.for("react.context"):60110,d=i?Symbol.for("react.async_mode"):60111,h=i?Symbol.for("react.concurrent_mode"):60111,m=i?Symbol.for("react.forward_ref"):60112,v=i?Symbol.for("react.suspense"):60113,y=i?Symb
 [...]
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
 !function(o,i){"use strict";var 
a="model",c="name",s="type",l="vendor",u="version",f="mobile",p="tablet",d="smarttv",h={extend:function(e,t){var
 n={};for(var r in 
e)t[r]&&t[r].length%2==0?n[r]=t[r].concat(e[r]):n[r]=e[r];return 
n},has:function(e,t){return"string"==typeof 
e&&-1!==t.toLowerCase().indexOf(e.toLowerCase())},lowerize:function(e){return 
e.toLowerCase()},major:function(e){/*!
- * UAParser.js v0.7.23
+ * UAParser.js v0.7.24
  * Lightweight JavaScript-based User-Agent string parser
  * https://github.com/faisalman/ua-parser-js
  *
- * Copyright © 2012-2019 Faisal Salman <[email protected]>
+ * Copyright © 2012-2021 Faisal Salman <[email protected]>
  * Licensed under MIT License
  */
-return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
+return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 
0},trim:function(e){return 
e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var
 n,r,o,i,a,c,s=0;s<t.length&&!a;){var 
l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof
 i&&i.length>0?2==i.length?"function"==typeof 
i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof
 i[1]||i[1].exec&&i[1].test?this[i [...]
\ No newline at end of file
diff --git a/docs/en-us/download/download.md b/docs/en-us/download/download.md
index e972a6e..9aedbf6 100644
--- a/docs/en-us/download/download.md
+++ b/docs/en-us/download/download.md
@@ -3,8 +3,15 @@ title: Download - Apache TubeMQ
 ---
 
 ## Download links
-  Use the links below to download the Apache TubeMQ Releases, the latest 
release is 0.7.0.
+  Use the links below to download the Apache TubeMQ Releases, the latest 
release is 0.8.0.
 
+## 0.8.0 release
+
+ - Released: March 4th, 2021
+ - [Release Notes](release-0.8.0.md)
+ - Source: 
[tubemq-0.8.0-incubating-src.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)
              
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
        
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
+ - Client: 
[tubemq-client-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
+ - Server: 
[tubemq-server-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 
 ## 0.7.0 release
 
diff --git a/docs/en-us/download/release-0.8.0.md 
b/docs/en-us/download/release-0.8.0.md
new file mode 100644
index 0000000..1773fed
--- /dev/null
+++ b/docs/en-us/download/release-0.8.0.md
@@ -0,0 +1,102 @@
+---
+title: Download - Apache TubeMQ
+---
+
+# Download the TubeMQ releases
+
+Use the links below to download the Apache TubeMQ from one of our mirrors.
+
+## TubeMQ
+| Date | Version| Comment | Downloads |
+|:---:|:--:|:--:|:--:|
+| March. 4th, 2021 | 0.8.0 | Source | 
[[SRC](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)]
                 
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
             
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
 |
+| |                       | Client | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+| |                       | Server | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+
+
+## Release Notes
+
+### IMPROVEMENTS:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-430](https://issues.apache.org/jira/browse/TUBEMQ-430) | Optimizing 
the implementation of HTTP API for broke  | Major |
+| [TUBEMQ-445](https://issues.apache.org/jira/browse/TUBEMQ-445) | Adjust the 
status check default sleep interval of pullConsumeReadyChkSliceMs  | Major |
+| [TUBEMQ-448](https://issues.apache.org/jira/browse/TUBEMQ-448) | Add 
Committer and PPMC operation process  | Major |
+| [TUBEMQ-449](https://issues.apache.org/jira/browse/TUBEMQ-449) | Adjust 
Example implementation  | Major |
+| [TUBEMQ-452](https://issues.apache.org/jira/browse/TUBEMQ-452) | Optimize 
rebalance performance | Major |
+| [TUBEMQ-467](https://issues.apache.org/jira/browse/TUBEMQ-467) | Add WEB 
APIs of Master and Broker | Major |
+| [TUBEMQ-489](https://issues.apache.org/jira/browse/TUBEMQ-489) | Add the 
maximum message length parameter setting | Major |
+| [TUBEMQ-495](https://issues.apache.org/jira/browse/TUBEMQ-495) | Code 
implementation adjustment based on SpotBugs check | Major |
+| [TUBEMQ-511](https://issues.apache.org/jira/browse/TUBEMQ-511) | Replace the 
conditional operator (?:) with mid()  | Major |
+| [TUBEMQ-512](https://issues.apache.org/jira/browse/TUBEMQ-512) | Add package 
length control based on Topic  | Major |
+| [TUBEMQ-515](https://issues.apache.org/jira/browse/TUBEMQ-515) | Add cluster 
Topic view web api  | Major |
+
+### BUG FIXES:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-437](https://issues.apache.org/jira/browse/TUBEMQ-437) | Fix tubemq 
table source sink factory instance creating problem | Major |
+| [TUBEMQ-441](https://issues.apache.org/jira/browse/TUBEMQ-441) | An error 
occurred when using the Tubemq class to create a sink table | Major |
+| [TUBEMQ-442](https://issues.apache.org/jira/browse/TUBEMQ-442) | Modifying 
the jvm parameters when the broker starts does not take effect  | Major    |
+| [TUBEMQ-443](https://issues.apache.org/jira/browse/TUBEMQ-443) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-446](https://issues.apache.org/jira/browse/TUBEMQ-446) | Small bugs 
fix that do not affect the main logics | Major |
+| [TUBEMQ-450](https://issues.apache.org/jira/browse/TUBEMQ-450) | 
TubeClientException: Generate producer id failed  | Major |
+| [TUBEMQ-453](https://issues.apache.org/jira/browse/TUBEMQ-453) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-506](https://issues.apache.org/jira/browse/TUBEMQ-506) | cmakelist 
error | Major |
+| [TUBEMQ-510](https://issues.apache.org/jira/browse/TUBEMQ-510) | Found a bug 
in MessageProducerExample class | Major |
+| [TUBEMQ-518](https://issues.apache.org/jira/browse/TUBEMQ-518) | fix 
parameter pass error | Major |
+| [TUBEMQ-526](https://issues.apache.org/jira/browse/TUBEMQ-526) | Adjust the 
packaging script and version check list, remove the "-WIP" tag | Major |
+| [TUBEMQ-555](https://issues.apache.org/jira/browse/TUBEMQ-555) | short 
session data can only be written to a specific partition | Major |
+| [TUBEMQ-556](https://issues.apache.org/jira/browse/TUBEMQ-556) | Index value 
is bigger than the actual number of records | Low |
+
+
+### TASK:
+| JIRA | Summary | Priority |
+|:---- |:---- | :--- |
+| [TUBEMQ-505](https://issues.apache.org/jira/browse/TUBEMQ-505) | Remove the 
"WIP" label of the DISCLAIMER file  | Major |
+| [TUBEMQ-543](https://issues.apache.org/jira/browse/TUBEMQ-543) | Modify the 
LICENSE statement of multiple files and others  | Major |
+| [TUBEMQ-557](https://issues.apache.org/jira/browse/TUBEMQ-557) | Handle the 
issues mentioned in the 0.8.0-RC2 review  | Major |
+| [TUBEMQ-562](https://issues.apache.org/jira/browse/TUBEMQ-562) | Update 
project contents according to the 0.8.0-RC3 review  | Major |
+
+### SUB-TASK:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-428](https://issues.apache.org/jira/browse/TUBEMQ-433) | Bumped 
version to 0.8.0-SNAPSHOT | Major |
+| [TUBEMQ-433](https://issues.apache.org/jira/browse/TUBEMQ-433) | add tubemq 
perf-consumer/producer scripts | Major |
+| [TUBEMQ-434](https://issues.apache.org/jira/browse/TUBEMQ-434) | Adjust 
Broker API mapping | Major |
+| [TUBEMQ-435](https://issues.apache.org/jira/browse/TUBEMQ-435) | Create Web 
field Mapping | Major |
+| [TUBEMQ-436](https://issues.apache.org/jira/browse/TUBEMQ-436) | Adjust 
Broker's HTTP API implementation | Major |
+| [TUBEMQ-439](https://issues.apache.org/jira/browse/TUBEMQ-439) | Add Cli 
field Scheme definition | Major |
+| [TUBEMQ-440](https://issues.apache.org/jira/browse/TUBEMQ-440) | Add feature 
package tube-manager to zip  | Major |
+| [TUBEMQ-444](https://issues.apache.org/jira/browse/TUBEMQ-444) | Add consume 
and produce Cli commands | Major |
+| [TUBEMQ-447](https://issues.apache.org/jira/browse/TUBEMQ-447) | Add 
Broker-Admin Cli | Major |
+| [TUBEMQ-451](https://issues.apache.org/jira/browse/TUBEMQ-451) | Replace 
ConsumeTupleInfo with Tuple2  | Major    |
+| [TUBEMQ-457](https://issues.apache.org/jira/browse/TUBEMQ-457) | There is no 
need to return StringBuilder in Master.java | Major |
+| [TUBEMQ-463](https://issues.apache.org/jira/browse/TUBEMQ-463) | Adjust 
Master rebalance process implementation  | Major |
+| [TUBEMQ-464](https://issues.apache.org/jira/browse/TUBEMQ-464) | Add 
parameter rebalanceParallel in master.ini | Major |
+| [TUBEMQ-470](https://issues.apache.org/jira/browse/TUBEMQ-470) | Add query 
API of TopicName and BrokerId collection  | Major |
+| [TUBEMQ-471](https://issues.apache.org/jira/browse/TUBEMQ-471) | Add query 
API Introduction of TopicName and BrokerId collection | Major |
+| [TUBEMQ-472](https://issues.apache.org/jira/browse/TUBEMQ-472) | Adjust 
Broker's AbstractWebHandler class implementation  | Major |
+| [TUBEMQ-475](https://issues.apache.org/jira/browse/TUBEMQ-475) | add the 
offset clone api of the consume group  | Major |
+| [TUBEMQ-482](https://issues.apache.org/jira/browse/TUBEMQ-482) | Add offset 
query api  | Major |
+| [TUBEMQ-484](https://issues.apache.org/jira/browse/TUBEMQ-484) | Add query 
API for topic publication information  | Major |
+| [TUBEMQ-485](https://issues.apache.org/jira/browse/TUBEMQ-485) | Add the 
batch setting API of consume group offset  | Major |
+| [TUBEMQ-486](https://issues.apache.org/jira/browse/TUBEMQ-486) | Add the 
delete API of consumer group offset  | Major |
+| [TUBEMQ-494](https://issues.apache.org/jira/browse/TUBEMQ-494) | Update API 
interface instruction document | Major |
+| [TUBEMQ-499](https://issues.apache.org/jira/browse/TUBEMQ-499) | Add 
configure store  | Major |
+| [TUBEMQ-500](https://issues.apache.org/jira/browse/TUBEMQ-500) | Add setting 
operate API  | Major |
+| [TUBEMQ-501](https://issues.apache.org/jira/browse/TUBEMQ-501) | Adjust max 
message size check logic  | Major |
+| [TUBEMQ-502](https://issues.apache.org/jira/browse/TUBEMQ-502) | Add setting 
API interface document  | Major |
+| [TUBEMQ-504](https://issues.apache.org/jira/browse/TUBEMQ-504) | Adjust the 
WebMethodMapper class interfaces  | Major |
+| [TUBEMQ-508](https://issues.apache.org/jira/browse/TUBEMQ-508) | Optimize 
Broker's PB parameter check processing logic  | Major |
+| [TUBEMQ-509](https://issues.apache.org/jira/browse/TUBEMQ-509) | Adjust the 
packet length check when data is loaded  | Major |
+| [TUBEMQ-522](https://issues.apache.org/jira/browse/TUBEMQ-522) | Add 
admin_query_cluster_topic_view API document  | Major |
+| [TUBEMQ-544](https://issues.apache.org/jira/browse/TUBEMQ-544) | Adjust the 
LICENSE statement in the client.conf files of Python and C/C++ SDK | Major |
+| [TUBEMQ-546](https://issues.apache.org/jira/browse/TUBEMQ-546) | Restore the 
original license header of the referenced external source files | Major |
+| [TUBEMQ-547](https://issues.apache.org/jira/browse/TUBEMQ-547) | Recode the 
implementation of the *Startup.java classes in the Tool package | Major |
+| [TUBEMQ-548](https://issues.apache.org/jira/browse/TUBEMQ-548) | Handle the 
LICENSE authorization of font files in the resources | Major |
+| [TUBEMQ-549](https://issues.apache.org/jira/browse/TUBEMQ-549) | Handling 
the problem of compilation failure | Major |
+| [TUBEMQ-550](https://issues.apache.org/jira/browse/TUBEMQ-550) | Adjust 
LICENSE file content | Major |
+| [TUBEMQ-551](https://issues.apache.org/jira/browse/TUBEMQ-551) | Adjust 
NOTICE file content | Major |
+| [TUBEMQ-558](https://issues.apache.org/jira/browse/TUBEMQ-558) | Adjust the 
LICENSE of the file header | Major |
+| [TUBEMQ-559](https://issues.apache.org/jira/browse/TUBEMQ-559) | Update the 
LICENSE file according to the 0.8.0-RC2 review | Major |
+| [TUBEMQ-560](https://issues.apache.org/jira/browse/TUBEMQ-560) | Remove 
unprepared modules | Major |
diff --git a/docs/zh-cn/download/download.md b/docs/zh-cn/download/download.md
index 2413fce..40a2b9f 100644
--- a/docs/zh-cn/download/download.md
+++ b/docs/zh-cn/download/download.md
@@ -3,8 +3,14 @@ title: 下载 - Apache TubeMQ
 ---
 
 ## 下载链接
-  使用以下链接,下载TubeMQ,最新版本为0.7.0.
+  使用以下链接,下载TubeMQ,最新版本为0.8.0.
 
+## 0.8.0 release
+ - 发布时间:2021-03-04
+ - [发版说明](release-0.8.0.md)
+ - 源码: 
[tubemq-0.8.0-incubating-src.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)
             
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
        
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
+ - 客户端: 
[tubemq-client-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
+ - 服务端: 
[tubemq-server-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 ## 0.7.0 release
  - 发布时间:2020-12-04
  - [发版说明](release-0.7.0.md)
diff --git a/docs/zh-cn/download/release-0.8.0.md  
b/docs/zh-cn/download/release-0.8.0.md 
new file mode 100644
index 0000000..1741972
--- /dev/null
+++ b/docs/zh-cn/download/release-0.8.0.md      
@@ -0,0 +1,100 @@
+---
+title: 下载 - Apache TubeMQ
+---
+
+# 下载TubeMQ
+  使用以下镜像下载TubeMQ
+
+## TubeMQ
+| 日期 | 版本| 备注 | 下载 |
+|:---:|:--:|:--:|:--:|
+| 2021-03-04 | 0.8.0 | Source | 
[[SRC](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)]
                 
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
             
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
 |
+| |                       | Client | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+| |                       | Server | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+
+## 发版说明
+
+### 改进:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-430](https://issues.apache.org/jira/browse/TUBEMQ-430) | Optimizing 
the implementation of HTTP API for broke  | Major |
+| [TUBEMQ-445](https://issues.apache.org/jira/browse/TUBEMQ-445) | Adjust the 
status check default sleep interval of pullConsumeReadyChkSliceMs  | Major |
+| [TUBEMQ-448](https://issues.apache.org/jira/browse/TUBEMQ-448) | Add 
Committer and PPMC operation process  | Major |
+| [TUBEMQ-449](https://issues.apache.org/jira/browse/TUBEMQ-449) | Adjust 
Example implementation  | Major |
+| [TUBEMQ-452](https://issues.apache.org/jira/browse/TUBEMQ-452) | Optimize 
rebalance performance | Major |
+| [TUBEMQ-467](https://issues.apache.org/jira/browse/TUBEMQ-467) | Add WEB 
APIs of Master and Broker | Major |
+| [TUBEMQ-489](https://issues.apache.org/jira/browse/TUBEMQ-489) | Add the 
maximum message length parameter setting | Major |
+| [TUBEMQ-495](https://issues.apache.org/jira/browse/TUBEMQ-495) | Code 
implementation adjustment based on SpotBugs check | Major |
+| [TUBEMQ-511](https://issues.apache.org/jira/browse/TUBEMQ-511) | Replace the 
conditional operator (?:) with mid()  | Major |
+| [TUBEMQ-512](https://issues.apache.org/jira/browse/TUBEMQ-512) | Add package 
length control based on Topic  | Major |
+| [TUBEMQ-515](https://issues.apache.org/jira/browse/TUBEMQ-515) | Add cluster 
Topic view web api  | Major |
+
+### BUG修复:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-437](https://issues.apache.org/jira/browse/TUBEMQ-437) | Fix tubemq 
table source sink factory instance creating problem | Major |
+| [TUBEMQ-441](https://issues.apache.org/jira/browse/TUBEMQ-441) | An error 
occurred when using the Tubemq class to create a sink table | Major |
+| [TUBEMQ-442](https://issues.apache.org/jira/browse/TUBEMQ-442) | Modifying 
the jvm parameters when the broker starts does not take effect  | Major    |
+| [TUBEMQ-443](https://issues.apache.org/jira/browse/TUBEMQ-443) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-446](https://issues.apache.org/jira/browse/TUBEMQ-446) | Small bugs 
fix that do not affect the main logics | Major |
+| [TUBEMQ-450](https://issues.apache.org/jira/browse/TUBEMQ-450) | 
TubeClientException: Generate producer id failed  | Major |
+| [TUBEMQ-453](https://issues.apache.org/jira/browse/TUBEMQ-453) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-506](https://issues.apache.org/jira/browse/TUBEMQ-506) | cmakelist 
error | Major |
+| [TUBEMQ-510](https://issues.apache.org/jira/browse/TUBEMQ-510) | Found a bug 
in MessageProducerExample class | Major |
+| [TUBEMQ-518](https://issues.apache.org/jira/browse/TUBEMQ-518) | fix 
parameter pass error | Major |
+| [TUBEMQ-526](https://issues.apache.org/jira/browse/TUBEMQ-526) | Adjust the 
packaging script and version check list, remove the "-WIP" tag | Major |
+| [TUBEMQ-555](https://issues.apache.org/jira/browse/TUBEMQ-555) | short 
session data can only be written to a specific partition | Major |
+| [TUBEMQ-556](https://issues.apache.org/jira/browse/TUBEMQ-556) | Index value 
is bigger than the actual number of records | Low |
+
+
+### 任务:
+| JIRA | Summary | Priority |
+|:---- |:---- | :--- |
+| [TUBEMQ-505](https://issues.apache.org/jira/browse/TUBEMQ-505) | Remove the 
"WIP" label of the DISCLAIMER file  | Major |
+| [TUBEMQ-543](https://issues.apache.org/jira/browse/TUBEMQ-543) | Modify the 
LICENSE statement of multiple files and others  | Major |
+| [TUBEMQ-557](https://issues.apache.org/jira/browse/TUBEMQ-557) | Handle the 
issues mentioned in the 0.8.0-RC2 review  | Major |
+| [TUBEMQ-562](https://issues.apache.org/jira/browse/TUBEMQ-562) | Update 
project contents according to the 0.8.0-RC3 review  | Major |
+
+### 子任务:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-428](https://issues.apache.org/jira/browse/TUBEMQ-433) | Bumped 
version to 0.8.0-SNAPSHOT | Major |
+| [TUBEMQ-433](https://issues.apache.org/jira/browse/TUBEMQ-433) | add tubemq 
perf-consumer/producer scripts | Major |
+| [TUBEMQ-434](https://issues.apache.org/jira/browse/TUBEMQ-434) | Adjust 
Broker API mapping | Major |
+| [TUBEMQ-435](https://issues.apache.org/jira/browse/TUBEMQ-435) | Create Web 
field Mapping | Major |
+| [TUBEMQ-436](https://issues.apache.org/jira/browse/TUBEMQ-436) | Adjust 
Broker's HTTP API implementation | Major |
+| [TUBEMQ-439](https://issues.apache.org/jira/browse/TUBEMQ-439) | Add Cli 
field Scheme definition | Major |
+| [TUBEMQ-440](https://issues.apache.org/jira/browse/TUBEMQ-440) | Add feature 
package tube-manager to zip  | Major |
+| [TUBEMQ-444](https://issues.apache.org/jira/browse/TUBEMQ-444) | Add consume 
and produce Cli commands | Major |
+| [TUBEMQ-447](https://issues.apache.org/jira/browse/TUBEMQ-447) | Add 
Broker-Admin Cli | Major |
+| [TUBEMQ-451](https://issues.apache.org/jira/browse/TUBEMQ-451) | Replace 
ConsumeTupleInfo with Tuple2  | Major    |
+| [TUBEMQ-457](https://issues.apache.org/jira/browse/TUBEMQ-457) | There is no 
need to return StringBuilder in Master.java | Major |
+| [TUBEMQ-463](https://issues.apache.org/jira/browse/TUBEMQ-463) | Adjust 
Master rebalance process implementation  | Major |
+| [TUBEMQ-464](https://issues.apache.org/jira/browse/TUBEMQ-464) | Add 
parameter rebalanceParallel in master.ini | Major |
+| [TUBEMQ-470](https://issues.apache.org/jira/browse/TUBEMQ-470) | Add query 
API of TopicName and BrokerId collection  | Major |
+| [TUBEMQ-471](https://issues.apache.org/jira/browse/TUBEMQ-471) | Add query 
API Introduction of TopicName and BrokerId collection | Major |
+| [TUBEMQ-472](https://issues.apache.org/jira/browse/TUBEMQ-472) | Adjust 
Broker's AbstractWebHandler class implementation  | Major |
+| [TUBEMQ-475](https://issues.apache.org/jira/browse/TUBEMQ-475) | add the 
offset clone api of the consume group  | Major |
+| [TUBEMQ-482](https://issues.apache.org/jira/browse/TUBEMQ-482) | Add offset 
query api  | Major |
+| [TUBEMQ-484](https://issues.apache.org/jira/browse/TUBEMQ-484) | Add query 
API for topic publication information  | Major |
+| [TUBEMQ-485](https://issues.apache.org/jira/browse/TUBEMQ-485) | Add the 
batch setting API of consume group offset  | Major |
+| [TUBEMQ-486](https://issues.apache.org/jira/browse/TUBEMQ-486) | Add the 
delete API of consumer group offset  | Major |
+| [TUBEMQ-494](https://issues.apache.org/jira/browse/TUBEMQ-494) | Update API 
interface instruction document | Major |
+| [TUBEMQ-499](https://issues.apache.org/jira/browse/TUBEMQ-499) | Add 
configure store  | Major |
+| [TUBEMQ-500](https://issues.apache.org/jira/browse/TUBEMQ-500) | Add setting 
operate API  | Major |
+| [TUBEMQ-501](https://issues.apache.org/jira/browse/TUBEMQ-501) | Adjust max 
message size check logic  | Major |
+| [TUBEMQ-502](https://issues.apache.org/jira/browse/TUBEMQ-502) | Add setting 
API interface document  | Major |
+| [TUBEMQ-504](https://issues.apache.org/jira/browse/TUBEMQ-504) | Adjust the 
WebMethodMapper class interfaces  | Major |
+| [TUBEMQ-508](https://issues.apache.org/jira/browse/TUBEMQ-508) | Optimize 
Broker's PB parameter check processing logic  | Major |
+| [TUBEMQ-509](https://issues.apache.org/jira/browse/TUBEMQ-509) | Adjust the 
packet length check when data is loaded  | Major |
+| [TUBEMQ-522](https://issues.apache.org/jira/browse/TUBEMQ-522) | Add 
admin_query_cluster_topic_view API document  | Major |
+| [TUBEMQ-544](https://issues.apache.org/jira/browse/TUBEMQ-544) | Adjust the 
LICENSE statement in the client.conf files of Python and C/C++ SDK | Major |
+| [TUBEMQ-546](https://issues.apache.org/jira/browse/TUBEMQ-546) | Restore the 
original license header of the referenced external source files | Major |
+| [TUBEMQ-547](https://issues.apache.org/jira/browse/TUBEMQ-547) | Recode the 
implementation of the *Startup.java classes in the Tool package | Major |
+| [TUBEMQ-548](https://issues.apache.org/jira/browse/TUBEMQ-548) | Handle the 
LICENSE authorization of font files in the resources | Major |
+| [TUBEMQ-549](https://issues.apache.org/jira/browse/TUBEMQ-549) | Handling 
the problem of compilation failure | Major |
+| [TUBEMQ-550](https://issues.apache.org/jira/browse/TUBEMQ-550) | Adjust 
LICENSE file content | Major |
+| [TUBEMQ-551](https://issues.apache.org/jira/browse/TUBEMQ-551) | Adjust 
NOTICE file content | Major |
+| [TUBEMQ-558](https://issues.apache.org/jira/browse/TUBEMQ-558) | Adjust the 
LICENSE of the file header | Major |
+| [TUBEMQ-559](https://issues.apache.org/jira/browse/TUBEMQ-559) | Update the 
LICENSE file according to the 0.8.0-RC2 review | Major |
+| [TUBEMQ-560](https://issues.apache.org/jira/browse/TUBEMQ-560) | Remove 
unprepared modules | Major |
diff --git a/en-us/docs/download/download.html 
b/en-us/docs/download/download.html
index cc15beb..12b8e2f 100644
--- a/en-us/docs/download/download.html
+++ b/en-us/docs/download/download.html
@@ -13,7 +13,15 @@
 </head>
 <body>
        <div id="root"><div class="documentation-page" 
data-reactroot=""><header class="header-container header-container-normal"><div 
class="header-body"><a href="/en-us/index.html"><a href="//www.apache.org"><img 
class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div 
class="logo-split"></div><a href=""></a><img class="logo tube" 
style="width:72px" src="/img/Tube logo.svg"/></a><div class="search 
search-normal"><span class="icon-search"></span></div><span class="language-swi 
[...]
-<p>Use the links below to download the Apache TubeMQ Releases, the latest 
release is 0.7.0.</p>
+<p>Use the links below to download the Apache TubeMQ Releases, the latest 
release is 0.8.0.</p>
+<h2>0.8.0 release</h2>
+<ul>
+<li>Released: March 4th, 2021</li>
+<li><a href="release-0.8.0.md">Release Notes</a></li>
+<li>Source: <a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz";>tubemq-0.8.0-incubating-src.tar.gz</a>
              [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc";>PGP</a>]
        [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512";>SHA512</a>]</li>
+<li>Client: <a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz";>tubemq-client-0.8.0-incubating-bin.tar.gz</a>
       [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc";>PGP</a>]
 [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512";>SHA512</a>]</li>
+<li>Server: <a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz";>tubemq-server-0.8.0-incubating-bin.tar.gz</a>
       [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc";>PGP</a>]
 [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512";>SHA512</a>]</li>
+</ul>
 <h2>0.7.0 release</h2>
 <ul>
 <li>Released: December 4th, 2020</li>
diff --git a/en-us/docs/download/download.json 
b/en-us/docs/download/download.json
index 6857e35..150a551 100644
--- a/en-us/docs/download/download.json
+++ b/en-us/docs/download/download.json
@@ -1,6 +1,6 @@
 {
   "filename": "download.md",
-  "__html": "<h2>Download links</h2>\n<p>Use the links below to download the 
Apache TubeMQ Releases, the latest release is 0.7.0.</p>\n<h2>0.7.0 
release</h2>\n<ul>\n<li>Released: December 4th, 2020</li>\n<li><a 
href=\"release-0.7.0.md\">Release Notes</a></li>\n<li>Source: <a 
href=\"http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.7.0-incubating/apache-tubemq-0.7.0-incubating-src.tar.gz\";>tubemq-0.7.0-incubating-src.tar.gz</a>
              [<a href=\"https://downloads.apache.org/in [...]
+  "__html": "<h2>Download links</h2>\n<p>Use the links below to download the 
Apache TubeMQ Releases, the latest release is 0.8.0.</p>\n<h2>0.8.0 
release</h2>\n<ul>\n<li>Released: March 4th, 2021</li>\n<li><a 
href=\"release-0.8.0.md\">Release Notes</a></li>\n<li>Source: <a 
href=\"http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz\";>tubemq-0.8.0-incubating-src.tar.gz</a>
              [<a href=\"https://downloads.apache.org/incub [...]
   "link": "/en-us/docs/download/download.html",
   "meta": {
     "title": "Download - Apache TubeMQ"
diff --git a/en-us/docs/download/download.md b/en-us/docs/download/download.md
index e972a6e..9aedbf6 100644
--- a/en-us/docs/download/download.md
+++ b/en-us/docs/download/download.md
@@ -3,8 +3,15 @@ title: Download - Apache TubeMQ
 ---
 
 ## Download links
-  Use the links below to download the Apache TubeMQ Releases, the latest 
release is 0.7.0.
+  Use the links below to download the Apache TubeMQ Releases, the latest 
release is 0.8.0.
 
+## 0.8.0 release
+
+ - Released: March 4th, 2021
+ - [Release Notes](release-0.8.0.md)
+ - Source: 
[tubemq-0.8.0-incubating-src.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)
              
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
        
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
+ - Client: 
[tubemq-client-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
+ - Server: 
[tubemq-server-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 
 ## 0.7.0 release
 
diff --git a/en-us/docs/download/release-0.8.0.html 
b/en-us/docs/download/release-0.8.0.html
new file mode 100644
index 0000000..150e0a4
--- /dev/null
+++ b/en-us/docs/download/release-0.8.0.html
@@ -0,0 +1,446 @@
+<!DOCTYPE html>
+<html lang="en">
+
+<head>
+       <meta charset="UTF-8">
+       <meta name="viewport" content="width=device-width, initial-scale=1.0, 
maximum-scale=1.0, user-scalable=no">
+       <meta name="keywords" content="release-0.8.0" />
+       <meta name="description" content="release-0.8.0" />
+       <!-- 网页标签标题 -->
+       <title>Download - Apache TubeMQ</title>
+       <link rel="shortcut icon" href="/img/apache.ico"/>
+       <link rel="stylesheet" href="/build/documentation.css" />
+</head>
+<body>
+       <div id="root"><div class="documentation-page" 
data-reactroot=""><header class="header-container header-container-normal"><div 
class="header-body"><a href="/en-us/index.html"><a href="//www.apache.org"><img 
class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div 
class="logo-split"></div><a href=""></a><img class="logo tube" 
style="width:72px" src="/img/Tube logo.svg"/></a><div class="search 
search-normal"><span class="icon-search"></span></div><span class="language-swi 
[...]
+<p>Use the links below to download the Apache TubeMQ from one of our 
mirrors.</p>
+<h2>TubeMQ</h2>
+<table>
+<thead>
+<tr>
+<th style="text-align:center">Date</th>
+<th style="text-align:center">Version</th>
+<th style="text-align:center">Comment</th>
+<th style="text-align:center">Downloads</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align:center">March. 4th, 2021</td>
+<td style="text-align:center">0.8.0</td>
+<td style="text-align:center">Source</td>
+<td style="text-align:center">[<a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz";>SRC</a>]
                 [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc";>PGP</a>]
             [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512";>SHA512</a>]</td>
+</tr>
+<tr>
+<td style="text-align:center"></td>
+<td style="text-align:center"></td>
+<td style="text-align:center">Client</td>
+<td style="text-align:center">[<a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz";>TAR</a>]
          [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc";>PGP</a>]
      [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512";>SHA512</a>]</td>
+</tr>
+<tr>
+<td style="text-align:center"></td>
+<td style="text-align:center"></td>
+<td style="text-align:center">Server</td>
+<td style="text-align:center">[<a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz";>TAR</a>]
          [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc";>PGP</a>]
      [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512";>SHA512</a>]</td>
+</tr>
+</tbody>
+</table>
+<h2>Release Notes</h2>
+<h3>IMPROVEMENTS:</h3>
+<table>
+<thead>
+<tr>
+<th style="text-align:left">JIRA</th>
+<th style="text-align:left">Summary</th>
+<th style="text-align:left">Priority</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-430";>TUBEMQ-430</a></td>
+<td style="text-align:left">Optimizing the implementation of HTTP API for 
broke</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-445";>TUBEMQ-445</a></td>
+<td style="text-align:left">Adjust the status check default sleep interval of 
pullConsumeReadyChkSliceMs</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-448";>TUBEMQ-448</a></td>
+<td style="text-align:left">Add Committer and PPMC operation process</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-449";>TUBEMQ-449</a></td>
+<td style="text-align:left">Adjust Example implementation</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-452";>TUBEMQ-452</a></td>
+<td style="text-align:left">Optimize rebalance performance</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-467";>TUBEMQ-467</a></td>
+<td style="text-align:left">Add WEB APIs of Master and Broker</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-489";>TUBEMQ-489</a></td>
+<td style="text-align:left">Add the maximum message length parameter 
setting</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-495";>TUBEMQ-495</a></td>
+<td style="text-align:left">Code implementation adjustment based on SpotBugs 
check</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-511";>TUBEMQ-511</a></td>
+<td style="text-align:left">Replace the conditional operator (?:) with 
mid()</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-512";>TUBEMQ-512</a></td>
+<td style="text-align:left">Add package length control based on Topic</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-515";>TUBEMQ-515</a></td>
+<td style="text-align:left">Add cluster Topic view web api</td>
+<td style="text-align:left">Major</td>
+</tr>
+</tbody>
+</table>
+<h3>BUG FIXES:</h3>
+<table>
+<thead>
+<tr>
+<th style="text-align:left">JIRA</th>
+<th style="text-align:left">Summary</th>
+<th style="text-align:left">Priority</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-437";>TUBEMQ-437</a></td>
+<td style="text-align:left">Fix tubemq table source sink factory instance 
creating problem</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-441";>TUBEMQ-441</a></td>
+<td style="text-align:left">An error occurred when using the Tubemq class to 
create a sink table</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-442";>TUBEMQ-442</a></td>
+<td style="text-align:left">Modifying the jvm parameters when the broker 
starts does not take effect</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-443";>TUBEMQ-443</a></td>
+<td style="text-align:left">TubemqSourceFunction class prints too many logs 
problem</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-446";>TUBEMQ-446</a></td>
+<td style="text-align:left">Small bugs fix that do not affect the main 
logics</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-450";>TUBEMQ-450</a></td>
+<td style="text-align:left">TubeClientException: Generate producer id 
failed</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-453";>TUBEMQ-453</a></td>
+<td style="text-align:left">TubemqSourceFunction class prints too many logs 
problem</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-506";>TUBEMQ-506</a></td>
+<td style="text-align:left">cmakelist error</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-510";>TUBEMQ-510</a></td>
+<td style="text-align:left">Found a bug in MessageProducerExample class</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-518";>TUBEMQ-518</a></td>
+<td style="text-align:left">fix parameter pass error</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-526";>TUBEMQ-526</a></td>
+<td style="text-align:left">Adjust the packaging script and version check 
list, remove the &quot;-WIP&quot; tag</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-555";>TUBEMQ-555</a></td>
+<td style="text-align:left">short session data can only be written to a 
specific partition</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-556";>TUBEMQ-556</a></td>
+<td style="text-align:left">Index value is bigger than the actual number of 
records</td>
+<td style="text-align:left">Low</td>
+</tr>
+</tbody>
+</table>
+<h3>TASK:</h3>
+<table>
+<thead>
+<tr>
+<th style="text-align:left">JIRA</th>
+<th style="text-align:left">Summary</th>
+<th style="text-align:left">Priority</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-505";>TUBEMQ-505</a></td>
+<td style="text-align:left">Remove the &quot;WIP&quot; label of the DISCLAIMER 
file</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-543";>TUBEMQ-543</a></td>
+<td style="text-align:left">Modify the LICENSE statement of multiple files and 
others</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-557";>TUBEMQ-557</a></td>
+<td style="text-align:left">Handle the issues mentioned in the 0.8.0-RC2 
review</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-562";>TUBEMQ-562</a></td>
+<td style="text-align:left">Update project contents according to the 0.8.0-RC3 
review</td>
+<td style="text-align:left">Major</td>
+</tr>
+</tbody>
+</table>
+<h3>SUB-TASK:</h3>
+<table>
+<thead>
+<tr>
+<th style="text-align:left">JIRA</th>
+<th style="text-align:left">Summary</th>
+<th style="text-align:left">Priority</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-433";>TUBEMQ-428</a></td>
+<td style="text-align:left">Bumped version to 0.8.0-SNAPSHOT</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-433";>TUBEMQ-433</a></td>
+<td style="text-align:left">add tubemq perf-consumer/producer scripts</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-434";>TUBEMQ-434</a></td>
+<td style="text-align:left">Adjust Broker API mapping</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-435";>TUBEMQ-435</a></td>
+<td style="text-align:left">Create Web field Mapping</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-436";>TUBEMQ-436</a></td>
+<td style="text-align:left">Adjust Broker's HTTP API implementation</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-439";>TUBEMQ-439</a></td>
+<td style="text-align:left">Add Cli field Scheme definition</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-440";>TUBEMQ-440</a></td>
+<td style="text-align:left">Add feature package tube-manager to zip</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-444";>TUBEMQ-444</a></td>
+<td style="text-align:left">Add consume and produce Cli commands</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-447";>TUBEMQ-447</a></td>
+<td style="text-align:left">Add Broker-Admin Cli</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-451";>TUBEMQ-451</a></td>
+<td style="text-align:left">Replace ConsumeTupleInfo with Tuple2</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-457";>TUBEMQ-457</a></td>
+<td style="text-align:left">There is no need to return StringBuilder in 
Master.java</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-463";>TUBEMQ-463</a></td>
+<td style="text-align:left">Adjust Master rebalance process implementation</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-464";>TUBEMQ-464</a></td>
+<td style="text-align:left">Add parameter rebalanceParallel in master.ini</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-470";>TUBEMQ-470</a></td>
+<td style="text-align:left">Add query API of TopicName and BrokerId 
collection</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-471";>TUBEMQ-471</a></td>
+<td style="text-align:left">Add query API Introduction of TopicName and 
BrokerId collection</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-472";>TUBEMQ-472</a></td>
+<td style="text-align:left">Adjust Broker's AbstractWebHandler class 
implementation</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-475";>TUBEMQ-475</a></td>
+<td style="text-align:left">add the offset clone api of the consume group</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-482";>TUBEMQ-482</a></td>
+<td style="text-align:left">Add offset query api</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-484";>TUBEMQ-484</a></td>
+<td style="text-align:left">Add query API for topic publication 
information</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-485";>TUBEMQ-485</a></td>
+<td style="text-align:left">Add the batch setting API of consume group 
offset</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-486";>TUBEMQ-486</a></td>
+<td style="text-align:left">Add the delete API of consumer group offset</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-494";>TUBEMQ-494</a></td>
+<td style="text-align:left">Update API interface instruction document</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-499";>TUBEMQ-499</a></td>
+<td style="text-align:left">Add configure store</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-500";>TUBEMQ-500</a></td>
+<td style="text-align:left">Add setting operate API</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-501";>TUBEMQ-501</a></td>
+<td style="text-align:left">Adjust max message size check logic</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-502";>TUBEMQ-502</a></td>
+<td style="text-align:left">Add setting API interface document</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-504";>TUBEMQ-504</a></td>
+<td style="text-align:left">Adjust the WebMethodMapper class interfaces</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-508";>TUBEMQ-508</a></td>
+<td style="text-align:left">Optimize Broker's PB parameter check processing 
logic</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-509";>TUBEMQ-509</a></td>
+<td style="text-align:left">Adjust the packet length check when data is 
loaded</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-522";>TUBEMQ-522</a></td>
+<td style="text-align:left">Add admin_query_cluster_topic_view API 
document</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-544";>TUBEMQ-544</a></td>
+<td style="text-align:left">Adjust the LICENSE statement in the client.conf 
files of Python and C/C++ SDK</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-546";>TUBEMQ-546</a></td>
+<td style="text-align:left">Restore the original license header of the 
referenced external source files</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-547";>TUBEMQ-547</a></td>
+<td style="text-align:left">Recode the implementation of the *Startup.java 
classes in the Tool package</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-548";>TUBEMQ-548</a></td>
+<td style="text-align:left">Handle the LICENSE authorization of font files in 
the resources</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-549";>TUBEMQ-549</a></td>
+<td style="text-align:left">Handling the problem of compilation failure</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-550";>TUBEMQ-550</a></td>
+<td style="text-align:left">Adjust LICENSE file content</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-551";>TUBEMQ-551</a></td>
+<td style="text-align:left">Adjust NOTICE file content</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-558";>TUBEMQ-558</a></td>
+<td style="text-align:left">Adjust the LICENSE of the file header</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-559";>TUBEMQ-559</a></td>
+<td style="text-align:left">Update the LICENSE file according to the 0.8.0-RC2 
review</td>
+<td style="text-align:left">Major</td>
+</tr>
+<tr>
+<td style="text-align:left"><a 
href="https://issues.apache.org/jira/browse/TUBEMQ-560";>TUBEMQ-560</a></td>
+<td style="text-align:left">Remove unprepared modules</td>
+<td style="text-align:left">Major</td>
+</tr>
+</tbody>
+</table>
+</div></section><footer class="footer-container"><div class="footer-body"><img 
src="/img/incubator-logo.svg"/><div class="cols-container"><div class="col 
col-24"><p>Apache TubeMQ (incubating) is an effort undergoing incubation at The 
Apache Software Foundation (ASF), sponsored by Incubator. Incubation is 
required of all newly accepted projects until a further review indicates that 
the infrastructure, communications, and decision making process have stabilized 
in a manner consistent with  [...]
+       <script 
src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js";></script>
+       <script 
src="https://f.alicdn.com/react/15.4.1/react-dom.min.js";></script>
+       <script src="https://buttons.github.io/buttons.js";></script>
+       <script>
+               window.rootPath = '';
+  </script>
+       <script src="/build/documentation.js"></script>
+</body>
+</html>
diff --git a/en-us/docs/download/release-0.8.0.json 
b/en-us/docs/download/release-0.8.0.json
new file mode 100644
index 0000000..b526839
--- /dev/null
+++ b/en-us/docs/download/release-0.8.0.json
@@ -0,0 +1,8 @@
+{
+  "filename": "release-0.8.0.md",
+  "__html": "<h1>Download the TubeMQ releases</h1>\n<p>Use the links below to 
download the Apache TubeMQ from one of our 
mirrors.</p>\n<h2>TubeMQ</h2>\n<table>\n<thead>\n<tr>\n<th 
style=\"text-align:center\">Date</th>\n<th 
style=\"text-align:center\">Version</th>\n<th 
style=\"text-align:center\">Comment</th>\n<th 
style=\"text-align:center\">Downloads</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td 
style=\"text-align:center\">March. 4th, 2021</td>\n<td 
style=\"text-align:center\">0.8.0</td>\n<t [...]
+  "link": "/en-us/docs/download/release-0.8.0.html",
+  "meta": {
+    "title": "Download - Apache TubeMQ"
+  }
+}
\ No newline at end of file
diff --git a/en-us/docs/download/release-0.8.0.md 
b/en-us/docs/download/release-0.8.0.md
new file mode 100644
index 0000000..1773fed
--- /dev/null
+++ b/en-us/docs/download/release-0.8.0.md
@@ -0,0 +1,102 @@
+---
+title: Download - Apache TubeMQ
+---
+
+# Download the TubeMQ releases
+
+Use the links below to download the Apache TubeMQ from one of our mirrors.
+
+## TubeMQ
+| Date | Version| Comment | Downloads |
+|:---:|:--:|:--:|:--:|
+| March. 4th, 2021 | 0.8.0 | Source | 
[[SRC](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)]
                 
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
             
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
 |
+| |                       | Client | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+| |                       | Server | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+
+
+## Release Notes
+
+### IMPROVEMENTS:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-430](https://issues.apache.org/jira/browse/TUBEMQ-430) | Optimizing 
the implementation of HTTP API for broke  | Major |
+| [TUBEMQ-445](https://issues.apache.org/jira/browse/TUBEMQ-445) | Adjust the 
status check default sleep interval of pullConsumeReadyChkSliceMs  | Major |
+| [TUBEMQ-448](https://issues.apache.org/jira/browse/TUBEMQ-448) | Add 
Committer and PPMC operation process  | Major |
+| [TUBEMQ-449](https://issues.apache.org/jira/browse/TUBEMQ-449) | Adjust 
Example implementation  | Major |
+| [TUBEMQ-452](https://issues.apache.org/jira/browse/TUBEMQ-452) | Optimize 
rebalance performance | Major |
+| [TUBEMQ-467](https://issues.apache.org/jira/browse/TUBEMQ-467) | Add WEB 
APIs of Master and Broker | Major |
+| [TUBEMQ-489](https://issues.apache.org/jira/browse/TUBEMQ-489) | Add the 
maximum message length parameter setting | Major |
+| [TUBEMQ-495](https://issues.apache.org/jira/browse/TUBEMQ-495) | Code 
implementation adjustment based on SpotBugs check | Major |
+| [TUBEMQ-511](https://issues.apache.org/jira/browse/TUBEMQ-511) | Replace the 
conditional operator (?:) with mid()  | Major |
+| [TUBEMQ-512](https://issues.apache.org/jira/browse/TUBEMQ-512) | Add package 
length control based on Topic  | Major |
+| [TUBEMQ-515](https://issues.apache.org/jira/browse/TUBEMQ-515) | Add cluster 
Topic view web api  | Major |
+
+### BUG FIXES:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-437](https://issues.apache.org/jira/browse/TUBEMQ-437) | Fix tubemq 
table source sink factory instance creating problem | Major |
+| [TUBEMQ-441](https://issues.apache.org/jira/browse/TUBEMQ-441) | An error 
occurred when using the Tubemq class to create a sink table | Major |
+| [TUBEMQ-442](https://issues.apache.org/jira/browse/TUBEMQ-442) | Modifying 
the jvm parameters when the broker starts does not take effect  | Major    |
+| [TUBEMQ-443](https://issues.apache.org/jira/browse/TUBEMQ-443) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-446](https://issues.apache.org/jira/browse/TUBEMQ-446) | Small bugs 
fix that do not affect the main logics | Major |
+| [TUBEMQ-450](https://issues.apache.org/jira/browse/TUBEMQ-450) | 
TubeClientException: Generate producer id failed  | Major |
+| [TUBEMQ-453](https://issues.apache.org/jira/browse/TUBEMQ-453) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-506](https://issues.apache.org/jira/browse/TUBEMQ-506) | cmakelist 
error | Major |
+| [TUBEMQ-510](https://issues.apache.org/jira/browse/TUBEMQ-510) | Found a bug 
in MessageProducerExample class | Major |
+| [TUBEMQ-518](https://issues.apache.org/jira/browse/TUBEMQ-518) | fix 
parameter pass error | Major |
+| [TUBEMQ-526](https://issues.apache.org/jira/browse/TUBEMQ-526) | Adjust the 
packaging script and version check list, remove the "-WIP" tag | Major |
+| [TUBEMQ-555](https://issues.apache.org/jira/browse/TUBEMQ-555) | short 
session data can only be written to a specific partition | Major |
+| [TUBEMQ-556](https://issues.apache.org/jira/browse/TUBEMQ-556) | Index value 
is bigger than the actual number of records | Low |
+
+
+### TASK:
+| JIRA | Summary | Priority |
+|:---- |:---- | :--- |
+| [TUBEMQ-505](https://issues.apache.org/jira/browse/TUBEMQ-505) | Remove the 
"WIP" label of the DISCLAIMER file  | Major |
+| [TUBEMQ-543](https://issues.apache.org/jira/browse/TUBEMQ-543) | Modify the 
LICENSE statement of multiple files and others  | Major |
+| [TUBEMQ-557](https://issues.apache.org/jira/browse/TUBEMQ-557) | Handle the 
issues mentioned in the 0.8.0-RC2 review  | Major |
+| [TUBEMQ-562](https://issues.apache.org/jira/browse/TUBEMQ-562) | Update 
project contents according to the 0.8.0-RC3 review  | Major |
+
+### SUB-TASK:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-428](https://issues.apache.org/jira/browse/TUBEMQ-433) | Bumped 
version to 0.8.0-SNAPSHOT | Major |
+| [TUBEMQ-433](https://issues.apache.org/jira/browse/TUBEMQ-433) | add tubemq 
perf-consumer/producer scripts | Major |
+| [TUBEMQ-434](https://issues.apache.org/jira/browse/TUBEMQ-434) | Adjust 
Broker API mapping | Major |
+| [TUBEMQ-435](https://issues.apache.org/jira/browse/TUBEMQ-435) | Create Web 
field Mapping | Major |
+| [TUBEMQ-436](https://issues.apache.org/jira/browse/TUBEMQ-436) | Adjust 
Broker's HTTP API implementation | Major |
+| [TUBEMQ-439](https://issues.apache.org/jira/browse/TUBEMQ-439) | Add Cli 
field Scheme definition | Major |
+| [TUBEMQ-440](https://issues.apache.org/jira/browse/TUBEMQ-440) | Add feature 
package tube-manager to zip  | Major |
+| [TUBEMQ-444](https://issues.apache.org/jira/browse/TUBEMQ-444) | Add consume 
and produce Cli commands | Major |
+| [TUBEMQ-447](https://issues.apache.org/jira/browse/TUBEMQ-447) | Add 
Broker-Admin Cli | Major |
+| [TUBEMQ-451](https://issues.apache.org/jira/browse/TUBEMQ-451) | Replace 
ConsumeTupleInfo with Tuple2  | Major    |
+| [TUBEMQ-457](https://issues.apache.org/jira/browse/TUBEMQ-457) | There is no 
need to return StringBuilder in Master.java | Major |
+| [TUBEMQ-463](https://issues.apache.org/jira/browse/TUBEMQ-463) | Adjust 
Master rebalance process implementation  | Major |
+| [TUBEMQ-464](https://issues.apache.org/jira/browse/TUBEMQ-464) | Add 
parameter rebalanceParallel in master.ini | Major |
+| [TUBEMQ-470](https://issues.apache.org/jira/browse/TUBEMQ-470) | Add query 
API of TopicName and BrokerId collection  | Major |
+| [TUBEMQ-471](https://issues.apache.org/jira/browse/TUBEMQ-471) | Add query 
API Introduction of TopicName and BrokerId collection | Major |
+| [TUBEMQ-472](https://issues.apache.org/jira/browse/TUBEMQ-472) | Adjust 
Broker's AbstractWebHandler class implementation  | Major |
+| [TUBEMQ-475](https://issues.apache.org/jira/browse/TUBEMQ-475) | add the 
offset clone api of the consume group  | Major |
+| [TUBEMQ-482](https://issues.apache.org/jira/browse/TUBEMQ-482) | Add offset 
query api  | Major |
+| [TUBEMQ-484](https://issues.apache.org/jira/browse/TUBEMQ-484) | Add query 
API for topic publication information  | Major |
+| [TUBEMQ-485](https://issues.apache.org/jira/browse/TUBEMQ-485) | Add the 
batch setting API of consume group offset  | Major |
+| [TUBEMQ-486](https://issues.apache.org/jira/browse/TUBEMQ-486) | Add the 
delete API of consumer group offset  | Major |
+| [TUBEMQ-494](https://issues.apache.org/jira/browse/TUBEMQ-494) | Update API 
interface instruction document | Major |
+| [TUBEMQ-499](https://issues.apache.org/jira/browse/TUBEMQ-499) | Add 
configure store  | Major |
+| [TUBEMQ-500](https://issues.apache.org/jira/browse/TUBEMQ-500) | Add setting 
operate API  | Major |
+| [TUBEMQ-501](https://issues.apache.org/jira/browse/TUBEMQ-501) | Adjust max 
message size check logic  | Major |
+| [TUBEMQ-502](https://issues.apache.org/jira/browse/TUBEMQ-502) | Add setting 
API interface document  | Major |
+| [TUBEMQ-504](https://issues.apache.org/jira/browse/TUBEMQ-504) | Adjust the 
WebMethodMapper class interfaces  | Major |
+| [TUBEMQ-508](https://issues.apache.org/jira/browse/TUBEMQ-508) | Optimize 
Broker's PB parameter check processing logic  | Major |
+| [TUBEMQ-509](https://issues.apache.org/jira/browse/TUBEMQ-509) | Adjust the 
packet length check when data is loaded  | Major |
+| [TUBEMQ-522](https://issues.apache.org/jira/browse/TUBEMQ-522) | Add 
admin_query_cluster_topic_view API document  | Major |
+| [TUBEMQ-544](https://issues.apache.org/jira/browse/TUBEMQ-544) | Adjust the 
LICENSE statement in the client.conf files of Python and C/C++ SDK | Major |
+| [TUBEMQ-546](https://issues.apache.org/jira/browse/TUBEMQ-546) | Restore the 
original license header of the referenced external source files | Major |
+| [TUBEMQ-547](https://issues.apache.org/jira/browse/TUBEMQ-547) | Recode the 
implementation of the *Startup.java classes in the Tool package | Major |
+| [TUBEMQ-548](https://issues.apache.org/jira/browse/TUBEMQ-548) | Handle the 
LICENSE authorization of font files in the resources | Major |
+| [TUBEMQ-549](https://issues.apache.org/jira/browse/TUBEMQ-549) | Handling 
the problem of compilation failure | Major |
+| [TUBEMQ-550](https://issues.apache.org/jira/browse/TUBEMQ-550) | Adjust 
LICENSE file content | Major |
+| [TUBEMQ-551](https://issues.apache.org/jira/browse/TUBEMQ-551) | Adjust 
NOTICE file content | Major |
+| [TUBEMQ-558](https://issues.apache.org/jira/browse/TUBEMQ-558) | Adjust the 
LICENSE of the file header | Major |
+| [TUBEMQ-559](https://issues.apache.org/jira/browse/TUBEMQ-559) | Update the 
LICENSE file according to the 0.8.0-RC2 review | Major |
+| [TUBEMQ-560](https://issues.apache.org/jira/browse/TUBEMQ-560) | Remove 
unprepared modules | Major |
diff --git a/zh-cn/docs/download/download.html 
b/zh-cn/docs/download/download.html
index dd51000..3a0d7c9 100644
--- a/zh-cn/docs/download/download.html
+++ b/zh-cn/docs/download/download.html
@@ -13,7 +13,15 @@
 </head>
 <body>
        <div id="root"><div class="documentation-page" 
data-reactroot=""><header class="header-container header-container-normal"><div 
class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img 
class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div 
class="logo-split"></div><a href=""></a><img class="logo tube" 
style="width:72px" src="/img/Tube logo.svg"/></a><div class="search 
search-normal"><span class="icon-search"></span></div><span class="language-swi 
[...]
-<p>使用以下链接,下载TubeMQ,最新版本为0.7.0.</p>
+<p>使用以下链接,下载TubeMQ,最新版本为0.8.0.</p>
+<h2>0.8.0 release</h2>
+<ul>
+<li>发布时间:2021-03-04</li>
+<li><a href="release-0.8.0.md">发版说明</a></li>
+<li>源码: <a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz";>tubemq-0.8.0-incubating-src.tar.gz</a>
             [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc";>PGP</a>]
        [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512";>SHA512</a>]</li>
+<li>客户端: <a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz";>tubemq-client-0.8.0-incubating-bin.tar.gz</a>
       [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc";>PGP</a>]
 [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512";>SHA512</a>]</li>
+<li>服务端: <a 
href="http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz";>tubemq-server-0.8.0-incubating-bin.tar.gz</a>
       [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc";>PGP</a>]
 [<a 
href="https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512";>SHA512</a>]</li>
+</ul>
 <h2>0.7.0 release</h2>
 <ul>
 <li>发布时间:2020-12-04</li>
diff --git a/zh-cn/docs/download/download.json 
b/zh-cn/docs/download/download.json
index b25c859..9cf8217 100644
--- a/zh-cn/docs/download/download.json
+++ b/zh-cn/docs/download/download.json
@@ -1,6 +1,6 @@
 {
   "filename": "download.md",
-  "__html": "<h2>下载链接</h2>\n<p>使用以下链接,下载TubeMQ,最新版本为0.7.0.</p>\n<h2>0.7.0 
release</h2>\n<ul>\n<li>发布时间:2020-12-04</li>\n<li><a 
href=\"release-0.7.0.md\">发版说明</a></li>\n<li>源码: <a 
href=\"http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.7.0-incubating/apache-tubemq-0.7.0-incubating-src.tar.gz\";>tubemq-0.7.0-incubating-src.tar.gz</a>
             [<a 
href=\"https://downloads.apache.org/incubator/tubemq/0.7.0-incubating/apache-tubemq-0.7.0-incubating-src.tar.gz.asc\";>PGP</a>]
        [< [...]
+  "__html": "<h2>下载链接</h2>\n<p>使用以下链接,下载TubeMQ,最新版本为0.8.0.</p>\n<h2>0.8.0 
release</h2>\n<ul>\n<li>发布时间:2021-03-04</li>\n<li><a 
href=\"release-0.8.0.md\">发版说明</a></li>\n<li>源码: <a 
href=\"http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz\";>tubemq-0.8.0-incubating-src.tar.gz</a>
             [<a 
href=\"https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc\";>PGP</a>]
        [< [...]
   "link": "/zh-cn/docs/download/download.html",
   "meta": {
     "title": "下载 - Apache TubeMQ"
diff --git a/zh-cn/docs/download/download.md b/zh-cn/docs/download/download.md
index 2413fce..40a2b9f 100644
--- a/zh-cn/docs/download/download.md
+++ b/zh-cn/docs/download/download.md
@@ -3,8 +3,14 @@ title: 下载 - Apache TubeMQ
 ---
 
 ## 下载链接
-  使用以下链接,下载TubeMQ,最新版本为0.7.0.
+  使用以下链接,下载TubeMQ,最新版本为0.8.0.
 
+## 0.8.0 release
+ - 发布时间:2021-03-04
+ - [发版说明](release-0.8.0.md)
+ - 源码: 
[tubemq-0.8.0-incubating-src.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)
             
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
        
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
+ - 客户端: 
[tubemq-client-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
+ - 服务端: 
[tubemq-server-0.8.0-incubating-bin.tar.gz](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)
       
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
 
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 ## 0.7.0 release
  - 发布时间:2020-12-04
  - [发版说明](release-0.7.0.md)
diff --git a/zh-cn/docs/download/release-0.8.0.md  
b/zh-cn/docs/download/release-0.8.0.md 
new file mode 100644
index 0000000..1741972
--- /dev/null
+++ b/zh-cn/docs/download/release-0.8.0.md      
@@ -0,0 +1,100 @@
+---
+title: 下载 - Apache TubeMQ
+---
+
+# 下载TubeMQ
+  使用以下镜像下载TubeMQ
+
+## TubeMQ
+| 日期 | 版本| 备注 | 下载 |
+|:---:|:--:|:--:|:--:|
+| 2021-03-04 | 0.8.0 | Source | 
[[SRC](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz)]
                 
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.asc)]
             
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-0.8.0-incubating-src.tar.gz.sha512)]
 |
+| |                       | Client | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-client-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+| |                       | Server | 
[[TAR](http://www.apache.org/dyn/closer.lua/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz)]
          
[[PGP](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.asc)]
      
[[SHA512](https://downloads.apache.org/incubator/tubemq/0.8.0-incubating/apache-tubemq-server-0.8.0-incubating-bin.tar.gz.sha512)]
 |
+
+## 发版说明
+
+### 改进:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-430](https://issues.apache.org/jira/browse/TUBEMQ-430) | Optimizing 
the implementation of HTTP API for broke  | Major |
+| [TUBEMQ-445](https://issues.apache.org/jira/browse/TUBEMQ-445) | Adjust the 
status check default sleep interval of pullConsumeReadyChkSliceMs  | Major |
+| [TUBEMQ-448](https://issues.apache.org/jira/browse/TUBEMQ-448) | Add 
Committer and PPMC operation process  | Major |
+| [TUBEMQ-449](https://issues.apache.org/jira/browse/TUBEMQ-449) | Adjust 
Example implementation  | Major |
+| [TUBEMQ-452](https://issues.apache.org/jira/browse/TUBEMQ-452) | Optimize 
rebalance performance | Major |
+| [TUBEMQ-467](https://issues.apache.org/jira/browse/TUBEMQ-467) | Add WEB 
APIs of Master and Broker | Major |
+| [TUBEMQ-489](https://issues.apache.org/jira/browse/TUBEMQ-489) | Add the 
maximum message length parameter setting | Major |
+| [TUBEMQ-495](https://issues.apache.org/jira/browse/TUBEMQ-495) | Code 
implementation adjustment based on SpotBugs check | Major |
+| [TUBEMQ-511](https://issues.apache.org/jira/browse/TUBEMQ-511) | Replace the 
conditional operator (?:) with mid()  | Major |
+| [TUBEMQ-512](https://issues.apache.org/jira/browse/TUBEMQ-512) | Add package 
length control based on Topic  | Major |
+| [TUBEMQ-515](https://issues.apache.org/jira/browse/TUBEMQ-515) | Add cluster 
Topic view web api  | Major |
+
+### BUG修复:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-437](https://issues.apache.org/jira/browse/TUBEMQ-437) | Fix tubemq 
table source sink factory instance creating problem | Major |
+| [TUBEMQ-441](https://issues.apache.org/jira/browse/TUBEMQ-441) | An error 
occurred when using the Tubemq class to create a sink table | Major |
+| [TUBEMQ-442](https://issues.apache.org/jira/browse/TUBEMQ-442) | Modifying 
the jvm parameters when the broker starts does not take effect  | Major    |
+| [TUBEMQ-443](https://issues.apache.org/jira/browse/TUBEMQ-443) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-446](https://issues.apache.org/jira/browse/TUBEMQ-446) | Small bugs 
fix that do not affect the main logics | Major |
+| [TUBEMQ-450](https://issues.apache.org/jira/browse/TUBEMQ-450) | 
TubeClientException: Generate producer id failed  | Major |
+| [TUBEMQ-453](https://issues.apache.org/jira/browse/TUBEMQ-453) | 
TubemqSourceFunction class prints too many logs problem | Major |
+| [TUBEMQ-506](https://issues.apache.org/jira/browse/TUBEMQ-506) | cmakelist 
error | Major |
+| [TUBEMQ-510](https://issues.apache.org/jira/browse/TUBEMQ-510) | Found a bug 
in MessageProducerExample class | Major |
+| [TUBEMQ-518](https://issues.apache.org/jira/browse/TUBEMQ-518) | fix 
parameter pass error | Major |
+| [TUBEMQ-526](https://issues.apache.org/jira/browse/TUBEMQ-526) | Adjust the 
packaging script and version check list, remove the "-WIP" tag | Major |
+| [TUBEMQ-555](https://issues.apache.org/jira/browse/TUBEMQ-555) | short 
session data can only be written to a specific partition | Major |
+| [TUBEMQ-556](https://issues.apache.org/jira/browse/TUBEMQ-556) | Index value 
is bigger than the actual number of records | Low |
+
+
+### 任务:
+| JIRA | Summary | Priority |
+|:---- |:---- | :--- |
+| [TUBEMQ-505](https://issues.apache.org/jira/browse/TUBEMQ-505) | Remove the 
"WIP" label of the DISCLAIMER file  | Major |
+| [TUBEMQ-543](https://issues.apache.org/jira/browse/TUBEMQ-543) | Modify the 
LICENSE statement of multiple files and others  | Major |
+| [TUBEMQ-557](https://issues.apache.org/jira/browse/TUBEMQ-557) | Handle the 
issues mentioned in the 0.8.0-RC2 review  | Major |
+| [TUBEMQ-562](https://issues.apache.org/jira/browse/TUBEMQ-562) | Update 
project contents according to the 0.8.0-RC3 review  | Major |
+
+### 子任务:
+| JIRA  | Summary  | Priority |
+| :---- | :------- | :------- |
+| [TUBEMQ-428](https://issues.apache.org/jira/browse/TUBEMQ-433) | Bumped 
version to 0.8.0-SNAPSHOT | Major |
+| [TUBEMQ-433](https://issues.apache.org/jira/browse/TUBEMQ-433) | add tubemq 
perf-consumer/producer scripts | Major |
+| [TUBEMQ-434](https://issues.apache.org/jira/browse/TUBEMQ-434) | Adjust 
Broker API mapping | Major |
+| [TUBEMQ-435](https://issues.apache.org/jira/browse/TUBEMQ-435) | Create Web 
field Mapping | Major |
+| [TUBEMQ-436](https://issues.apache.org/jira/browse/TUBEMQ-436) | Adjust 
Broker's HTTP API implementation | Major |
+| [TUBEMQ-439](https://issues.apache.org/jira/browse/TUBEMQ-439) | Add Cli 
field Scheme definition | Major |
+| [TUBEMQ-440](https://issues.apache.org/jira/browse/TUBEMQ-440) | Add feature 
package tube-manager to zip  | Major |
+| [TUBEMQ-444](https://issues.apache.org/jira/browse/TUBEMQ-444) | Add consume 
and produce Cli commands | Major |
+| [TUBEMQ-447](https://issues.apache.org/jira/browse/TUBEMQ-447) | Add 
Broker-Admin Cli | Major |
+| [TUBEMQ-451](https://issues.apache.org/jira/browse/TUBEMQ-451) | Replace 
ConsumeTupleInfo with Tuple2  | Major    |
+| [TUBEMQ-457](https://issues.apache.org/jira/browse/TUBEMQ-457) | There is no 
need to return StringBuilder in Master.java | Major |
+| [TUBEMQ-463](https://issues.apache.org/jira/browse/TUBEMQ-463) | Adjust 
Master rebalance process implementation  | Major |
+| [TUBEMQ-464](https://issues.apache.org/jira/browse/TUBEMQ-464) | Add 
parameter rebalanceParallel in master.ini | Major |
+| [TUBEMQ-470](https://issues.apache.org/jira/browse/TUBEMQ-470) | Add query 
API of TopicName and BrokerId collection  | Major |
+| [TUBEMQ-471](https://issues.apache.org/jira/browse/TUBEMQ-471) | Add query 
API Introduction of TopicName and BrokerId collection | Major |
+| [TUBEMQ-472](https://issues.apache.org/jira/browse/TUBEMQ-472) | Adjust 
Broker's AbstractWebHandler class implementation  | Major |
+| [TUBEMQ-475](https://issues.apache.org/jira/browse/TUBEMQ-475) | add the 
offset clone api of the consume group  | Major |
+| [TUBEMQ-482](https://issues.apache.org/jira/browse/TUBEMQ-482) | Add offset 
query api  | Major |
+| [TUBEMQ-484](https://issues.apache.org/jira/browse/TUBEMQ-484) | Add query 
API for topic publication information  | Major |
+| [TUBEMQ-485](https://issues.apache.org/jira/browse/TUBEMQ-485) | Add the 
batch setting API of consume group offset  | Major |
+| [TUBEMQ-486](https://issues.apache.org/jira/browse/TUBEMQ-486) | Add the 
delete API of consumer group offset  | Major |
+| [TUBEMQ-494](https://issues.apache.org/jira/browse/TUBEMQ-494) | Update API 
interface instruction document | Major |
+| [TUBEMQ-499](https://issues.apache.org/jira/browse/TUBEMQ-499) | Add 
configure store  | Major |
+| [TUBEMQ-500](https://issues.apache.org/jira/browse/TUBEMQ-500) | Add setting 
operate API  | Major |
+| [TUBEMQ-501](https://issues.apache.org/jira/browse/TUBEMQ-501) | Adjust max 
message size check logic  | Major |
+| [TUBEMQ-502](https://issues.apache.org/jira/browse/TUBEMQ-502) | Add setting 
API interface document  | Major |
+| [TUBEMQ-504](https://issues.apache.org/jira/browse/TUBEMQ-504) | Adjust the 
WebMethodMapper class interfaces  | Major |
+| [TUBEMQ-508](https://issues.apache.org/jira/browse/TUBEMQ-508) | Optimize 
Broker's PB parameter check processing logic  | Major |
+| [TUBEMQ-509](https://issues.apache.org/jira/browse/TUBEMQ-509) | Adjust the 
packet length check when data is loaded  | Major |
+| [TUBEMQ-522](https://issues.apache.org/jira/browse/TUBEMQ-522) | Add 
admin_query_cluster_topic_view API document  | Major |
+| [TUBEMQ-544](https://issues.apache.org/jira/browse/TUBEMQ-544) | Adjust the 
LICENSE statement in the client.conf files of Python and C/C++ SDK | Major |
+| [TUBEMQ-546](https://issues.apache.org/jira/browse/TUBEMQ-546) | Restore the 
original license header of the referenced external source files | Major |
+| [TUBEMQ-547](https://issues.apache.org/jira/browse/TUBEMQ-547) | Recode the 
implementation of the *Startup.java classes in the Tool package | Major |
+| [TUBEMQ-548](https://issues.apache.org/jira/browse/TUBEMQ-548) | Handle the 
LICENSE authorization of font files in the resources | Major |
+| [TUBEMQ-549](https://issues.apache.org/jira/browse/TUBEMQ-549) | Handling 
the problem of compilation failure | Major |
+| [TUBEMQ-550](https://issues.apache.org/jira/browse/TUBEMQ-550) | Adjust 
LICENSE file content | Major |
+| [TUBEMQ-551](https://issues.apache.org/jira/browse/TUBEMQ-551) | Adjust 
NOTICE file content | Major |
+| [TUBEMQ-558](https://issues.apache.org/jira/browse/TUBEMQ-558) | Adjust the 
LICENSE of the file header | Major |
+| [TUBEMQ-559](https://issues.apache.org/jira/browse/TUBEMQ-559) | Update the 
LICENSE file according to the 0.8.0-RC2 review | Major |
+| [TUBEMQ-560](https://issues.apache.org/jira/browse/TUBEMQ-560) | Remove 
unprepared modules | Major |

Reply via email to