summaryrefslogtreecommitdiff
path: root/_doc
diff options
context:
space:
mode:
authorShulhan <m.shulhan@gmail.com>2020-12-06 04:11:04 +0700
committerShulhan <m.shulhan@gmail.com>2020-12-06 04:11:04 +0700
commit11e7727cec1a94a57ecec541149c8c1b53ad95b4 (patch)
tree1cd375eaf9315e73e9ae1300ffc0f8786bc685b3 /_doc
parent3f958900109323b8c66c2ee6847ba337f0b054bf (diff)
downloadpakakeh.go-0.21.0.tar.xz
Release share v0.21.0 (2020-12-06)v0.21.0
=== Breaking changes * test: refactoring Assert with better error message The new Assert function use the reflect.DoEqual that return an error which describe which field have unmatched value. === New features * http: allow Endpoint to register custom error handler The new field ErrorHandler on Endpoint allow the implementor to define their own function to handler error from Endpoint.Call. If the ErrorHandler is nil it will default to DefaultErrorHandler. * totp: new package that implement TOTP protocol Package totp implement Time-Based One-Time Password Algorithm based on RFC 6238. === Bug fixes * parser: fix Line method that always return non-empty line In case of content end without new line, for example "a\nb", the Line() method always return "b, 0" on the last line. * smtp: update the expired test certificate * websocket: create buffered channel for running queue. This is to fix Stop() method waiting for running channel to be consumed. === Enhancements * big: update the latest expected error message with Go tip * http: add an example on how to write custom HTTP status code The example show how to use http.ResponseWriter.WriteHeader to write custom HTTP status code instead of relying on errors.E. * net: always return the host name or IP on ParseIPPort. Previously, if the address is an IP address the returned value is empty, for example "127.0.0.1" will return empty host but with non-nil IP and port. This changes always return the host either as host name (the same as paremeter) or valid IP address. === Chores * all: replace the tasks to serve and generate docs using ciigo as library This way, one does not need to install ciigo binary, only require Go tools.
Diffstat (limited to '_doc')
-rw-r--r--_doc/CHANGELOG.html378
1 files changed, 251 insertions, 127 deletions
diff --git a/_doc/CHANGELOG.html b/_doc/CHANGELOG.html
index 3e8fc4c5..1839bc86 100644
--- a/_doc/CHANGELOG.html
+++ b/_doc/CHANGELOG.html
@@ -226,11 +226,6 @@ dd {
<div class="page">
<div class="container">
- <h1>CHANGELOG</h1>
- <div class="meta">
- <br />
- 2020-11-08 18:25:33 &#43;0700
- </div>
<div id="header">
<h1>CHANGELOG</h1>
@@ -239,57 +234,58 @@ dd {
<div id="toc" class="toc">
<div id="toctitle">Table of Contents</div>
<ul class="sectlevel1">
-<li><a href="#_share_v0_20_1_2020_11_08">share v0.20.1 (2020-11-08)</a>
+<li><a href="#_share_v0_21_0_2020_12_06">share v0.21.0 (2020-12-06)</a>
<ul class="sectlevel2">
+<li><a href="#_breaking_changes">Breaking changes</a></li>
+<li><a href="#_new_features">New features</a></li>
<li><a href="#_bug_fixes">Bug fixes</a></li>
<li><a href="#_enhancements">Enhancements</a></li>
<li><a href="#_chores">Chores</a></li>
</ul>
</li>
-<li><a href="#_share_v0_20_0_2020_10_05">share v0.20.0 (2020-10-05)</a>
+<li><a href="#_share_v0_20_1_2020_11_08">share v0.20.1 (2020-11-08)</a>
<ul class="sectlevel2">
-<li><a href="#_new_features">New features</a></li>
+<li><a href="#_bug_fixes_1">Bug fixes</a></li>
<li><a href="#_enhancements_1">Enhancements</a></li>
+<li><a href="#_chores_1">Chores</a></li>
</ul>
</li>
-<li><a href="#_share_v0_19_0_2020_09_08">share v0.19.0 (2020-09-08)</a>
+<li><a href="#_share_v0_20_0_2020_10_05">share v0.20.0 (2020-10-05)</a>
<ul class="sectlevel2">
-<li><a href="#_breaking_changes">Breaking changes</a></li>
<li><a href="#_new_features_1">New features</a></li>
-<li><a href="#_bug_fixes_1">Bug fixes</a></li>
+<li><a href="#_enhancements_2">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_18_0_2020_08_06">share v0.18.0 (2020-08-06)</a>
+<li><a href="#_share_v0_19_0_2020_09_08">share v0.19.0 (2020-09-08)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_1">Breaking changes</a></li>
+<li><a href="#_new_features_2">New features</a></li>
<li><a href="#_bug_fixes_2">Bug fixes</a></li>
-<li><a href="#_enhancements_2">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_17_0_2020_07_05">share v0.17.0 (2020-07-05)</a>
+<li><a href="#_share_v0_18_0_2020_08_06">share v0.18.0 (2020-08-06)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_2">Breaking changes</a></li>
<li><a href="#_bug_fixes_3">Bug fixes</a></li>
<li><a href="#_enhancements_3">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_16_0_2020_06_05">share v0.16.0 (2020-06-05)</a>
+<li><a href="#_share_v0_17_0_2020_07_05">share v0.17.0 (2020-07-05)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_3">Breaking changes</a></li>
<li><a href="#_bug_fixes_4">Bug fixes</a></li>
-<li><a href="#_new_features_2">New features</a></li>
<li><a href="#_enhancements_4">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_15_0_2020_05_04">share v0.15.0 (2020-05-04)</a>
+<li><a href="#_share_v0_16_0_2020_06_05">share v0.16.0 (2020-06-05)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_4">Breaking changes</a></li>
+<li><a href="#_bug_fixes_5">Bug fixes</a></li>
<li><a href="#_new_features_3">New features</a></li>
<li><a href="#_enhancements_5">Enhancements</a></li>
-<li><a href="#_bug_fixes_5">Bug fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_14_0_2020_04_03">share v0.14.0 (2020-04-03)</a>
+<li><a href="#_share_v0_15_0_2020_05_04">share v0.15.0 (2020-05-04)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_5">Breaking changes</a></li>
<li><a href="#_new_features_4">New features</a></li>
@@ -297,23 +293,23 @@ dd {
<li><a href="#_bug_fixes_6">Bug fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_13_0_2020_03_11">share v0.13.0 (2020-03-11)</a>
+<li><a href="#_share_v0_14_0_2020_04_03">share v0.14.0 (2020-04-03)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_6">Breaking changes</a></li>
<li><a href="#_new_features_5">New features</a></li>
<li><a href="#_enhancements_7">Enhancements</a></li>
-<li><a href="#_bug_fixes_7">Bug Fixes</a></li>
+<li><a href="#_bug_fixes_7">Bug fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_12_0_2020_02_13">share v0.12.0 (2020-02-13)</a>
+<li><a href="#_share_v0_13_0_2020_03_11">share v0.13.0 (2020-03-11)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_7">Breaking changes</a></li>
<li><a href="#_new_features_6">New features</a></li>
<li><a href="#_enhancements_8">Enhancements</a></li>
-<li><a href="#_bug_fixes_8">Bug fixes</a></li>
+<li><a href="#_bug_fixes_8">Bug Fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_11_0_2019_12_26">share v0.11.0 (2019-12-26)</a>
+<li><a href="#_share_v0_12_0_2020_02_13">share v0.12.0 (2020-02-13)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_8">Breaking changes</a></li>
<li><a href="#_new_features_7">New features</a></li>
@@ -321,91 +317,99 @@ dd {
<li><a href="#_bug_fixes_9">Bug fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_10_2_2019_12_07">share v0.10.2 (2019-12-07)</a>
+<li><a href="#_share_v0_11_0_2019_12_26">share v0.11.0 (2019-12-26)</a>
<ul class="sectlevel2">
-<li><a href="#_bug_fixes_10">Bug Fixes</a></li>
+<li><a href="#_breaking_changes_9">Breaking changes</a></li>
+<li><a href="#_new_features_8">New features</a></li>
+<li><a href="#_enhancements_10">Enhancements</a></li>
+<li><a href="#_bug_fixes_10">Bug fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_10_1_2019_12_05">share v0.10.1 (2019-12-05)</a>
+<li><a href="#_share_v0_10_2_2019_12_07">share v0.10.2 (2019-12-07)</a>
<ul class="sectlevel2">
<li><a href="#_bug_fixes_11">Bug Fixes</a></li>
-<li><a href="#_enhancements_10">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_10_0_2019_11_05">share v0.10.0 (2019-11-05)</a>
+<li><a href="#_share_v0_10_1_2019_12_05">share v0.10.1 (2019-12-05)</a>
<ul class="sectlevel2">
-<li><a href="#_new_features_8">New Features</a></li>
-<li><a href="#_breaking_changes_9">Breaking Changes</a></li>
-<li><a href="#_enhancements_11">Enhancements</a></li>
<li><a href="#_bug_fixes_12">Bug Fixes</a></li>
+<li><a href="#_enhancements_11">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_9_0_2019_10_08">share v0.9.0 (2019-10-08)</a>
+<li><a href="#_share_v0_10_0_2019_11_05">share v0.10.0 (2019-11-05)</a>
<ul class="sectlevel2">
<li><a href="#_new_features_9">New Features</a></li>
<li><a href="#_breaking_changes_10">Breaking Changes</a></li>
-<li><a href="#_bug_fixes_13">Bug Fixes</a></li>
<li><a href="#_enhancements_12">Enhancements</a></li>
+<li><a href="#_bug_fixes_13">Bug Fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_8_2_2019_09_05">share v0.8.2 (2019-09-05)</a>
+<li><a href="#_share_v0_9_0_2019_10_08">share v0.9.0 (2019-10-08)</a>
<ul class="sectlevel2">
+<li><a href="#_new_features_10">New Features</a></li>
+<li><a href="#_breaking_changes_11">Breaking Changes</a></li>
+<li><a href="#_bug_fixes_14">Bug Fixes</a></li>
<li><a href="#_enhancements_13">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_8_1_2019_08_05">share v0.8.1 (2019-08-05)</a>
+<li><a href="#_share_v0_8_2_2019_09_05">share v0.8.2 (2019-09-05)</a>
<ul class="sectlevel2">
<li><a href="#_enhancements_14">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_8_0_2019_07_09">share v0.8.0 (2019-07-09)</a>
+<li><a href="#_share_v0_8_1_2019_08_05">share v0.8.1 (2019-08-05)</a>
<ul class="sectlevel2">
-<li><a href="#_breaking_changes_11">Breaking changes</a></li>
-<li><a href="#_new_features_10">New Features</a></li>
<li><a href="#_enhancements_15">Enhancements</a></li>
</ul>
</li>
-<li><a href="#_share_v0_7_0_2019_06_14">share v0.7.0 (2019-06-14)</a>
+<li><a href="#_share_v0_8_0_2019_07_09">share v0.8.0 (2019-07-09)</a>
<ul class="sectlevel2">
-<li><a href="#_breaking_changes_12">Breaking Changes</a></li>
+<li><a href="#_breaking_changes_12">Breaking changes</a></li>
<li><a href="#_new_features_11">New Features</a></li>
<li><a href="#_enhancements_16">Enhancements</a></li>
-<li><a href="#_bug_fixes_14">Bug Fixes</a></li>
</ul>
</li>
-<li><a href="#_share_v0_6_1_2019_05_11">share v0.6.1 (2019-05-11)</a></li>
-<li><a href="#_share_v0_6_0_2019_05_07">share v0.6.0 (2019-05-07)</a>
+<li><a href="#_share_v0_7_0_2019_06_14">share v0.7.0 (2019-06-14)</a>
<ul class="sectlevel2">
<li><a href="#_breaking_changes_13">Breaking Changes</a></li>
<li><a href="#_new_features_12">New Features</a></li>
+<li><a href="#_enhancements_17">Enhancements</a></li>
<li><a href="#_bug_fixes_15">Bug Fixes</a></li>
-<li><a href="#_documentation">Documentation</a></li>
</ul>
</li>
-<li><a href="#_share_v0_5_0_2019_04_02">share v0.5.0 (2019-04-02)</a>
+<li><a href="#_share_v0_6_1_2019_05_11">share v0.6.1 (2019-05-11)</a></li>
+<li><a href="#_share_v0_6_0_2019_05_07">share v0.6.0 (2019-05-07)</a>
<ul class="sectlevel2">
+<li><a href="#_breaking_changes_14">Breaking Changes</a></li>
<li><a href="#_new_features_13">New Features</a></li>
-<li><a href="#_enhancements_17">Enhancements</a></li>
+<li><a href="#_bug_fixes_16">Bug Fixes</a></li>
+<li><a href="#_documentation">Documentation</a></li>
</ul>
</li>
-<li><a href="#_share_v0_4_0_2019_03_01">share v0.4.0 (2019-03-01)</a>
+<li><a href="#_share_v0_5_0_2019_04_02">share v0.5.0 (2019-04-02)</a>
<ul class="sectlevel2">
<li><a href="#_new_features_14">New Features</a></li>
<li><a href="#_enhancements_18">Enhancements</a></li>
+</ul>
+</li>
+<li><a href="#_share_v0_4_0_2019_03_01">share v0.4.0 (2019-03-01)</a>
+<ul class="sectlevel2">
+<li><a href="#_new_features_15">New Features</a></li>
+<li><a href="#_enhancements_19">Enhancements</a></li>
<li><a href="#_fixes">Fixes</a></li>
</ul>
</li>
<li><a href="#_share_v0_3_0_2019_02_01">share v0.3.0 (2019-02-01)</a>
<ul class="sectlevel2">
<li><a href="#_features_changes">Features Changes</a></li>
-<li><a href="#_enhancements_19">Enhancements</a></li>
+<li><a href="#_enhancements_20">Enhancements</a></li>
<li><a href="#_fixes_1">Fixes</a></li>
</ul>
</li>
<li><a href="#_share_v0_2_0_2019_01_02">share v0.2.0 (2019-01-02)</a>
<ul class="sectlevel2">
-<li><a href="#_new_features_15">New Features</a></li>
-<li><a href="#_enhancements_20">Enhancements</a></li>
+<li><a href="#_new_features_16">New Features</a></li>
+<li><a href="#_enhancements_21">Enhancements</a></li>
</ul>
</li>
<li><a href="#_share_v0_1_0_2018_11_29">share v0.1.0 (2018-11-29)</a></li>
@@ -417,18 +421,127 @@ dd {
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
-<p>This library is released each month, usually at the first week of month.</p>
+<p>This library is released every month, usually at the first week of month.</p>
</div>
</div>
</div>
<div class="sect1">
-<h2 id="_share_v0_20_1_2020_11_08">share v0.20.1 (2020-11-08)</h2>
+<h2 id="_share_v0_21_0_2020_12_06">share v0.21.0 (2020-12-06)</h2>
<div class="sectionbody">
<div class="sect2">
+<h3 id="_breaking_changes">Breaking changes</h3>
+<div class="ulist">
+<ul>
+<li>
+<p>test: refactoring Assert with better error message</p>
+<div class="paragraph">
+<p>The new Assert function use the reflect.DoEqual that return an error
+which describe which field have unmatched value.</p>
+</div>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_new_features">New features</h3>
+<div class="ulist">
+<ul>
+<li>
+<p>http: allow Endpoint to register custom error handler</p>
+<div class="paragraph">
+<p>The new field ErrorHandler on Endpoint allow the implementor to define
+their own function to handler error from Endpoint.Call.</p>
+</div>
+<div class="paragraph">
+<p>If the ErrorHandler is nil it will default to DefaultErrorHandler.</p>
+</div>
+</li>
+<li>
+<p>totp: new package that implement TOTP protocol</p>
+<div class="paragraph">
+<p>Package totp implement Time-Based One-Time Password Algorithm based on
+RFC 6238.</p>
+</div>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
<h3 id="_bug_fixes">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
+<p>parser: fix Line method that always return non-empty line</p>
+<div class="paragraph">
+<p>In case of content end without new line, for example "anb", the Line()
+method always return "b, 0" on the last line.</p>
+</div>
+</li>
+<li>
+<p>smtp: update the expired test certificate</p>
+</li>
+<li>
+<p>websocket: create buffered channel for running queue.</p>
+<div class="paragraph">
+<p>This is to fix Stop() method waiting for running channel to be consumed.</p>
+</div>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_enhancements">Enhancements</h3>
+<div class="ulist">
+<ul>
+<li>
+<p>big: update the latest expected error message with Go tip</p>
+</li>
+<li>
+<p>http: add an example on how to write custom HTTP status code</p>
+<div class="paragraph">
+<p>The example show how to use http.ResponseWriter.WriteHeader to write
+custom HTTP status code instead of relying on errors.E.</p>
+</div>
+</li>
+<li>
+<p>net: always return the host name or IP on ParseIPPort.</p>
+<div class="paragraph">
+<p>Previously, if the address is an IP address the returned value is empty,
+for example "127.0.0.1" will return empty host but with non-nil IP and
+port.</p>
+</div>
+<div class="paragraph">
+<p>This changes always return the host either as host name (the same as
+paremeter) or valid IP address.</p>
+</div>
+</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_chores">Chores</h3>
+<div class="ulist">
+<ul>
+<li>
+<p>all: replace the tasks to serve and generate docs using ciigo as library</p>
+<div class="paragraph">
+<p>This way, one does not need to install ciigo binary, only require Go
+tools.</p>
+</div>
+</li>
+</ul>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_share_v0_20_1_2020_11_08">share v0.20.1 (2020-11-08)</h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_bug_fixes_1">Bug fixes</h3>
+<div class="ulist">
+<ul>
+<li>
<p>websocket: set TLSConfig to nil if Endpoint scheme is not https or wss
If user set TLSConfig but the Endpoint is not start with "https" or "wss",
client open() method may return an error "Connect: tls: first record does
@@ -441,7 +554,7 @@ not look like a TLS handshake".</p>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements">Enhancements</h3>
+<h3 id="_enhancements_1">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -473,7 +586,7 @@ position, and then call Close to reset the internal state back to zero.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_chores">Chores</h3>
+<h3 id="_chores_1">Chores</h3>
<div class="ulist">
<ul>
<li>
@@ -488,7 +601,7 @@ position, and then call Close to reset the internal state back to zero.</pre>
<h2 id="_share_v0_20_0_2020_10_05">share v0.20.0 (2020-10-05)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_new_features">New features</h3>
+<h3 id="_new_features_1">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -510,7 +623,7 @@ handled and filled automatically.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_1">Enhancements</h3>
+<h3 id="_enhancements_2">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -532,7 +645,7 @@ is forwarded to DNS server, so this changes accommodated it.</p>
<h2 id="_share_v0_19_0_2020_09_08">share v0.19.0 (2020-09-08)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes">Breaking changes</h3>
+<h3 id="_breaking_changes_1">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -586,7 +699,7 @@ Messages.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_1">New features</h3>
+<h3 id="_new_features_2">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -632,7 +745,7 @@ previously) and new path and handler for retrieving server status.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_1">Bug fixes</h3>
+<h3 id="_bug_fixes_2">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -656,7 +769,7 @@ previously) and new path and handler for retrieving server status.</pre>
<h2 id="_share_v0_18_0_2020_08_06">share v0.18.0 (2020-08-06)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_1">Breaking changes</h3>
+<h3 id="_breaking_changes_2">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -694,7 +807,7 @@ if the library always set the response type to None.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_2">Bug fixes</h3>
+<h3 id="_bug_fixes_3">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -704,7 +817,7 @@ if the library always set the response type to None.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_2">Enhancements</h3>
+<h3 id="_enhancements_3">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -734,7 +847,7 @@ if the library always set the response type to None.</pre>
<h2 id="_share_v0_17_0_2020_07_05">share v0.17.0 (2020-07-05)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_2">Breaking changes</h3>
+<h3 id="_breaking_changes_3">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -750,7 +863,7 @@ if the library always set the response type to None.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_3">Bug fixes</h3>
+<h3 id="_bug_fixes_4">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -766,7 +879,7 @@ if the library always set the response type to None.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_3">Enhancements</h3>
+<h3 id="_enhancements_4">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -796,7 +909,7 @@ if the library always set the response type to None.</pre>
<h2 id="_share_v0_16_0_2020_06_05">share v0.16.0 (2020-06-05)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_3">Breaking changes</h3>
+<h3 id="_breaking_changes_4">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -859,7 +972,7 @@ become unneeded, so we remove them.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_4">Bug fixes</h3>
+<h3 id="_bug_fixes_5">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -869,7 +982,7 @@ become unneeded, so we remove them.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_2">New features</h3>
+<h3 id="_new_features_3">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -938,7 +1051,7 @@ file name that has been executed and the timestamp.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_4">Enhancements</h3>
+<h3 id="_enhancements_5">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -999,7 +1112,7 @@ fis, err := root.Readdir(0)</pre>
<h2 id="_share_v0_15_0_2020_05_04">share v0.15.0 (2020-05-04)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_4">Breaking changes</h3>
+<h3 id="_breaking_changes_5">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1012,7 +1125,7 @@ fis, err := root.Readdir(0)</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_3">New features</h3>
+<h3 id="_new_features_4">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -1046,7 +1159,7 @@ to iterate each node in the tree from top to bottom.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_5">Enhancements</h3>
+<h3 id="_enhancements_6">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1068,7 +1181,7 @@ to iterate each node in the tree from top to bottom.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_5">Bug fixes</h3>
+<h3 id="_bug_fixes_6">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1083,7 +1196,7 @@ to iterate each node in the tree from top to bottom.</pre>
<h2 id="_share_v0_14_0_2020_04_03">share v0.14.0 (2020-04-03)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_5">Breaking changes</h3>
+<h3 id="_breaking_changes_6">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1104,7 +1217,7 @@ will be handled automatically based on value on field Method.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_4">New features</h3>
+<h3 id="_new_features_5">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -1148,7 +1261,7 @@ single space ' '.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_6">Enhancements</h3>
+<h3 id="_enhancements_7">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1182,7 +1295,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_6">Bug fixes</h3>
+<h3 id="_bug_fixes_7">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1197,13 +1310,13 @@ word.</pre>
<h2 id="_share_v0_13_0_2020_03_11">share v0.13.0 (2020-03-11)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_6">Breaking changes</h3>
+<h3 id="_breaking_changes_7">Breaking changes</h3>
<div class="paragraph">
<p>Set the minimum Go version to 1.13.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_5">New features</h3>
+<h3 id="_new_features_6">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -1216,7 +1329,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_7">Enhancements</h3>
+<h3 id="_enhancements_8">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1238,7 +1351,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_7">Bug Fixes</h3>
+<h3 id="_bug_fixes_8">Bug Fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1256,7 +1369,7 @@ word.</pre>
<h2 id="_share_v0_12_0_2020_02_13">share v0.12.0 (2020-02-13)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_7">Breaking changes</h3>
+<h3 id="_breaking_changes_8">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1275,7 +1388,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_6">New features</h3>
+<h3 id="_new_features_7">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -1291,7 +1404,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_8">Enhancements</h3>
+<h3 id="_enhancements_9">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1301,7 +1414,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_8">Bug fixes</h3>
+<h3 id="_bug_fixes_9">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1316,7 +1429,7 @@ word.</pre>
<h2 id="_share_v0_11_0_2019_12_26">share v0.11.0 (2019-12-26)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_8">Breaking changes</h3>
+<h3 id="_breaking_changes_9">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1326,7 +1439,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_7">New features</h3>
+<h3 id="_new_features_8">New features</h3>
<div class="ulist">
<ul>
<li>
@@ -1345,7 +1458,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_9">Enhancements</h3>
+<h3 id="_enhancements_10">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1361,7 +1474,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_9">Bug fixes</h3>
+<h3 id="_bug_fixes_10">Bug fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1376,7 +1489,7 @@ word.</pre>
<h2 id="_share_v0_10_2_2019_12_07">share v0.10.2 (2019-12-07)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_bug_fixes_10">Bug Fixes</h3>
+<h3 id="_bug_fixes_11">Bug Fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1394,7 +1507,7 @@ word.</pre>
<h2 id="_share_v0_10_1_2019_12_05">share v0.10.1 (2019-12-05)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_bug_fixes_11">Bug Fixes</h3>
+<h3 id="_bug_fixes_12">Bug Fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1443,7 +1556,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_10">Enhancements</h3>
+<h3 id="_enhancements_11">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1488,7 +1601,7 @@ word.</pre>
<h2 id="_share_v0_10_0_2019_11_05">share v0.10.0 (2019-11-05)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_new_features_8">New Features</h3>
+<h3 id="_new_features_9">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -1504,7 +1617,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_breaking_changes_9">Breaking Changes</h3>
+<h3 id="_breaking_changes_10">Breaking Changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1517,7 +1630,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_11">Enhancements</h3>
+<h3 id="_enhancements_12">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1539,7 +1652,7 @@ word.</pre>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_12">Bug Fixes</h3>
+<h3 id="_bug_fixes_13">Bug Fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1569,7 +1682,7 @@ word.</pre>
<h2 id="_share_v0_9_0_2019_10_08">share v0.9.0 (2019-10-08)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_new_features_9">New Features</h3>
+<h3 id="_new_features_10">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -1612,7 +1725,7 @@ http.Request.Form using Get method.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_breaking_changes_10">Breaking Changes</h3>
+<h3 id="_breaking_changes_11">Breaking Changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1639,7 +1752,7 @@ to be an empty string, so "var" value is equal to "".</p>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_13">Bug Fixes</h3>
+<h3 id="_bug_fixes_14">Bug Fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1656,7 +1769,7 @@ no DNS queries forwarded to parent server.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_12">Enhancements</h3>
+<h3 id="_enhancements_13">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1681,7 +1794,7 @@ to Search the content.</p>
<h2 id="_share_v0_8_2_2019_09_05">share v0.8.2 (2019-09-05)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_enhancements_13">Enhancements</h3>
+<h3 id="_enhancements_14">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1731,7 +1844,7 @@ in directory.</p>
<h2 id="_share_v0_8_1_2019_08_05">share v0.8.1 (2019-08-05)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_enhancements_14">Enhancements</h3>
+<h3 id="_enhancements_15">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1769,7 +1882,7 @@ file, we want that file to be excluded from .go static source.</p>
<h2 id="_share_v0_8_0_2019_07_09">share v0.8.0 (2019-07-09)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_breaking_changes_11">Breaking changes</h3>
+<h3 id="_breaking_changes_12">Breaking changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1780,7 +1893,7 @@ package to <code>ascii</code> package.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_10">New Features</h3>
+<h3 id="_new_features_11">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -1790,7 +1903,7 @@ package to <code>ascii</code> package.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_15">Enhancements</h3>
+<h3 id="_enhancements_16">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1815,7 +1928,7 @@ package to <code>ascii</code> package.</p>
simple API.</p>
</div>
<div class="sect2">
-<h3 id="_breaking_changes_12">Breaking Changes</h3>
+<h3 id="_breaking_changes_13">Breaking Changes</h3>
<div class="ulist">
<ul>
<li>
@@ -1828,7 +1941,7 @@ simple API.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_11">New Features</h3>
+<h3 id="_new_features_12">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -1841,7 +1954,7 @@ simple API.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_16">Enhancements</h3>
+<h3 id="_enhancements_17">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -1899,7 +2012,7 @@ simple API.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_14">Bug Fixes</h3>
+<h3 id="_bug_fixes_15">Bug Fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -1953,7 +2066,7 @@ Most notable changes are adding caches and query forwarding (recursion), and
removing the server handler.</p>
</div>
<div class="sect2">
-<h3 id="_breaking_changes_13">Breaking Changes</h3>
+<h3 id="_breaking_changes_14">Breaking Changes</h3>
<div class="ulist">
<ul>
<li>
@@ -2027,7 +2140,7 @@ removing the server handler.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_new_features_12">New Features</h3>
+<h3 id="_new_features_13">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -2097,7 +2210,7 @@ removing the server handler.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_bug_fixes_15">Bug Fixes</h3>
+<h3 id="_bug_fixes_16">Bug Fixes</h3>
<div class="ulist">
<ul>
<li>
@@ -2163,7 +2276,7 @@ server and client API to make it easy and extensible. The websocket is now
100% pass the autobahn testsuite (minus compression feature).</p>
</div>
<div class="sect2">
-<h3 id="_new_features_13">New Features</h3>
+<h3 id="_new_features_14">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -2182,7 +2295,7 @@ server and client API to make it easy and extensible. The websocket is now
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_17">Enhancements</h3>
+<h3 id="_enhancements_18">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -2230,7 +2343,7 @@ testsuite</p>
<h2 id="_share_v0_4_0_2019_03_01">share v0.4.0 (2019-03-01)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_new_features_14">New Features</h3>
+<h3 id="_new_features_15">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -2247,11 +2360,12 @@ testsuite</p>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_18">Enhancements</h3>
+<h3 id="_enhancements_19">Enhancements</h3>
<div class="ulist">
<ul>
<li>
-<p><code>bytes</code></p>
+<p><code>bytes</code>
+</p>
<div class="ulist">
<ul>
<li>
@@ -2264,7 +2378,8 @@ testsuite</p>
</div>
</li>
<li>
-<p><code>dns</code></p>
+<p><code>dns</code>
+</p>
<div class="ulist">
<ul>
<li>
@@ -2292,7 +2407,8 @@ testsuite</p>
</div>
</li>
<li>
-<p><code>http</code></p>
+<p><code>http</code>
+</p>
<div class="ulist">
<ul>
<li>
@@ -2308,7 +2424,8 @@ testsuite</p>
</div>
</li>
<li>
-<p><code>ini</code></p>
+<p><code>ini</code>
+</p>
<div class="ulist">
<ul>
<li>
@@ -2321,7 +2438,8 @@ testsuite</p>
</div>
</li>
<li>
-<p><code>io</code></p>
+<p><code>io</code>
+</p>
<div class="ulist">
<ul>
<li>
@@ -2349,7 +2467,8 @@ testsuite</p>
</div>
</li>
<li>
-<p><code>memfs</code></p>
+<p><code>memfs</code>
+</p>
<div class="ulist">
<ul>
<li>
@@ -2436,7 +2555,7 @@ testsuite</p>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_19">Enhancements</h3>
+<h3 id="_enhancements_20">Enhancements</h3>
<div class="ulist">
<ul>
<li>
@@ -2476,7 +2595,7 @@ testsuite</p>
<h2 id="_share_v0_2_0_2019_01_02">share v0.2.0 (2019-01-02)</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_new_features_15">New Features</h3>
+<h3 id="_new_features_16">New Features</h3>
<div class="ulist">
<ul>
<li>
@@ -2490,7 +2609,7 @@ system and simplified routing handler.</p>
</div>
</div>
<div class="sect2">
-<h3 id="_enhancements_20">Enhancements</h3>
+<h3 id="_enhancements_21">Enhancements</h3>
<div class="paragraph">
<p>Fix warnings from linters.</p>
</div>
@@ -2526,6 +2645,11 @@ and several libraries.</p>
</div>
</div>
</div>
+<div id="footer">
+<div id="footer-text">
+Last updated 2020-12-06 03:48:31 +0700
+</div>
+</div>
</div>
</div>
@@ -2533,7 +2657,7 @@ and several libraries.</p>
<div class="footer">
Powered by <a
- href="https://github.com/shuLhan/ciigo"
+ href="https://git.sr.ht/shulhan/ciigo"
>
ciigo
</a>