You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by bu...@apache.org on 2020/11/20 17:19:21 UTC

svn commit: r1068261 [1/3] - in /websites/staging/thrift/trunk/content: ./ docs/ docs/committers/ docs/install/ lib/ test/ tutorial/

Author: buildbot
Date: Fri Nov 20 17:19:21 2020
New Revision: 1068261

Log:
Staging update by buildbot for thrift

Modified:
    websites/staging/thrift/trunk/content/   (props changed)
    websites/staging/thrift/trunk/content/about.html
    websites/staging/thrift/trunk/content/docs/Languages.html
    websites/staging/thrift/trunk/content/docs/coding_standards.html
    websites/staging/thrift/trunk/content/docs/committers/HowToCommit.html
    websites/staging/thrift/trunk/content/docs/idl.html
    websites/staging/thrift/trunk/content/docs/install/debian.html
    websites/staging/thrift/trunk/content/docs/install/windows.html
    websites/staging/thrift/trunk/content/index.html
    websites/staging/thrift/trunk/content/lib/cpp.html
    websites/staging/thrift/trunk/content/lib/csharp.html
    websites/staging/thrift/trunk/content/lib/go.html
    websites/staging/thrift/trunk/content/lib/netstd.html
    websites/staging/thrift/trunk/content/lib/nodejs.html
    websites/staging/thrift/trunk/content/lib/perl.html
    websites/staging/thrift/trunk/content/lib/php.html
    websites/staging/thrift/trunk/content/test/ThriftTest.html
    websites/staging/thrift/trunk/content/test/index.html
    websites/staging/thrift/trunk/content/tutorial/csharp.html
    websites/staging/thrift/trunk/content/tutorial/delphi.html
    websites/staging/thrift/trunk/content/tutorial/go.html
    websites/staging/thrift/trunk/content/tutorial/hs.html
    websites/staging/thrift/trunk/content/tutorial/netstd.html
    websites/staging/thrift/trunk/content/tutorial/perl.html
    websites/staging/thrift/trunk/content/tutorial/php.html
    websites/staging/thrift/trunk/content/tutorial/py.html

Propchange: websites/staging/thrift/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Nov 20 17:19:21 2020
@@ -1 +1 @@
-1875327
+1883670

Modified: websites/staging/thrift/trunk/content/about.html
==============================================================================
--- websites/staging/thrift/trunk/content/about.html (original)
+++ websites/staging/thrift/trunk/content/about.html Fri Nov 20 17:19:21 2020
@@ -264,13 +264,6 @@ h2:hover > .headerlink, h3:hover > .head
             <td align="right">9</td>
         </tr>
 
-        <tr class="">
-            <td class="username">simonsouth</td>
-            <td class="fullname">Simon South</td>
-            <td>C (GLib)</td>
-            <td align="right">-5</td>
-        </tr>
-
         </tbody>
     </table>
 </div>

Modified: websites/staging/thrift/trunk/content/docs/Languages.html
==============================================================================
--- websites/staging/thrift/trunk/content/docs/Languages.html (original)
+++ websites/staging/thrift/trunk/content/docs/Languages.html Fri Nov 20 17:19:21 2020
@@ -91,7 +91,7 @@ h2:hover > .headerlink, h3:hover > .head
 <a href="https://github.com/apache/thrift/blob/0.11.0/LANGUAGES.md">0.11.0</a></p>
 <p>Thrift supports many programming languages and has an impressive test suite that
 exercises most of the languages, protocols, and transports.  Each build exercises
-a matrix of thousands of possible combinations.  Each language typically has a 
+a matrix of thousands of possible combinations.  Each language typically has a
 minimum required version as well as support libraries - some mandatory and some
 optional.  The information provided below will help you assess whether you can
 use Apache Thrift with your project.  Obviously this is a complex matrix to
@@ -172,17 +172,6 @@ Thrift's core protocol is TBinary, suppo
 <td align=left><a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20THRIFT%20AND%20component%20in%20(%22C%2B%2B%20-%20Compiler%22%2C%20%22C%2B%2B%20-%20Library%22)%20and%20status%20not%20in%20(fixed%2C%20resolved%2C%20closed)">C++</a></td>
 </tr>
 <tr align=center>
-<td align=left><a href="https://github.com/apache/thrift/blob/master/lib/csharp/README.md">C#</a></td>
-<!-- Since -----------------><td>0.2.0<br>Deprecated<br>use netstd</td>
-<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<!-- Language Levels -------><td>.NET&nbsp;3.5 / mono&nbsp;3.2.8.0</td><td>.NET&nbsp;4.6.1 / mono&nbsp;4.6.2.7</td>
-<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<td align=left><a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20THRIFT%20AND%20component%20in%20(%22C%23%20-%20Compiler%22%2C%20%22C%23%20-%20Library%22)%20and%20status%20not%20in%20(fixed%2C%20resolved%2C%20closed)">C# (.NET)</a></td>
-</tr>
-<tr align=center>
 <td align=left><a href="https://github.com/apache/thrift/blob/master/lib/cl/README.md">Common LISP</a></td>
 <!-- Since -----------------><td>0.12.0</td>
 <!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
@@ -227,17 +216,6 @@ Thrift's core protocol is TBinary, suppo
 <td align=left><a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20THRIFT%20AND%20component%20in%20(%22Delphi%20-%20Compiler%22%2C%20%22Delphi%20-%20Library%22)%20and%20status%20not%20in%20(fixed%2C%20resolved%2C%20closed)">Delphi</a></td>
 </tr>
 <tr align=center>
-<td align=left><a href="https://github.com/apache/thrift/blob/master/lib/netcore/README.md">.NET Core</a></td>
-<!-- Since -----------------><td>0.11.0<br>Deprecated<br>use netstd</td>
-<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<!-- Language Levels -------><td>2.1.4</td><td>2.2.101</td>
-<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
-<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<td align=left><a href="https://issues.apache.org/jira/issues/?jql=project%20%3D%20THRIFT%20AND%20component%20in%20(%22netcore%20-%20Compiler%22%2C%20%22netcore%20-%20Library%22)%20and%20status%20not%20in%20(fixed%2C%20resolved%2C%20closed)">.NET Core</a></td>
-</tr>
-<tr align=center>
 <td align=left><a href="https://github.com/apache/thrift/blob/master/lib/netstd/README.md">.NET Standard</a></td>
 <!-- Since -----------------><td>0.13.0</td>
 <!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
@@ -340,7 +318,7 @@ Thrift's core protocol is TBinary, suppo
 <td align=left><a href="https://github.com/apache/thrift/blob/master/lib/nodejs/README.md">node.js</a></td>
 <!-- Since -----------------><td>0.6.0</td>
 <!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<!-- Language Levels -------><td>6.x</td><td>10.x</td>
+<!-- Language Levels -------><td>10.x</td><td>10.x</td>
 <!-- Low-Level Transports --><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
 <!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
 <!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
@@ -396,7 +374,7 @@ Thrift's core protocol is TBinary, suppo
 <!-- Since -----------------><td>0.2.0</td>
 <!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
 <!-- Language Levels -------><td>2.7.12, 3.5.2</td><td>2.7.15, 3.6.8</td>
-<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
+<!-- Low-Level Transports --><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
 <!-- Transport Wrappers ----><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
 <!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
 <!-- Servers ---------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
@@ -417,7 +395,7 @@ Thrift's core protocol is TBinary, suppo
 <td align=left><a href="https://github.com/apache/thrift/blob/master/lib/rs/README.md">Rust</a></td>
 <!-- Since -----------------><td>0.11.0</td>
 <!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
-<!-- Language Levels -------><td>1.35.0</td><td>1.35.0</td>
+<!-- Language Levels -------><td>1.40.0</td><td>1.xx.x</td>
 <!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
 <!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
 <!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>

Modified: websites/staging/thrift/trunk/content/docs/coding_standards.html
==============================================================================
--- websites/staging/thrift/trunk/content/docs/coding_standards.html (original)
+++ websites/staging/thrift/trunk/content/docs/coding_standards.html Fri Nov 20 17:19:21 2020
@@ -89,15 +89,15 @@ h2:hover > .headerlink, h3:hover > .head
    Good programmers write code that humans can understand.
                                   -- Martin Fowler, 1999</p>
 <p>The purpose of this document is to make everyone's life easier.</p>
-<p>It's easier when you read good, well formatted, with clearly defined purpose, code.
+<p>It's easier when you read good, well-formatted, with a clearly defined purpose, code.
 But the only way to read clean code is to write such.</p>
 <p>This document can help achieve that, but keep in mind that
 those are not silver-bullet, fix-all-at-once rules. Just think about readability while writing code.
-Write code like you would have to read it in ten years from now.</p>
+Write code like you would have to read it ten years from now.</p>
 <h2 id="general-coding-standards">General Coding Standards<a class="headerlink" href="#general-coding-standards" title="Permanent link">&para;</a></h2>
 <p>Thrift has some history. Not all existing code follows those rules.
 But we want to improve over time.
-When making small change / bugfix - like single line fix - do <em>not</em> refactor whole function.
+When making a small change / bugfix - like a single line fix - do <em>not</em> refactor the whole function.
 That disturbs code repository history.
 Whenever adding something new and / or making bigger refactoring
  - follow those rules as strictly as you can.</p>
@@ -105,9 +105,9 @@ Whenever adding something new and / or m
 Code review is the best way to improve readability.</p>
 <h3 id="basics">Basics<a class="headerlink" href="#basics" title="Permanent link">&para;</a></h3>
 <ul>
-<li>Use spaces not tabs</li>
+<li>Use spaces, not tabs</li>
 <li>Use only ASCII characters in file and directory names</li>
-<li>Commit to repository using Unix-style line endings (LF)
+<li>Commit to the repository using Unix-style line endings (LF)
      On Windows:
        git config core.autocrlf true</li>
 <li>Maximum line width - 100 characters</li>
@@ -115,14 +115,14 @@ Code review is the best way to improve r
 </ul>
 <h3 id="comments">Comments<a class="headerlink" href="#comments" title="Permanent link">&para;</a></h3>
 <ul>
-<li>Each file has to start with comment containing <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License</a></li>
-<li>Public API of library should be documented, preferably using format native for language specific documentation generation tools (Javadoc, Doxygen etc.)</li>
+<li>Each file has to start with a comment containing <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License</a></li>
+<li>Public API of a library should be documented, preferably using format native for language-specific documentation generation tools (Javadoc, Doxygen etc.)</li>
 <li>Other comments are discouraged - comments are lies. When one has to make comment it means one failed to write readable code. Instead of "I should write a comment here" think "I should clean it up"</li>
 <li>Do not leave "TODO/FIXME" comments - file <a href="http://issues.apache.org/jira/browse/THRIFT">Jira</a> issue instead</li>
 </ul>
 <h3 id="naming">Naming<a class="headerlink" href="#naming" title="Permanent link">&para;</a></h3>
 <p>Finding proper names is the most important and most difficult task in software development.</p>
-<h2 id="language-specific-coding-standards">Language Specific Coding Standards<a class="headerlink" href="#language-specific-coding-standards" title="Permanent link">&para;</a></h2>
+<h2 id="language-specific-coding-standards">Language-Specific Coding Standards<a class="headerlink" href="#language-specific-coding-standards" title="Permanent link">&para;</a></h2>
 <p>For detailed information see <code>lib/LANG/coding_standards.md</code></p>
 <p class='snippet_footer'>
   This snippet was generated by Apache Thrift's <strong>source tree docs</strong>:

Modified: websites/staging/thrift/trunk/content/docs/committers/HowToCommit.html
==============================================================================
--- websites/staging/thrift/trunk/content/docs/committers/HowToCommit.html (original)
+++ websites/staging/thrift/trunk/content/docs/committers/HowToCommit.html Fri Nov 20 17:19:21 2020
@@ -111,7 +111,7 @@ h2:hover > .headerlink, h3:hover > .head
 <p>Inspect the applied patch to ensure that all <a href="http://www.apache.org/licenses/LICENSE-2.0.html#contributions">Legal aspects on Submission of Contributions (Patches)</a> are met</p>
 </li>
 <li>
-<p>Run the necessary unit tests and cross language test cases to verify the patch</p>
+<p>Run the necessary unit tests and cross-language test cases to verify the patch</p>
 </li>
 <li>
 <p>Commit the patch</p>
@@ -129,7 +129,7 @@ h2:hover > .headerlink, h3:hover > .head
    Client: <component>
    Patch: <Name of person contributing the patch></p>
 <p>Description of what was fixed or addressed.</p>
-<p>If this is a github pull request then add below comment to automaticaly close GitHub request, 
+<p>If this is a github pull request then add the below comment to automatically close the GitHub request, 
    where #NNNN is the PR number:</p>
 <div class="codehilite"><pre><span class="n">This</span> <span class="n">closes</span> #<span class="n">NNNN</span>
 </pre></div>
@@ -143,7 +143,7 @@ h2:hover > .headerlink, h3:hover > .head
    git push origin master</p>
 </li>
 <li>
-<p>Resolve the jira issue and set the following for the changelog</p>
+<p>Resolve the Jira issue and set the following for the changelog</p>
 </li>
 <li>
 <p>Component the patch is for</p>

Modified: websites/staging/thrift/trunk/content/docs/idl.html
==============================================================================
--- websites/staging/thrift/trunk/content/docs/idl.html (original)
+++ websites/staging/thrift/trunk/content/docs/idl.html Fri Nov 20 17:19:21 2020
@@ -85,7 +85,7 @@
 }
 h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
 <h2 id="thrift-interface-description-language">Thrift interface description language<a class="headerlink" href="#thrift-interface-description-language" title="Permanent link">&para;</a></h2>
-<p>For Thrift version 0.13.0.</p>
+<p>For Thrift version 0.14.0.</p>
 <p>The Thrift interface definition language (IDL) allows for the definition of <a href="/docs/types">Thrift Types</a>. A Thrift IDL file is processed by the Thrift code generator to produce code for the various target languages to support the defined structs and services in the IDL file.</p>
 <h2 id="description">Description<a class="headerlink" href="#description" title="Permanent link">&para;</a></h2>
 <p>Here is a description of the Thrift IDL.</p>
@@ -117,7 +117,7 @@ h2:hover > .headerlink, h3:hover > .head
 <p>A namespace declares which namespaces/package/module/etc. the type definitions in this file will be declared in for the target languages. The namespace scope indicates which language the namespace applies to; a scope of '*' indicates that the namespace applies to all target languages.</p>
 <div class="codehilite"><pre><span class="p">[</span>5<span class="p">]</span>  <span class="n">Namespace</span>       <span class="p">::=</span>  <span class="p">(</span> <span class="s">&#39;namespace&#39;</span> <span class="p">(</span> <span class="n">NamespaceScope</span> <span class="n">Identifier</span> <span class="p">)</span> <span class="p">)</span>
 
-<span class="p">[</span>6<span class="p">]</span>  <span class="n">NamespaceScope</span>  <span class="p">::=</span>  <span class="s">&#39;*&#39;</span> <span class="o">|</span> <span class="s">&#39;c_glib&#39;</span> <span class="o">|</span> <span class="s">&#39;cpp&#39;</span> <span class="o">|</span> <span class="s">&#39;csharp&#39;</span> <span class="o">|</span> <span class="s">&#39;delphi&#39;</span> <span class="o">|</span> <span class="s">&#39;go&#39;</span> <span class="o">|</span> <span class="s">&#39;java&#39;</span> <span class="o">|</span> <span class="s">&#39;js&#39;</span> <span class="o">|</span> <span class="s">&#39;lua&#39;</span> <span class="o">|</span> <span class="s">&#39;netcore&#39;</span> <span class="o">|</span> <span class="s">&#39;perl&#39;</span> <span class="o">|</span> <span class="s">&#39;php&#39;</span> <span class="o">|</span> <span class="s">&#39;py&#39;</span> <span class="o">|</span> <span class="s">&#39;py.twisted&#39;</span> <span class="o">|</
 span> <span class="s">&#39;rb&#39;</span> <span class="o">|</span> <span class="s">&#39;st&#39;</span> <span class="o">|</span> <span class="s">&#39;xsd&#39;</span>
+<span class="p">[</span>6<span class="p">]</span>  <span class="n">NamespaceScope</span>  <span class="p">::=</span>  <span class="s">&#39;*&#39;</span> <span class="o">|</span> <span class="s">&#39;c_glib&#39;</span> <span class="o">|</span> <span class="s">&#39;cpp&#39;</span> <span class="o">|</span> <span class="s">&#39;delphi&#39;</span> <span class="o">|</span> <span class="s">&#39;haxe&#39;</span> <span class="o">|</span> <span class="s">&#39;go&#39;</span> <span class="o">|</span> <span class="s">&#39;java&#39;</span> <span class="o">|</span> <span class="s">&#39;js&#39;</span> <span class="o">|</span> <span class="s">&#39;lua&#39;</span> <span class="o">|</span> <span class="s">&#39;netstd&#39;</span> <span class="o">|</span> <span class="s">&#39;perl&#39;</span> <span class="o">|</span> <span class="s">&#39;php&#39;</span> <span class="o">|</span> <span class="s">&#39;py&#39;</span> <span class="o">|</span> <span class="s">&#39;py.twisted&#39;</span> <span class="o">|</spa
 n> <span class="s">&#39;rb&#39;</span> <span class="o">|</span> <span class="s">&#39;st&#39;</span> <span class="o">|</span> <span class="s">&#39;xsd&#39;</span>
 </pre></div>
 
 
@@ -186,7 +186,7 @@ h2:hover > .headerlink, h3:hover > .head
 
 
 <h3 id="field-requiredness">Field Requiredness<a class="headerlink" href="#field-requiredness" title="Permanent link">&para;</a></h3>
-<p>There are two explicit requiredness values, and a third one that is applied implicity if neither  <em>required</em> nor <em>optional</em> are given: <em>default</em> requiredness.</p>
+<p>There are two explicit requiredness values, and a third one that is applied implicitly if neither  <em>required</em> nor <em>optional</em> are given: <em>default</em> requiredness.</p>
 <div class="codehilite"><pre><span class="p">[</span>18<span class="p">]</span> <span class="n">FieldReq</span>        <span class="p">::=</span>  <span class="s">&#39;required&#39;</span> <span class="o">|</span> <span class="s">&#39;optional&#39;</span>
 </pre></div>
 
@@ -218,7 +218,7 @@ h2:hover > .headerlink, h3:hover > .head
 <p>There are ongoing discussions about that topic, see JIRA for details. Not all implementations treat default values in the very same way, but the current status quo is more or less that default fields are typically set at initialization time. Therefore, a value that equals the default may not be written, because the read end will set the value implicitly. On the other hand, an implementation is free to write the default value anyways, as there is no hard restriction that prevents this. </p>
 <p>The major point to keep in mind here is the fact, that any unwritten default value implicitly becomes part of the interface version. If that default is changed, the interface changes. If, in contrast, the default value is written into the output data, the default in the IDL can change at any time without affecting serialized data.</p>
 <h3 id="xsd-options">XSD Options<a class="headerlink" href="#xsd-options" title="Permanent link">&para;</a></h3>
-<p>N.B.: These have  some internal purpose at Facebook but serve no current purpose in Thrift. Use of these options is strongly discouraged.</p>
+<p>N.B.: These have some internal purpose at Facebook but serve no current purpose in Thrift. The use of these options is strongly discouraged.</p>
 <div class="codehilite"><pre><span class="p">[</span>19<span class="p">]</span> <span class="n">XsdFieldOptions</span> <span class="p">::=</span>  <span class="s">&#39;xsd_optional&#39;</span>? <span class="s">&#39;xsd_nillable&#39;</span>? <span class="n">XsdAttrs</span>?
 
 <span class="p">[</span>20<span class="p">]</span> <span class="n">XsdAttrs</span>        <span class="p">::=</span>  <span class="s">&#39;xsd_attrs&#39;</span> <span class="s">&#39;{&#39;</span> <span class="n">Field</span><span class="o">*</span> <span class="s">&#39;}&#39;</span>
@@ -297,8 +297,8 @@ h2:hover > .headerlink, h3:hover > .head
 <li><a href="https://raw.githubusercontent.com/apache/thrift/master/test/ThriftTest.thrift">ThriftTest.thrift</a> used by the Thrift TestFramework</li>
 <li>Thrift <a href="/tutorial/">tutorial</a></li>
 <li>Facebook's <a href="https://raw.githubusercontent.com/apache/thrift/master/contrib/fb303/if/fb303.thrift">fb303.thrift</a></li>
-<li><a href="http://cassandra.apache.org/">Apache Cassandra's</a> Thrift IDL: <a href="http://svn.apache.org/viewvc/cassandra/trunk/interface/cassandra.thrift?view=co">cassandra.thrift</a></li>
-<li><a href="http://www.evernote.com/about/developer/api/">Evernote API</a></li>
+<li><a href="http://cassandra.apache.org/">Apache Cassandra's</a> Thrift IDL: <a href="https://gitbox.apache.org/repos/asf?p=cassandra.git;a=blob_plain;f=interface/cassandra.thrift;hb=refs/heads/cassandra-3.0">cassandra.thrift</a></li>
+<li><a href="https://github.com/evernote/evernote-thrift">Evernote API</a></li>
 </ul>
 <h2 id="to-doquestions">To Do/Questions<a class="headerlink" href="#to-doquestions" title="Permanent link">&para;</a></h2>
 <p>Initialization of Base Types for all Languages?</p>
@@ -308,7 +308,7 @@ h2:hover > .headerlink, h3:hover > .head
 <p>Why does position of <code>CppType</code> vary between <code>SetType</code> and <code>ListType</code>?</p>
 <ul>
 <li>std::set does sort the elements automatically, that's the design. see <a href="/docs/types">Thrift Types</a> or the <a href="http://www.cplusplus.com/reference/stl/set/">C++ std:set reference</a> for further details</li>
-<li>The question is, how other languages are doing that? What about custom objects, do they have a Compare function the set the order correctly?</li>
+<li>The question is, how other languages are doing that? What about custom objects, do they have a Compare function to set the order correctly?</li>
 </ul>
 <p>Why can't <code>DefinitionType</code> be the same as <code>FieldType</code> (i.e. include <code>Identifier</code>)?</p>
 <p>Examine the <code>smalltalk.prefix</code> and <code>smalltalk.category</code> status (esp <code>smalltalk.category</code>, which takes <code>STIdentifier</code> as its argument)...</p>

Modified: websites/staging/thrift/trunk/content/docs/install/debian.html
==============================================================================
--- websites/staging/thrift/trunk/content/docs/install/debian.html (original)
+++ websites/staging/thrift/trunk/content/docs/install/debian.html Fri Nov 20 17:19:21 2020
@@ -133,8 +133,8 @@ h2:hover > .headerlink, h3:hover > .head
 <li>erlang-base erlang-eunit erlang-dev rebar</li>
 </ul>
 </li>
-<li>Csharp<ul>
-<li>mono-gmcs mono-devel libmono-system-web2.0-cil nunit nunit-console</li>
+<li>NetStd<ul>
+<li>apt-transport-https dotnet-sdk-3.1 aspnetcore-runtime-3.1</li>
 </ul>
 </li>
 <li>Haskell<ul>

Modified: websites/staging/thrift/trunk/content/docs/install/windows.html
==============================================================================
--- websites/staging/thrift/trunk/content/docs/install/windows.html (original)
+++ websites/staging/thrift/trunk/content/docs/install/windows.html Fri Nov 20 17:19:21 2020
@@ -85,7 +85,7 @@
 }
 h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
 <h2 id="windows-setup">Windows Setup<a class="headerlink" href="#windows-setup" title="Permanent link">&para;</a></h2>
-<p>The Thrift environment consists of two main parts: The Thrift compiler EXE and the language-dependent libraries. Most of these libraries will require some kind of build and/or installation. But regarding the Thrift compiler utility there are a number of different alternatives. </p>
+<p>The Thrift environment consists of two main parts: The Thrift compiler EXE and the language-dependent libraries. Most of these libraries will require some kind of build and/or installation. But regarding the Thrift compiler utility, there are a number of different alternatives. </p>
 <p>The first one of these alternatives is to download the <strong>pre-built Thrift Compiler EXE</strong> and only build the libraries needed from source, following one of the "Setup from source" methods outlined below.</p>
 <p>The other two options are to build the Thrift compiler from source. The most recommended way to achieve this is by means of the <strong>Visual Studio C++ build project</strong>. Alternatively, the Thrift compiler can also be built via <strong>Cygwin</strong> or <strong>MinGW</strong> build environments, however this method is not only less comfortable, but more time-consuming and requires much more manual effort. </p>
 <h2 id="prebuilt-thrift-compiler">Prebuilt Thrift compiler<a class="headerlink" href="#prebuilt-thrift-compiler" title="Permanent link">&para;</a></h2>
@@ -171,7 +171,7 @@ h2:hover > .headerlink, h3:hover > .head
 
 
 <p>Then linking using $(LTHRIFT) instead of -lthrift.</p>
-<div class="codehilite"><pre><span class="n">TODO</span> <span class="o">-</span> <span class="n">diagnose</span> <span class="n">issue</span> <span class="n">further</span>
+<div class="codehilite"><pre><span class="n">TODO</span> <span class="o">-</span> <span class="n">diagnose</span> <span class="n">the</span> <span class="n">issue</span> <span class="n">further</span>
 </pre></div>
 
 
@@ -186,7 +186,7 @@ h2:hover > .headerlink, h3:hover > .head
 <li>MinGW </li>
 <li><a href="/docs/install">Apache Thrift Requirements</a></li>
 </ul>
-<p>In addition you need to add the following entry to your windows PATH variable.</p>
+<p>In addition, you need to add the following entry to your windows PATH variable.</p>
 <div class="codehilite"><pre><span class="n">C</span><span class="p">:</span><span class="o">\</span><span class="n">MINGW</span><span class="o">\</span><span class="n">BIN</span>
 </pre></div>
 

Modified: websites/staging/thrift/trunk/content/index.html
==============================================================================
--- websites/staging/thrift/trunk/content/index.html (original)
+++ websites/staging/thrift/trunk/content/index.html Fri Nov 20 17:19:21 2020
@@ -152,8 +152,7 @@
   visibility: hidden;
 }
 h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
-<div class="codehilite"><pre>/**
- * Ahh, now onto the cool part, defining a service. Services just need a name
+<div class="codehilite"><pre> * Ahh, now onto the cool part, defining a service. Services just need a name
  * and can optionally inherit from another service using the extends keyword.
  */
 service Calculator extends shared.SharedService {
@@ -175,6 +174,7 @@ service Calculator extends shared.Shared
     * This method has a oneway modifier. That means the client only makes
     * a request and does not listen for any response at all. Oneway methods
     * must be void.
+    */
 </pre></div>
 <p class='snippet_footer'>
   This snippet was generated by Apache Thrift's <strong>source tree docs</strong>:

Modified: websites/staging/thrift/trunk/content/lib/cpp.html
==============================================================================
--- websites/staging/thrift/trunk/content/lib/cpp.html (original)
+++ websites/staging/thrift/trunk/content/lib/cpp.html Fri Nov 20 17:19:21 2020
@@ -143,6 +143,22 @@ the config header: "windows/config.h"</p
 http://monkey.org/~provos/libevent/</p>
 <h2 id="windows-version-compatibility">Windows version compatibility<a class="headerlink" href="#windows-version-compatibility" title="Permanent link">&para;</a></h2>
 <p>The Thrift library targets Windows 7 or latter versions. The supports for windows XP and Vista are avaiable until 0.12.0.</p>
+<h2 id="thrift-and-the-vcpkg-package-manager">Thrift and the VCPKG Package manager<a class="headerlink" href="#thrift-and-the-vcpkg-package-manager" title="Permanent link">&para;</a></h2>
+<p>You can download and install thrift using the 
+<a href="https://github.com/Microsoft/vcpkg">vcpkg</a> dependency manager:</p>
+<div class="codehilite"><pre><span class="n">git</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="p">.</span><span class="n">com</span><span class="o">/</span><span class="n">Microsoft</span><span class="o">/</span><span class="n">vcpkg</span><span class="p">.</span><span class="n">git</span>
+<span class="n">cd</span> <span class="n">vcpkg</span>
+<span class="o">./</span><span class="n">bootstrap</span><span class="o">-</span><span class="n">vcpkg</span><span class="p">.</span><span class="n">sh</span>
+<span class="o">./</span><span class="n">vcpkg</span> <span class="n">integrate</span> <span class="n">install</span>
+<span class="o">./</span><span class="n">vcpkg</span> <span class="n">install</span> <span class="n">thrift</span>
+</pre></div>
+
+
+<p>The thrift port in vcpkg is kept up to date by Microsoft team members 
+and community contributors. The Apache Thrift project is <em>not</em> responsible
+for the vcpkg port. Therefore, if the version is out of date, please 
+<a href="https://github.com/Microsoft/vcpkg">create an issue or pull request</a> 
+on the vcpkg repository. </p>
 <h2 id="named-pipes">Named Pipes<a class="headerlink" href="#named-pipes" title="Permanent link">&para;</a></h2>
 <p>Named Pipe transport has been added in the TPipe and TPipeServer classes. This
 is currently Windows-only. Named pipe transport for <em>NIX has not been

Modified: websites/staging/thrift/trunk/content/lib/csharp.html
==============================================================================
--- websites/staging/thrift/trunk/content/lib/csharp.html (original)
+++ websites/staging/thrift/trunk/content/lib/csharp.html Fri Nov 20 17:19:21 2020
@@ -84,14 +84,41 @@
   visibility: hidden;
 }
 h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
-<p>Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.</p>
-<h1 id="using-thrift-with-c">Using Thrift with C#<a class="headerlink" href="#using-thrift-with-c" title="Permanent link">&para;</a></h1>
-<p>Thrift requires Mono &gt;= 1.2.6 or .NET framework &gt;= 3.5
+<p><select name="st" >
+<option selected="selected" value="commit">commit</option>
+<option value="grep">grep</option>
+<option value="author">author</option>
+<option value="committer">committer</option>
+<option value="pickaxe">pickaxe</option>
+</select> <a href="/repos/asf?p=thrift.git;a=search_help" title="search help">?</a> search:
+<input type="text" name="s"  />
+<span title="Extended regular expression"><label><input type="checkbox" name="sr" value="1" />re</label></span></div>
+</form>
+<div class="page_body">
+<br /><br />
+404 - Cannot find file
+<br />
+</div>
+<div class="page_footer">
+<div class="page_footer_text">Apache Thrift</div>
+<a class="rss_logo" href="/repos/asf?p=thrift.git;a=rss;f=lib/csharp/README.md" title="history of lib/csharp/README.md RSS feed">RSS</a>
+<a class="rss_logo" href="/repos/asf?p=thrift.git;a=atom;f=lib/csharp/README.md" title="history of lib/csharp/README.md Atom feed">Atom</a>
+</div>
+<script type="text/javascript" src="/static/gitweb.js"></script>
+<script type="text/javascript">
+window.onload = function () {
+    var tz_cookie = { name: 'gitweb_tz', expires: 14, path: '/' };
+    onloadTZSetup('local', tz_cookie, 'datetime');
+};
+</script>
+</body>
+</html>&lt;!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"&gt;
+<html><head>
+<title>404 Not Found</title>
+</head><body>
+<h1>Not Found</h1>
+<p>The requested URL was not found on this server.</p>
+</body></html>
 <p class='snippet_footer'>
   This page was generated by Apache Thrift's <strong>source tree docs</strong>:
   <a href="https://gitbox.apache.org/repos/asf?p=thrift.git;a=blob;f=lib/csharp/README.md;hb=HEAD"</a>lib/csharp/README.md</a>

Modified: websites/staging/thrift/trunk/content/lib/go.html
==============================================================================
--- websites/staging/thrift/trunk/content/lib/go.html (original)
+++ websites/staging/thrift/trunk/content/lib/go.html Fri Nov 20 17:19:21 2020
@@ -139,7 +139,37 @@ typedefs and enums.</p>
 </pre></div>
 
 
-<p><p class='snippet_footer'>
+<h1 id="a-note-about-server-handler-implementations">A note about server handler implementations<a class="headerlink" href="#a-note-about-server-handler-implementations" title="Permanent link">&para;</a></h1>
+<p>The context object passed into the server handler function will be canceled when
+the client closes the connection (this is a best effort check, not a guarantee
+-- there's no guarantee that the context object is always canceled when client
+closes the connection, but when it's canceled you can always assume the client
+closed the connection). When implementing Go Thrift server, you can take
+advantage of that to abandon requests that's no longer needed:</p>
+<div class="codehilite"><pre><span class="n">func</span> <span class="n">MyEndpoint</span><span class="p">(</span><span class="n">ctx</span> <span class="n">context</span><span class="p">.</span><span class="n">Context</span><span class="p">,</span> <span class="n">req</span> <span class="o">*</span><span class="n">thriftRequestType</span><span class="p">)</span> <span class="p">(</span><span class="o">*</span><span class="n">thriftResponseType</span><span class="p">,</span> <span class="n">error</span><span class="p">)</span> <span class="p">{</span>
+    <span class="p">...</span>
+    <span class="k">if</span> <span class="n">ctx</span><span class="p">.</span><span class="n">Err</span><span class="p">()</span> <span class="o">==</span> <span class="n">context</span><span class="p">.</span><span class="n">Canceled</span> <span class="p">{</span>
+        <span class="k">return</span> <span class="n">nil</span><span class="p">,</span> <span class="n">thrift</span><span class="p">.</span><span class="n">ErrAbandonRequest</span>
+    <span class="p">}</span>
+    <span class="p">...</span>
+<span class="p">}</span>
+</pre></div>
+
+
+<p>This feature would add roughly 1 millisecond of latency overhead to the server
+handlers (along with roughly 2 goroutines per request).
+If that is unacceptable, it can be disabled by having this line early in your
+main function:</p>
+<div class="codehilite"><pre><span class="n">thrift</span><span class="p">.</span><span class="n">ServerConnectivityCheckInterval</span> <span class="p">=</span> 0
+</pre></div>
+
+
+<p>Please be advised that due to a
+<a href="https://github.com/golang/go/issues/27707">Go runtime bug</a>, currently
+if this interval is set to a value too low (for example, 1ms), it might cause
+excessive cpu overhead.</p>
+<p>This feature is also only enabled on non-oneway endpoints.
+<p class='snippet_footer'>
   This page was generated by Apache Thrift's <strong>source tree docs</strong>:
   <a href="https://gitbox.apache.org/repos/asf?p=thrift.git;a=blob;f=lib/go/README.md;hb=HEAD"</a>lib/go/README.md</a>
 </p></p>

Modified: websites/staging/thrift/trunk/content/lib/netstd.html
==============================================================================
--- websites/staging/thrift/trunk/content/lib/netstd.html (original)
+++ websites/staging/thrift/trunk/content/lib/netstd.html Fri Nov 20 17:19:21 2020
@@ -96,7 +96,7 @@ or </li>
 </ul>
 <h2 id="how-to-build-on-unixlinux">How to build on Unix/Linux<a class="headerlink" href="#how-to-build-on-unixlinux" title="Permanent link">&para;</a></h2>
 <ul>
-<li>Ensure you have .NET SDK &gt;= 2.0 installed, or use the <a href="../../build/docker/README">Ubuntu docker image</a></li>
+<li>Ensure you have .NET Core SDK 3.1 (LTS) installed, or use the <a href="../../build/docker/README">Ubuntu docker image</a></li>
 <li>Follow common automake build practice: <code>./ bootstrap &amp;&amp; ./ configure &amp;&amp; make</code></li>
 </ul>
 <h2 id="known-issues">Known issues<a class="headerlink" href="#known-issues" title="Permanent link">&para;</a></h2>

Modified: websites/staging/thrift/trunk/content/lib/nodejs.html
==============================================================================
--- websites/staging/thrift/trunk/content/lib/nodejs.html (original)
+++ websites/staging/thrift/trunk/content/lib/nodejs.html Fri Nov 20 17:19:21 2020
@@ -125,8 +125,8 @@ var thrift = require('thrift'),
 <h2 id="use-on-browsers">Use on browsers<a class="headerlink" href="#use-on-browsers" title="Permanent link">&para;</a></h2>
 <p>You can use code generated with js:node on browsers with Webpack. Here is an example.</p>
 <p>thrift --gen js:node,ts,es6,with_ns</p>
-<p>```
-import * as thrift from 'thrift/browser';
+<p>```javascript
+import * as thrift from 'thrift';
 import { MyServiceClient } from '../gen-nodejs/MyService';</p>
 <p>let host = window.location.hostname;
 let port = 443;
@@ -153,7 +153,32 @@ let thriftClient = thrift.createXHRClien
     ....
   });
 ```</p>
-<p>Note that thrift/index.js must be renamed or skipped for browsers.
+<p>Bundlers, like webpack, will use thrift/browser.js by default because of the 
+<code>"browser": "./lib/nodejs/lib/thrift/browser.js"</code> field in package.json.</p>
+<h3 id="browser-example-with-websocket-bufferedtransport-and-binaryprotocol">Browser example with WebSocket, BufferedTransport and BinaryProtocol<a class="headerlink" href="#browser-example-with-websocket-bufferedtransport-and-binaryprotocol" title="Permanent link">&para;</a></h3>
+<p>```javascript
+import thrift from 'thrift';
+import { MyServiceClient } from '../gen-nodejs/MyService';</p>
+<p>const host = window.location.hostname;
+const port = 9090;
+const opts = {
+  transport: thrift.TBufferedTransport,
+  protocol: thrift.TBinaryProtocol
+}
+const connection = thrift.createWSConnection(host, port, opts);
+connection.open();
+const thriftClient = thrift.createWSClient(MyServiceClient, connection);</p>
+<p>connection.on('error', (err) =&gt; {
+  console.error(err);
+});</p>
+<p>thriftClient.myService(param)
+  .then((result) =&gt; {
+    console.log(result);
+  })
+  .catch((err) =&gt; {
+    ....
+  });
+```
 <p class='snippet_footer'>
   This page was generated by Apache Thrift's <strong>source tree docs</strong>:
   <a href="https://gitbox.apache.org/repos/asf?p=thrift.git;a=blob;f=lib/nodejs/README.md;hb=HEAD"</a>lib/nodejs/README.md</a>

Modified: websites/staging/thrift/trunk/content/lib/perl.html
==============================================================================
--- websites/staging/thrift/trunk/content/lib/perl.html (original)
+++ websites/staging/thrift/trunk/content/lib/perl.html Fri Nov 20 17:19:21 2020
@@ -115,6 +115,11 @@ to use Thrift.</p>
 <li>Bit::Vector</li>
 <li>Class::Accessor</li>
 </ul>
+<h2 id="test">Test<a class="headerlink" href="#test" title="Permanent link">&para;</a></h2>
+<p>This is only required when running tests:</p>
+<ul>
+<li>Test::Exception</li>
+</ul>
 <h3 id="httpclient-transport">HttpClient Transport<a class="headerlink" href="#httpclient-transport" title="Permanent link">&para;</a></h3>
 <p>These are only required if using Thrift::HttpClient:</p>
 <ul>

Modified: websites/staging/thrift/trunk/content/lib/php.html
==============================================================================
--- websites/staging/thrift/trunk/content/lib/php.html (original)
+++ websites/staging/thrift/trunk/content/lib/php.html Fri Nov 20 17:19:21 2020
@@ -87,7 +87,7 @@ h2:hover > .headerlink, h3:hover > .head
 <h1 id="using-thrift-with-php">Using Thrift with PHP<a class="headerlink" href="#using-thrift-with-php" title="Permanent link">&para;</a></h1>
 <p>Thrift requires PHP 5. Thrift makes as few assumptions about your PHP
 environment as possible while trying to make some more advanced PHP
-features (i.e. APC cacheing using asbolute path URLs) as simple as possible.</p>
+features (i.e. APCu cacheing using asbolute path URLs) as simple as possible.</p>
 <p>To use Thrift in your PHP codebase, take the following steps:</p>
 <ol>
 <li>Copy all of thrift/lib/php/lib into your PHP codebase</li>
@@ -105,8 +105,8 @@ require_once 'packages/Service/Types.php
 </pre></div>
 
 
-<p>apc_fetch(), apc_store()</p>
-<div class="codehilite"><pre><span class="n">APC</span> <span class="n">cache</span> <span class="n">is</span> <span class="n">used</span> <span class="n">by</span> <span class="n">the</span> <span class="n">TSocketPool</span> <span class="n">class</span><span class="p">.</span> <span class="n">If</span> <span class="n">you</span> <span class="n">do</span> <span class="n">not</span> <span class="n">have</span> <span class="n">APC</span> <span class="n">installed</span><span class="p">,</span>
+<p>apcu_fetch(), apcu_store()</p>
+<div class="codehilite"><pre><span class="n">APCu</span> <span class="n">cache</span> <span class="n">is</span> <span class="n">used</span> <span class="n">by</span> <span class="n">the</span> <span class="n">TSocketPool</span> <span class="n">class</span><span class="p">.</span> <span class="n">If</span> <span class="n">you</span> <span class="n">do</span> <span class="n">not</span> <span class="n">have</span> <span class="n">APCu</span> <span class="n">installed</span><span class="p">,</span>
 <span class="n">Thrift</span> <span class="n">will</span> <span class="n">fill</span> <span class="n">in</span> <span class="n">null</span> <span class="n">stub</span> <span class="k">function</span> <span class="n">definitions</span><span class="p">.</span>
 </pre></div>
 

Modified: websites/staging/thrift/trunk/content/test/ThriftTest.html
==============================================================================
--- websites/staging/thrift/trunk/content/test/ThriftTest.html (original)
+++ websites/staging/thrift/trunk/content/test/ThriftTest.html Fri Nov 20 17:19:21 2020
@@ -508,9 +508,7 @@ h2:hover > .headerlink, h3:hover > .head
 410
 411
 412
-413
-414
-415</pre></div></td><td class="code"><div class="codehilite"><pre>/*
+413</pre></div></td><td class="code"><div class="codehilite"><pre>/*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements. See the NOTICE file
  * distributed with this work for additional information
@@ -535,13 +533,11 @@ h2:hover > .headerlink, h3:hover > .head
 
 namespace c_glib TTest
 namespace cpp thrift.test
-namespace csharp Thrift.Test
 namespace delphi Thrift.Test
 namespace go thrifttest
 namespace java thrift.test
 namespace js ThriftTest
 namespace lua ThriftTest
-namespace netcore ThriftTest
 namespace netstd ThriftTest
 namespace perl ThriftTest
 namespace php ThriftTest

Modified: websites/staging/thrift/trunk/content/test/index.html
==============================================================================
--- websites/staging/thrift/trunk/content/test/index.html (original)
+++ websites/staging/thrift/trunk/content/test/index.html Fri Nov 20 17:19:21 2020
@@ -104,7 +104,7 @@ precross</code> once before executing it
 <p>For example, if you changed something in <code>nodejs</code> library and need to verify
 the patch, you can skip everything except <code>nodejs</code> itself and some reference
 implementation (currently <code>cpp</code> and <code>java</code> are recommended) like this:</p>
-<div class="codehilite"><pre><span class="o">./</span><span class="n">configure</span> <span class="o">--</span><span class="n">without</span><span class="o">-</span><span class="n">c_glib</span> <span class="o">-</span><span class="n">without</span><span class="o">-</span><span class="n">csharp</span> <span class="o">--</span><span class="n">without</span><span class="o">-</span><span class="n">erlang</span> <span class="o">--</span><span class="n">without</span><span class="o">-</span><span class="n">lua</span> <span class="p">...</span>
+<div class="codehilite"><pre><span class="o">./</span><span class="n">configure</span> <span class="o">--</span><span class="n">without</span><span class="o">-</span><span class="n">c_glib</span> <span class="o">--</span><span class="n">without</span><span class="o">-</span><span class="n">erlang</span> <span class="o">--</span><span class="n">without</span><span class="o">-</span><span class="n">lua</span> <span class="p">...</span>
 <span class="n">make</span> <span class="n">precross</span> <span class="o">-</span><span class="n">j8</span>
 <span class="n">test</span><span class="o">/</span><span class="n">test</span><span class="p">.</span><span class="n">py</span> <span class="o">--</span><span class="n">server</span> <span class="n">cpp</span><span class="p">,</span><span class="n">java</span> <span class="o">--</span><span class="n">client</span> <span class="n">nodejs</span>
 <span class="n">test</span><span class="o">/</span><span class="n">test</span><span class="p">.</span><span class="n">py</span> <span class="o">--</span><span class="n">server</span> <span class="n">nodejs</span> <span class="o">--</span><span class="n">client</span> <span class="n">cpp</span><span class="p">,</span><span class="n">java</span>
@@ -195,38 +195,46 @@ cross language tests according to <a hre
 provided for every language including executables with the following command
 line interface:</p>
 <p><strong>Server command line interface:</strong></p>
-<div class="codehilite"><pre>$ <span class="o">./</span><span class="n">cpp</span><span class="o">/</span><span class="n">TestServer</span> <span class="o">-</span><span class="n">h</span>
+<div class="codehilite"><pre>$ <span class="o">./</span><span class="n">TestServer</span> <span class="o">-</span><span class="n">h</span>
 <span class="n">Allowed</span> <span class="n">options</span><span class="p">:</span>
-  <span class="o">-</span><span class="n">h</span> <span class="p">[</span> <span class="o">--</span><span class="n">help</span> <span class="p">]</span>               <span class="n">produce</span> <span class="n">help</span> <span class="n">message</span>
-  <span class="o">--</span><span class="n">port</span> <span class="n">arg</span> <span class="p">(=</span>9090<span class="p">)</span>          <span class="n">Port</span> <span class="n">number</span> <span class="n">to</span> <span class="n">listen</span>
-  <span class="o">--</span><span class="n">domain</span><span class="o">-</span><span class="n">socket</span> <span class="n">arg</span>         <span class="n">Unix</span> <span class="n">Domain</span> <span class="n">Socket</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="o">/</span><span class="n">tmp</span><span class="o">/</span><span class="n">ThriftTest</span><span class="p">.</span><span class="n">thrift</span><span class="p">)</span>
-  <span class="o">--</span><span class="n">named</span><span class="o">-</span><span class="n">pipe</span> <span class="n">arg</span>            <span class="n">Windows</span> <span class="n">Named</span> <span class="n">Pipe</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="n">MyThriftPipe</span><span class="p">)</span>
-  <span class="o">--</span><span class="n">server</span><span class="o">-</span><span class="n">type</span> <span class="n">arg</span> <span class="p">(=</span><span class="n">simple</span><span class="p">)</span> <span class="n">type</span> <span class="n">of</span> <span class="n">server</span><span class="p">,</span> &quot;<span class="n">simple</span>&quot;<span class="p">,</span> &quot;<span class="n">thread</span><span class="o">-</span><span class="n">pool</span>&quot;<span class="p">,</span>
-                              &quot;<span class="n">threaded</span>&quot;<span class="p">,</span> <span class="n">or</span> &quot;<span class="n">nonblocking</span>&quot;
-  <span class="o">--</span><span class="n">transport</span> <span class="n">arg</span> <span class="p">(=</span><span class="n">buffered</span><span class="p">)</span> <span class="n">transport</span><span class="p">:</span> <span class="n">buffered</span><span class="p">,</span> <span class="n">framed</span><span class="p">,</span> <span class="n">http</span><span class="p">,</span> <span class="n">anonpipe</span>
-  <span class="o">--</span><span class="n">protocol</span> <span class="n">arg</span> <span class="p">(=</span><span class="n">binary</span><span class="p">)</span>    <span class="n">protocol</span><span class="p">:</span> <span class="n">binary</span><span class="p">,</span> <span class="n">compact</span><span class="p">,</span> <span class="n">json</span>
-  <span class="o">--</span><span class="n">ssl</span>                       <span class="n">Encrypted</span> <span class="n">Transport</span> <span class="n">using</span> <span class="n">SSL</span>
-  <span class="o">--</span><span class="n">processor</span><span class="o">-</span><span class="k">events</span>          <span class="n">processor</span><span class="o">-</span><span class="k">events</span>
-  <span class="o">-</span><span class="n">n</span> <span class="p">[</span> <span class="o">--</span><span class="n">workers</span> <span class="p">]</span> <span class="n">arg</span> <span class="p">(=</span>4<span class="p">)</span>   <span class="n">Number</span> <span class="n">of</span> <span class="n">thread</span> <span class="n">pools</span> <span class="n">workers</span><span class="p">.</span> <span class="n">Only</span> <span class="n">valid</span> <span class="k">for</span>
-                          <span class="n">thread</span><span class="o">-</span><span class="n">pool</span> <span class="n">server</span> <span class="n">type</span>
+  <span class="o">-</span><span class="n">h</span> <span class="o">|</span> <span class="o">--</span><span class="n">help</span>                  <span class="n">produce</span> <span class="n">help</span> <span class="n">message</span>
+  <span class="o">--</span><span class="n">port</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span>9090<span class="p">)</span>            <span class="n">Port</span> <span class="n">number</span> <span class="n">to</span> <span class="n">listen</span>
+  <span class="o">--</span><span class="n">domain</span><span class="o">-</span><span class="n">socket</span><span class="p">=</span><span class="n">arg</span>          <span class="n">Unix</span> <span class="n">Domain</span> <span class="n">Socket</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="o">/</span><span class="n">tmp</span><span class="o">/</span><span class="n">ThriftTest</span><span class="p">.</span><span class="n">thrift</span><span class="p">)</span>
+  <span class="o">--</span><span class="n">pipe</span><span class="p">=</span><span class="n">arg</span>                   <span class="n">Windows</span> <span class="n">Named</span> <span class="n">Pipe</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="n">MyThriftPipe</span><span class="p">)</span>
+  <span class="o">--</span><span class="n">server</span><span class="o">-</span><span class="n">type</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span><span class="n">simple</span><span class="p">)</span>   <span class="n">type</span> <span class="n">of</span> <span class="n">server</span><span class="p">,</span> &quot;<span class="n">simple</span>&quot;<span class="p">,</span> &quot;<span class="n">thread</span><span class="o">-</span><span class="n">pool</span>&quot;<span class="p">,</span>
+                               &quot;<span class="n">threaded</span>&quot;<span class="p">,</span> <span class="n">or</span> &quot;<span class="n">nonblocking</span>&quot;
+  <span class="o">--</span><span class="n">transport</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span><span class="n">buffered</span><span class="p">)</span>   <span class="n">transport</span><span class="p">:</span> <span class="n">buffered</span><span class="p">,</span> <span class="n">framed</span><span class="p">,</span> <span class="n">http</span><span class="p">,</span> <span class="n">anonpipe</span><span class="p">,</span> <span class="n">zlib</span>
+  <span class="o">--</span><span class="n">protocol</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span><span class="n">binary</span><span class="p">)</span>      <span class="n">protocol</span><span class="p">:</span> <span class="n">binary</span><span class="p">,</span> <span class="n">compact</span><span class="p">,</span> <span class="n">header</span><span class="p">,</span> <span class="n">json</span>
+  <span class="o">--</span><span class="n">multiplex</span>                  <span class="n">Add</span> <span class="n">TMultiplexedProtocol</span> <span class="n">service</span> <span class="n">name</span> &quot;<span class="n">ThriftTest</span>&quot;
+  <span class="o">--</span><span class="n">abstract</span><span class="o">-</span><span class="n">namespace</span>         <span class="n">Create</span> <span class="n">the</span> <span class="n">domain</span> <span class="n">socket</span> <span class="n">in</span> <span class="n">the</span> <span class="n">Abstract</span> <span class="n">Namespace</span> 
+                               <span class="p">(</span><span class="n">no</span> <span class="n">connection</span> <span class="n">with</span> <span class="n">filesystem</span> <span class="n">pathnames</span><span class="p">)</span>
+  <span class="o">--</span><span class="n">ssl</span>                        <span class="n">Encrypted</span> <span class="n">Transport</span> <span class="n">using</span> <span class="n">SSL</span>
+  <span class="o">--</span><span class="n">zlib</span>                       <span class="n">Wrapped</span> <span class="n">Transport</span> <span class="n">using</span> <span class="n">Zlib</span>
+  <span class="o">--</span><span class="n">processor</span><span class="o">-</span><span class="k">events</span>           <span class="n">processor</span><span class="o">-</span><span class="k">events</span>
+  <span class="o">-</span><span class="n">n</span><span class="p">=</span><span class="n">arg</span> <span class="o">|</span> <span class="o">--</span><span class="n">workers</span><span class="p">=</span><span class="n">arg</span> <span class="p">(=</span>4<span class="p">)</span>  <span class="n">Number</span> <span class="n">of</span> <span class="n">thread</span> <span class="n">pools</span> <span class="n">workers</span><span class="p">.</span> <span class="n">Only</span> <span class="n">valid</span> <span class="k">for</span>
+                               <span class="n">thread</span><span class="o">-</span><span class="n">pool</span> <span class="n">server</span> <span class="n">type</span>
 </pre></div>
 
 
 <p><strong>Client command line interface:</strong></p>
-<div class="codehilite"><pre>$ <span class="o">./</span><span class="n">cpp</span><span class="o">/</span><span class="n">TestClient</span> <span class="o">-</span><span class="n">h</span>
+<div class="codehilite"><pre>$ <span class="o">./</span><span class="n">TestClient</span> <span class="o">-</span><span class="n">h</span>
 <span class="n">Allowed</span> <span class="n">options</span><span class="p">:</span>
-  <span class="o">-</span><span class="n">h</span> <span class="p">[</span> <span class="o">--</span><span class="n">help</span> <span class="p">]</span>               <span class="n">produce</span> <span class="n">help</span> <span class="n">message</span>
-  <span class="o">--</span><span class="n">host</span> <span class="n">arg</span> <span class="p">(=</span><span class="n">localhost</span><span class="p">)</span>     <span class="n">Host</span> <span class="n">to</span> <span class="n">connect</span>
-  <span class="o">--</span><span class="n">port</span> <span class="n">arg</span> <span class="p">(=</span>9090<span class="p">)</span>          <span class="n">Port</span> <span class="n">number</span> <span class="n">to</span> <span class="n">connect</span>
-  <span class="o">--</span><span class="n">domain</span><span class="o">-</span><span class="n">socket</span> <span class="n">arg</span>         <span class="n">Domain</span> <span class="n">Socket</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="o">/</span><span class="n">tmp</span><span class="o">/</span><span class="n">ThriftTest</span><span class="p">.</span><span class="n">thrift</span><span class="p">),</span>
-                              <span class="n">instead</span> <span class="n">of</span> <span class="n">host</span> <span class="n">and</span> <span class="n">port</span>
-  <span class="o">--</span><span class="n">named</span><span class="o">-</span><span class="n">pipe</span> <span class="n">arg</span>            <span class="n">Windows</span> <span class="n">Named</span> <span class="n">Pipe</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="n">MyThriftPipe</span><span class="p">)</span>
-  <span class="o">--</span><span class="n">anon</span><span class="o">-</span><span class="n">pipes</span> <span class="n">hRead</span> <span class="n">hWrite</span>   <span class="n">Windows</span> <span class="n">Anonymous</span> <span class="n">Pipes</span> <span class="n">pair</span> <span class="p">(</span><span class="n">handles</span><span class="p">)</span>
-  <span class="o">--</span><span class="n">transport</span> <span class="n">arg</span> <span class="p">(=</span><span class="n">buffered</span><span class="p">)</span> <span class="n">Transport</span><span class="p">:</span> <span class="n">buffered</span><span class="p">,</span> <span class="n">framed</span><span class="p">,</span> <span class="n">http</span><span class="p">,</span> <span class="n">evhttp</span>
-  <span class="o">--</span><span class="n">protocol</span> <span class="n">arg</span> <span class="p">(=</span><span class="n">binary</span><span class="p">)</span>    <span class="n">Protocol</span><span class="p">:</span> <span class="n">binary</span><span class="p">,</span> <span class="n">compact</span><span class="p">,</span> <span class="n">json</span>
-  <span class="o">--</span><span class="n">ssl</span>                       <span class="n">Encrypted</span> <span class="n">Transport</span> <span class="n">using</span> <span class="n">SSL</span>
-  <span class="o">-</span><span class="n">n</span> <span class="p">[</span> <span class="o">--</span><span class="n">testloops</span> <span class="p">]</span> <span class="n">arg</span> <span class="p">(=</span>1<span class="p">)</span> <span class="n">Number</span> <span class="n">of</span> <span class="n">Tests</span>
-  <span class="o">-</span><span class="n">t</span> <span class="p">[</span> <span class="o">--</span><span class="n">threads</span> <span class="p">]</span> <span class="n">arg</span> <span class="p">(=</span>1<span class="p">)</span>   <span class="n">Number</span> <span class="n">of</span> <span class="n">Test</span> <span class="n">threads</span>
+  <span class="o">-</span><span class="n">h</span> <span class="o">|</span> <span class="o">--</span><span class="n">help</span>                  <span class="n">produce</span> <span class="n">help</span> <span class="n">message</span>
+  <span class="o">--</span><span class="n">host</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span><span class="n">localhost</span><span class="p">)</span>       <span class="n">Host</span> <span class="n">to</span> <span class="n">connect</span>
+  <span class="o">--</span><span class="n">port</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span>9090<span class="p">)</span>            <span class="n">Port</span> <span class="n">number</span> <span class="n">to</span> <span class="n">connect</span>
+  <span class="o">--</span><span class="n">domain</span><span class="o">-</span><span class="n">socket</span><span class="p">=</span><span class="n">arg</span>          <span class="n">Domain</span> <span class="n">Socket</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="o">/</span><span class="n">tmp</span><span class="o">/</span><span class="n">ThriftTest</span><span class="p">.</span><span class="n">thrift</span><span class="p">),</span>
+                               <span class="n">instead</span> <span class="n">of</span> <span class="n">host</span> <span class="n">and</span> <span class="n">port</span>
+  <span class="o">--</span><span class="n">pipe</span><span class="p">=</span><span class="n">arg</span>                   <span class="n">Windows</span> <span class="n">Named</span> <span class="n">Pipe</span> <span class="p">(</span><span class="n">e</span><span class="p">.</span><span class="n">g</span><span class="p">.</span> <span class="n">MyThriftPipe</span><span class="p">)</span>
+  <span class="o">--</span><span class="n">anon</span><span class="o">-</span><span class="n">pipes</span> <span class="n">hRead</span> <span class="n">hWrite</span>    <span class="n">Windows</span> <span class="n">Anonymous</span> <span class="n">Pipes</span> <span class="n">pair</span> <span class="p">(</span><span class="n">handles</span><span class="p">)</span>
+  <span class="o">--</span><span class="n">abstract</span><span class="o">-</span><span class="n">namespace</span>         <span class="n">Create</span> <span class="n">the</span> <span class="n">domain</span> <span class="n">socket</span> <span class="n">in</span> <span class="n">the</span> <span class="n">Abstract</span> <span class="n">Namespace</span>
+                               <span class="p">(</span><span class="n">no</span> <span class="n">connection</span> <span class="n">with</span> <span class="n">filesystem</span> <span class="n">pathnames</span><span class="p">)</span>
+  <span class="o">--</span><span class="n">transport</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span><span class="n">buffered</span><span class="p">)</span>   <span class="n">Transport</span><span class="p">:</span> <span class="n">buffered</span><span class="p">,</span> <span class="n">framed</span><span class="p">,</span> <span class="n">http</span><span class="p">,</span> <span class="n">evhttp</span><span class="p">,</span> <span class="n">zlib</span>
+  <span class="o">--</span><span class="n">protocol</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span><span class="n">binary</span><span class="p">)</span>      <span class="n">Protocol</span><span class="p">:</span> <span class="n">binary</span><span class="p">,</span> <span class="n">compact</span><span class="p">,</span> <span class="n">header</span><span class="p">,</span> <span class="n">json</span>
+  <span class="o">--</span><span class="n">multiplex</span>                  <span class="n">Add</span> <span class="n">TMultiplexedProtocol</span> <span class="n">service</span> <span class="n">name</span> &quot;<span class="n">ThriftTest</span>&quot;
+  <span class="o">--</span><span class="n">ssl</span>                        <span class="n">Encrypted</span> <span class="n">Transport</span> <span class="n">using</span> <span class="n">SSL</span>
+  <span class="o">--</span><span class="n">zlib</span>                       <span class="n">Wrap</span> <span class="n">Transport</span> <span class="n">with</span> <span class="n">Zlib</span>
+  <span class="o">-</span><span class="n">n</span><span class="p">=</span><span class="n">arg</span> <span class="o">|</span> <span class="o">--</span><span class="n">testloops</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span>1<span class="p">)</span> <span class="n">Number</span> <span class="n">of</span> <span class="n">Tests</span>
+  <span class="o">-</span><span class="n">t</span><span class="p">=</span><span class="n">arg</span> <span class="o">|</span> <span class="o">--</span><span class="n">threads</span><span class="p">=</span><span class="n">arg</span> <span class="p">(</span>1<span class="p">)</span>   <span class="n">Number</span> <span class="n">of</span> <span class="n">Test</span> <span class="n">threads</span>
 </pre></div>