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

git-site-role pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/thrift-website.git


The following commit(s) were added to refs/heads/asf-staging by this push:
     new 0568270  Automatic Site Publish by Buildbot
0568270 is described below

commit 05682700dca90dc09c8f50826f68695735a88705
Author: buildbot <us...@infra.apache.org>
AuthorDate: Sat Sep 2 11:26:05 2023 +0000

    Automatic Site Publish by Buildbot
---
 output/docs/HowToContribute.html               | 16 +++++-----
 output/docs/Languages.html                     |  8 ++---
 output/docs/coding_standards.html              | 10 +++---
 output/docs/committers/HowToCommit.html        |  4 +--
 output/docs/committers/HowToThriftWebsite.html |  4 +--
 output/docs/idl.html                           | 20 ++++++------
 output/docs/install/centos.html                |  4 +--
 output/docs/install/debian.html                |  2 +-
 output/docs/install/windows.html               | 18 +++++------
 output/download.html                           | 10 +++---
 output/index.html                              | 10 +++---
 output/lib/c_glib.html                         |  6 ++--
 output/lib/cl.html                             |  4 +--
 output/lib/cpp.html                            | 42 +++++++++++++-------------
 output/lib/d.html                              |  6 ++--
 output/lib/go.html                             | 22 +++++++++-----
 output/lib/haxe.html                           |  6 ++--
 output/lib/java.html                           | 12 ++++----
 output/lib/js.html                             |  2 +-
 output/lib/netstd.html                         |  8 ++---
 output/lib/nodejs.html                         | 36 +++++++++++-----------
 output/lib/ocaml.html                          | 12 ++++----
 output/lib/st.html                             |  2 +-
 output/test/index.html                         |  6 ++--
 output/test/keys.html                          |  6 ++--
 25 files changed, 141 insertions(+), 135 deletions(-)

diff --git a/output/docs/HowToContribute.html b/output/docs/HowToContribute.html
index 3f7b71a..71fcd5d 100644
--- a/output/docs/HowToContribute.html
+++ b/output/docs/HowToContribute.html
@@ -99,12 +99,12 @@ Client: [language(s) affected, comma separated, for 
example: "cpp,erl,perl"]
     <ul>
       <li>Remember to provide <em>tests</em> for all submitted changes!</li>
       <li>Use test-driven development (TDD): add a test that will isolate the 
bug <em>before</em> applying the change that fixes it.</li>
-      <li>Verify that you follow <a href="/docs/coding_standards">Thrift 
Coding Standards</a> (you can run &#8216;make style&#8217;, which ensures 
proper format for some languages).</li>
+      <li>Verify that you follow <a href="/docs/coding_standards">Thrift 
Coding Standards</a> (you can run ‘make style’, which ensures proper format for 
some languages).</li>
       <li>[<em>optional</em>] Verify that your change works on other platforms 
by adding a GitHub service hook to <a 
href="http://docs.travis-ci.com/user/getting-started/#Step-one%3A-Sign-in";>Travis
 CI</a> and <a href="http://www.appveyor.com/docs";>AppVeyor</a>.  You can use 
this technique to run the Thrift CI jobs in your account to check your changes 
before they are made public.  Every GitHub pull request into Thrift will run 
the full CI build and test suite on your changes.</li>
     </ul>
   </li>
   <li>Squash your changes to a single commit.  This maintains clean change 
history.</li>
-  <li>Commit and push changes to your branch (please use issue name and 
description as commit title, e.g. &#8220;THRIFT-9999: make it perfect&#8221;), 
with the affected languages on the next line of the description.</li>
+  <li>Commit and push changes to your branch (please use issue name and 
description as commit title, e.g. “THRIFT-9999: make it perfect”), with the 
affected languages on the next line of the description.</li>
   <li>Use GitHub to create a pull request going from your branch to 
apache:master.  Ensure that the Jira ticket number is at the beginning of the 
title of your pull request, same as the commit title.</li>
   <li>Wait for other contributors or committers to review your new addition, 
and for a CI build to complete.</li>
   <li>Wait for a committer to commit your patch.  You can nudge the committers 
if necessary by sending a message to the <a 
href="https://thrift.apache.org/mailing";>Apache Thrift mailing list</a>.</li>
@@ -118,18 +118,18 @@ Client: [language(s) affected, comma separated, for 
example: "cpp,erl,perl"]
 
 <p>For unix systems, see our detailed instructions on the <a 
href="/build/docker/README.md">Docker README</a>.</p>
 
-<h2 id="if-you-want-to-review-open-issues">If you want to review open 
issues&#8230;</h2>
+<h2 id="if-you-want-to-review-open-issues">If you want to review open 
issues…</h2>
 
 <ol>
   <li>Review the <a href="https://github.com/apache/thrift/pulls";>GitHub Pull 
Request Backlog</a>.  Code reviews are open to all.</li>
   <li>Review the <a href="http://issues.apache.org/jira/browse/THRIFT";>Jira 
issue tracker</a>.  You can search for tickets relating to languages you are 
interested in or currently using with thrift, for example a Jira search (Issues 
-&gt; Search For Issues) query of <code>project = THRIFT AND component in 
("Erlang - Library") and status not in (resolved, closed)</code> will locate 
all the open Erlang Library issues.</li>
 </ol>
 
-<h2 id="if-you-discovered-a-defect">If you discovered a defect&#8230;</h2>
+<h2 id="if-you-discovered-a-defect">If you discovered a defect…</h2>
 
 <ol>
   <li>Check to see if the issue is already in the <a 
href="http://issues.apache.org/jira/browse/THRIFT";>Jira issue tracker</a>.</li>
-  <li>If not, create a ticket describing the change you&#8217;re proposing in 
the Jira issue tracker.</li>
+  <li>If not, create a ticket describing the change you’re proposing in the 
Jira issue tracker.</li>
   <li>Contribute your code changes using the GitHub pull request method:</li>
 </ol>
 
@@ -153,12 +153,12 @@ Client: [language(s) affected, comma separated, for 
example: "cpp,erl,perl"]
 <ol>
   <li>Use the command <code>git log</code> to identify how many commits you 
made since you began.</li>
   <li>Use the command <code>git rebase -i HEAD~N</code> where N is the number 
of commits.</li>
-  <li>Leave &#8220;pull&#8221; in the first line.</li>
-  <li>Change all other lines from &#8220;pull&#8221; to 
&#8220;fixup&#8221;.</li>
+  <li>Leave “pull” in the first line.</li>
+  <li>Change all other lines from “pull” to “fixup”.</li>
   <li>All your changes are now in a single commit.</li>
 </ol>
 
-<p>If you already have a pull request outstanding, you will need to do a 
&#8220;force push&#8221; to overwrite it since you changed your commit 
history:</p>
+<p>If you already have a pull request outstanding, you will need to do a 
“force push” to overwrite it since you changed your commit history:</p>
 
 <pre><code>git push -u origin THRIFT-9999 --force
 </code></pre>
diff --git a/output/docs/Languages.html b/output/docs/Languages.html
index d6285c9..62d31f7 100644
--- a/output/docs/Languages.html
+++ b/output/docs/Languages.html
@@ -85,11 +85,11 @@ for each language, however tested less thoroughly; check 
the README file inside
 each lib directory for additional details.  Note: while a language may contain
 support for protocols, transports, and servers, the extent to which each is 
tested
 as part of the overall build process varies.  The definitive integration test 
for
-the project is called the &#8220;cross&#8221; test which executes a test 
matrix with clients
+the project is called the “cross” test which executes a test matrix with 
clients
 and servers communicating across languages.</p>
 
-<p>Thrift&#8217;s core transport (supported by all languages) is TSocket.
-Thrift&#8217;s core protocol is TBinary, supported by all languages except for 
JavaScript.</p>
+<p>Thrift’s core transport (supported by all languages) is TSocket.
+Thrift’s core protocol is TBinary, supported by all languages except for 
JavaScript.</p>
 
 <table style="font-size: 60%; padding: 1px;">
 <thead>
@@ -216,7 +216,7 @@ Thrift&#8217;s core protocol is TBinary, supported by all 
languages except for J
 <td align="left"><a 
href="https://github.com/apache/thrift/blob/master/lib/go/README.md";>Go</a></td>
 <!-- Since -----------------><td>0.7.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.19.5</td><td>1.20</td>
+<!-- Language Levels -------><td>1.20</td><td>1.21</td>
 <!-- Field types -----------><td><img src="/doc/images/cred.png" alt="" /></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/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/cgrn.png" 
alt="Yes" /></td>
diff --git a/output/docs/coding_standards.html 
b/output/docs/coding_standards.html
index e40773f..f648502 100644
--- a/output/docs/coding_standards.html
+++ b/output/docs/coding_standards.html
@@ -54,11 +54,11 @@
 
 <p>Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand.
-                                  &#8211; Martin Fowler, 1999</p>
+                                  – Martin Fowler, 1999</p>
 
-<p>The purpose of this document is to make everyone&#8217;s life easier.</p>
+<p>The purpose of this document is to make everyone’s life easier.</p>
 
-<p>It&#8217;s easier when you read good, well-formatted, with a 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
@@ -92,8 +92,8 @@ Code review is the best way to improve readability.</p>
 <ul>
   <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 &#8220;I should 
write a comment here&#8221; think &#8220;I should clean it up&#8221;</li>
-  <li>Do not leave &#8220;TODO/FIXME&#8221; comments - file <a 
href="http://issues.apache.org/jira/browse/THRIFT";>Jira</a> issue instead</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</h3>
diff --git a/output/docs/committers/HowToCommit.html 
b/output/docs/committers/HowToCommit.html
index bdceabf..fe404e7 100644
--- a/output/docs/committers/HowToCommit.html
+++ b/output/docs/committers/HowToCommit.html
@@ -74,8 +74,8 @@
     <table>
       <tbody>
         <tr>
-          <td>curl https://issues.apache.org/jira/&#8230;</td>
-          <td>git apply &#8211;ignore-space-change</td>
+          <td>curl https://issues.apache.org/jira/…</td>
+          <td>git apply –ignore-space-change</td>
         </tr>
       </tbody>
     </table>
diff --git a/output/docs/committers/HowToThriftWebsite.html 
b/output/docs/committers/HowToThriftWebsite.html
index a27ee4d..43ce484 100644
--- a/output/docs/committers/HowToThriftWebsite.html
+++ b/output/docs/committers/HowToThriftWebsite.html
@@ -101,8 +101,8 @@ consistent experience with the various markdown parsers 
deployed by the CMS.</p>
 file” <a 
href="https://svn.apache.org/repos/asf/thrift/cms-site/trunk/lib/path.pm";>lib/path.pm</a>.
 Update
 the following values and then following <b>Updating the Website</b> section 
below</p>
 
-<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>current_release: "0.18.1"
-current_release_date: "2023-MAR-01"
+<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre 
class="highlight"><code>current_release: "0.19.0"
+current_release_date: "2023-SEP-02"
 </code></pre></div></div>
 
 <h3 id="updating-the-website">Updating the website</h3>
diff --git a/output/docs/idl.html b/output/docs/idl.html
index 04aca21..7c4ad23 100644
--- a/output/docs/idl.html
+++ b/output/docs/idl.html
@@ -52,7 +52,7 @@
       
 <h2 id="thrift-interface-description-language">Thrift interface description 
language</h2>
 
-<p>For Thrift version 0.19.0.</p>
+<p>For Thrift version 0.20.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>
 
@@ -90,7 +90,7 @@
 
 <h3 id="namespace">Namespace</h3>
 
-<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 
&#8216;*&#8217; indicates that the namespace applies to all target 
languages.</p>
+<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>
 
 <pre><code>[5]  Namespace       ::=  ( 'namespace' ( NamespaceScope Identifier 
) )
 
@@ -192,7 +192,7 @@
   <li>Default values: are written when the isset flag is set</li>
 </ul>
 
-<p>Most language implementations use the recommended practice of so-called 
&#8220;isset&#8221; flags to indicate whether a particular optional field is 
set or not. Only fields with this flag set are written, and conversely the flag 
is only set when a field value has been read from the input stream.</p>
+<p>Most language implementations use the recommended practice of so-called 
“isset” flags to indicate whether a particular optional field is set or not. 
Only fields with this flag set are written, and conversely the flag is only set 
when a field value has been read from the input stream.</p>
 
 <h4 id="default-requiredness-implicit">default requiredness (implicit)</h4>
 
@@ -202,7 +202,7 @@
   <li>Default values: may not be written (see next section)</li>
 </ul>
 
-<p>Default requiredness is a good starting point. The desired behaviour is a 
mix of optional and required, hence the internal name &#8220;opt-in, 
req-out&#8221;. Although in theory these fields are supposed to be written 
(&#8220;req-out&#8221;), in reality unset fields are not always written. This 
is especially the case, when the field contains a <null> value, which by 
definition cannot be transported through thrift. The only way to achieve this 
is by not writing that field at all, and t [...]
+<p>Default requiredness is a good starting point. The desired behaviour is a 
mix of optional and required, hence the internal name “opt-in, req-out”. 
Although in theory these fields are supposed to be written (“req-out”), in 
reality unset fields are not always written. This is especially the case, when 
the field contains a <null> value, which by definition cannot be transported 
through thrift. The only way to achieve this is by not writing that field at 
all, and that's what most language [...]
 
 <h4 id="semantics-of-default-values">Semantics of Default Values</h4>
 
@@ -309,8 +309,8 @@
 <ul>
   <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&#8217;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&#8217;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>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="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>
 
@@ -319,19 +319,19 @@
 <p>Initialization of Base Types for all Languages?</p>
 
 <ul>
-  <li>Do all Languages initialize them to 0, bool=false and 
string=&#8221;&#8221;? or null, undefined?</li>
+  <li>Do all Languages initialize them to 0, bool=false and string=””? or 
null, undefined?</li>
 </ul>
 
 <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&#8217;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>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 to set the order correctly?</li>
 </ul>
 
-<p>Why can&#8217;t <code>DefinitionType</code> be the same as 
<code>FieldType</code> (i.e. include <code>Identifier</code>)?</p>
+<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)&#8230;</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>
 
 <p>What to do about <code>ListSeparator</code>? Do we really want to be as lax 
as we currently are?</p>
 
diff --git a/output/docs/install/centos.html b/output/docs/install/centos.html
index dea63db..0cfe64c 100644
--- a/output/docs/install/centos.html
+++ b/output/docs/install/centos.html
@@ -132,8 +132,8 @@ make
 sudo make install
 </code></pre>
 
-<p>This will build the compiler (thrift/compiler/cpp/thrift &#8211;version) 
and any language libraries supported. The make install step installs the 
compiler on the path: /usr/local/bin/thrift
-You can use the ./configure &#8211;enable-libs=no switch to build the Apache 
Thrift IDL Compiler only without lib builds. To run tests use &#8220;make 
check&#8221;.</p>
+<p>This will build the compiler (thrift/compiler/cpp/thrift –version) and any 
language libraries supported. The make install step installs the compiler on 
the path: /usr/local/bin/thrift
+You can use the ./configure –enable-libs=no switch to build the Apache Thrift 
IDL Compiler only without lib builds. To run tests use “make check”.</p>
 
 <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;hb=HEAD;f=doc/install/centos.md";>doc/install/centos.md</a>
diff --git a/output/docs/install/debian.html b/output/docs/install/debian.html
index bb20054..2f78e6d 100644
--- a/output/docs/install/debian.html
+++ b/output/docs/install/debian.html
@@ -74,7 +74,7 @@ sudo ./b2 install
 <ul>
   <li>Java
     <ul>
-      <li>packages: gradle (version 7.5.1)</li>
+      <li>packages: gradle (version 8.0.2)</li>
       <li>You will also need Java JDK v1.8 or higher. Type 
<strong>javac</strong> to see a list of available packages, pick the one you 
prefer and <strong>apt-get install</strong> it (e.g. default-jdk).</li>
     </ul>
   </li>
diff --git a/output/docs/install/windows.html b/output/docs/install/windows.html
index 07802ca..23debfd 100644
--- a/output/docs/install/windows.html
+++ b/output/docs/install/windows.html
@@ -54,7 +54,7 @@
 
 <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 &#8220;Setup from source&#8221; methods outlined below.</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>
 
@@ -62,13 +62,13 @@
 
 <p>The windows Thrift compiler is available as a prebuilt exe available <a 
href="/download">here</a>. Note that there is no installation tool, rather this 
EXE file <em>is</em> already the Thrift compiler utility. Download the file and 
put it into some suitable location of your choice.</p>
 
-<p>Now pick one of the &#8220;Build and install target libraries&#8221; below 
to continue.</p>
+<p>Now pick one of the “Build and install target libraries” below to 
continue.</p>
 
 <h2 id="setup-from-source-via-visual-studio-c-recommended">Setup from source 
via Visual Studio C++ (recommended)</h2>
 
 <h3 id="requirements">Requirements</h3>
 
-<p>Thrift&#8217;s compiler is written in C++ and designed to be portable, but 
there are some system requirements. Thrift&#8217;s runtime libraries are 
written in various languages, which are also required for the particular 
language interface.</p>
+<p>Thrift’s compiler is written in C++ and designed to be portable, but there 
are some system requirements. Thrift’s runtime libraries are written in various 
languages, which are also required for the particular language interface.</p>
 
 <ul>
   <li>Visual Studio C++, any recent version should do</li>
@@ -84,13 +84,13 @@
 
 <p>A few of the target language libraries also do provide Visual Studio 
project files, such as C++ and C#. These are located in the 
<code>lib/&lt;language&gt;/</code> folders.</p>
 
-<p>Most of the language packages must be built and installed manually using 
build tools better suited to those languages. Typical examples are Java, Ruby, 
Delphi, or PHP. Look for the <code>README.md</code> file in the 
<code>lib/&lt;language&gt;/</code> folder for more details on how to build and 
install each language&#8217;s library package.</p>
+<p>Most of the language packages must be built and installed manually using 
build tools better suited to those languages. Typical examples are Java, Ruby, 
Delphi, or PHP. Look for the <code>README.md</code> file in the 
<code>lib/&lt;language&gt;/</code> folder for more details on how to build and 
install each language’s library package.</p>
 
 <h2 id="setup-from-source-via-cygwin">Setup from source via Cygwin</h2>
 
 <h3 id="requirements-1">Requirements</h3>
 
-<p>Thrift&#8217;s compiler is written in C++ and designed to be portable, but 
there are some system requirements. Thrift&#8217;s runtime libraries are 
written in various languages, which are also required for the particular 
language interface.</p>
+<p>Thrift’s compiler is written in C++ and designed to be portable, but there 
are some system requirements. Thrift’s runtime libraries are written in various 
languages, which are also required for the particular language interface.</p>
 
 <ul>
   <li>Cygwin or MinGW</li>
@@ -139,12 +139,12 @@ make install
 ./configure: line 21183: `  PKG_CHECK_MODULES(MONO, mono &gt;= 1.2.6, 
have_mono=yes, have_mono=no)'
 </code></pre>
 
-<p>To resolve this, you&#8217;ll need to find your pkg.m4 (installed by the 
pkg-config package) file and copy it to the thrift/aclocal directory.  From the 
top-level thrift directory, you can copy the file by running</p>
+<p>To resolve this, you’ll need to find your pkg.m4 (installed by the 
pkg-config package) file and copy it to the thrift/aclocal directory.  From the 
top-level thrift directory, you can copy the file by running</p>
 
 <pre><code>cp /usr/share/aclocal/pkg.m4 aclocal
 </code></pre>
 
-<p>Finally, re-run ./bootstrap.sh and ./configure.  (Note that pkg.m4 is 
created by the pkg-config tool.  If your /usr/share/aclocal directory 
doesn&#8217;t contain the pkg.m4 file, you may not have pkg-config 
installed.)</p>
+<p>Finally, re-run ./bootstrap.sh and ./configure.  (Note that pkg.m4 is 
created by the pkg-config tool.  If your /usr/share/aclocal directory doesn’t 
contain the pkg.m4 file, you may not have pkg-config installed.)</p>
 
 <h4 id="installing-perl-runtime-libraries">Installing perl runtime 
libraries</h4>
 
@@ -152,7 +152,7 @@ make install
 
 <p>A workaround is to avoid installing the perl libraries if they are not 
needed.</p>
 
-<p>If you don&#8217;t need perl, run configure with &#8211;without-perl.</p>
+<p>If you don’t need perl, run configure with –without-perl.</p>
 
 <p>If you need perl, and are happy to manually install it, replace the 
contents of thrift/lib/perl/Makefile with the following, after building 
thrift:</p>
 
@@ -221,7 +221,7 @@ LTHRIFT=$(THRIFT_O)/Thrift.o $(THRIFT_O)/TSocket.o 
$(THRIFT_O)/TBinaryProtocol.o
 ./configure
 </code></pre>
 
-<p>'&#8217;Optional:&#8217;&#8217; To make the compiler only, change to the 
compiler  directory before running make:</p>
+<p>'’Optional:’’ To make the compiler only, change to the compiler  directory 
before running make:</p>
 
 <pre><code>cd compiler/cpp
 </code></pre>
diff --git a/output/download.html b/output/download.html
index 556b522..575cd35 100644
--- a/output/download.html
+++ b/output/download.html
@@ -50,19 +50,19 @@
 
     <div class="container">
       <h2 id="release">Release</h2>
-<p>The latest stable release of Thrift is 0.18.1 (released on 2023-MAR-01).</p>
+<p>The latest stable release of Thrift is 0.19.0 (released on 2023-SEP-02).</p>
 
 <ul>
-  <li><a 
href="http://www.apache.org/dyn/closer.cgi?path=/thrift/0.18.1/thrift-0.18.1.tar.gz";>thrift-0.18.1.tar.gz</a>
 [<a 
href="https://www.apache.org/dist/thrift/0.18.1/thrift-0.18.1.tar.gz.asc";>PGP</a>]
-[<a 
href="https://www.apache.org/dist/thrift/0.18.1/thrift-0.18.1.tar.gz.md5";>MD5</a>]</li>
-  <li><a 
href="http://www.apache.org/dyn/closer.cgi?path=/thrift/0.18.1/thrift-0.18.1.exe";>Thrift
 compiler for Windows (thrift-0.18.1.exe)</a> [<a 
href="https://www.apache.org/dist/thrift/0.18.1/thrift-0.18.1.exe.asc";>PGP</a>] 
[<a 
href="https://www.apache.org/dist/thrift/0.18.1/thrift-0.18.1.exe.md5";>MD5</a>]</li>
+  <li><a 
href="http://www.apache.org/dyn/closer.cgi?path=/thrift/0.19.0/thrift-0.19.0.tar.gz";>thrift-0.19.0.tar.gz</a>
 [<a 
href="https://www.apache.org/dist/thrift/0.19.0/thrift-0.19.0.tar.gz.asc";>PGP</a>]
+[<a 
href="https://www.apache.org/dist/thrift/0.19.0/thrift-0.19.0.tar.gz.md5";>MD5</a>]</li>
+  <li><a 
href="http://www.apache.org/dyn/closer.cgi?path=/thrift/0.19.0/thrift-0.19.0.exe";>Thrift
 compiler for Windows (thrift-0.19.0.exe)</a> [<a 
href="https://www.apache.org/dist/thrift/0.19.0/thrift-0.19.0.exe.asc";>PGP</a>] 
[<a 
href="https://www.apache.org/dist/thrift/0.19.0/thrift-0.19.0.exe.md5";>MD5</a>]</li>
 </ul>
 
 <h2 id="maven-artifact">Maven artifact</h2>
 <pre><code>&lt;dependency&gt;
   &lt;groupId&gt;org.apache.thrift&lt;/groupId&gt;
   &lt;artifactId&gt;libthrift&lt;/artifactId&gt;
-  &lt;version&gt;0.18.1&lt;/version&gt;
+  &lt;version&gt;0.19.0&lt;/version&gt;
 &lt;/dependency&gt;
 </code></pre>
 
diff --git a/output/index.html b/output/index.html
index d22c143..c2b3ac0 100644
--- a/output/index.html
+++ b/output/index.html
@@ -80,19 +80,19 @@
   </div>
   <div class="span3 well center pull-right">
     <h2>Download</h2>
-    <p>Apache Thrift v0.18.1</p>
+    <p>Apache Thrift v0.19.0</p>
     <p>
-      <a class="btn btn-large" 
href="http://www.apache.org/dyn/closer.cgi?path=/thrift/0.18.1/thrift-0.18.1.tar.gz";>
-          Download <small>v0.18.1</small>
+      <a class="btn btn-large" 
href="http://www.apache.org/dyn/closer.cgi?path=/thrift/0.19.0/thrift-0.19.0.tar.gz";>
+          Download <small>v0.19.0</small>
       </a>
     </p>
     <p>
       <small>
-       <a 
href="https://www.apache.org/dist/thrift/0.18.1/thrift-0.18.1.tar.gz.md5";>MD5</a>
+       <a 
href="https://www.apache.org/dist/thrift/0.19.0/thrift-0.19.0.tar.gz.md5";>MD5</a>
       </small>
       |
       <small>
-       <a 
href="https://www.apache.org/dist/thrift/0.18.1/thrift-0.18.1.tar.gz.asc";>PGP</a>
+       <a 
href="https://www.apache.org/dist/thrift/0.19.0/thrift-0.19.0.tar.gz.asc";>PGP</a>
       </small>
     </p>
     <p>
diff --git a/output/lib/c_glib.html b/output/lib/c_glib.html
index 8e166b4..d5ce73b 100644
--- a/output/lib/c_glib.html
+++ b/output/lib/c_glib.html
@@ -64,16 +64,16 @@ http://www.gtk.org/</p>
 
 <h2 id="section">0.12.0</h2>
 
-<p>The compiler&#8217;s handling of namespaces when generating the name of 
types,
+<p>The compiler’s handling of namespaces when generating the name of types,
 functions and header files has been improved. This means code written to use
 classes generated by previous versions of the compiler may need to be updated 
to
 reflect the proper convention for class names, which is</p>
 
 <ul>
   <li>A lowercase, <a 
href="https://en.wikipedia.org/wiki/Snake_case";>snake-case</a>
-representation of the class&#8217; namespace, followed by</li>
+representation of the class’ namespace, followed by</li>
   <li>An underscore and</li>
-  <li>A lowercase, snake-case representation of the class&#8217; name.</li>
+  <li>A lowercase, snake-case representation of the class’ name.</li>
 </ul>
 
 <p class="snippet_footer">This page was generated by Apache Thrift's 
<strong>source tree docs</strong>:
diff --git a/output/lib/cl.html b/output/lib/cl.html
index 6f43293..7499561 100644
--- a/output/lib/cl.html
+++ b/output/lib/cl.html
@@ -90,7 +90,7 @@ and transport mechanisms.</li>
 
 <ul>
   <li><code>serve (location service)</code> : accepts connections on the 
designated port and responds to
-requests of the service&#8217;s operations.</li>
+requests of the service’s operations.</li>
 </ul>
 
 <h2 id="building">Building</h2>
@@ -152,7 +152,7 @@ the tutorial file, the relevant packages are:</p>
 
 <p>It is suggested to work in the <code>tutorial-implementation</code> package 
while implementing
 the services - it imports the <code>common-lisp</code> package, while the 
service-specific ones
-don&#8217;t (to avoid conflicts between Thrift method names and function names 
in <code>common-lisp</code>).</p>
+don’t (to avoid conflicts between Thrift method names and function names in 
<code>common-lisp</code>).</p>
 
 <pre><code>;; define the base operations
 
diff --git a/output/lib/cpp.html b/output/lib/cpp.html
index 705c954..f4b84a6 100644
--- a/output/lib/cpp.html
+++ b/output/lib/cpp.html
@@ -124,7 +124,7 @@ dependencies; in the case of libthrift, openssl, pthreads, 
and librt and for
 libthriftnb, libevent.</p>
 
 <p>In the project properties you must also set HAVE_CONFIG_H as force include
-the config header: &#8220;windows/config.h&#8221;</p>
+the config header: “windows/config.h”</p>
 
 <h2 id="dependencies-1">Dependencies</h2>
 
@@ -158,7 +158,7 @@ on the vcpkg repository.</p>
 <p>Named Pipe transport has been added in the TPipe and TPipeServer classes. 
This
 is currently Windows-only. Named pipe transport for *NIX has not been
 implemented. Domain sockets are a better choice for local IPC under non-Windows
-OS&#8217;s. *NIX named pipes only support 1:1 client-server connection.</p>
+OS’s. *NIX named pipes only support 1:1 client-server connection.</p>
 
 <h1 id="thriftssl">Thrift/SSL</h1>
 
@@ -190,44 +190,44 @@ TSSLSocket are always created from TSSLSocketFactory.</p>
 
 <p>After SSL handshake completes, additional checks are conducted. Application
 is given the chance to decide whether or not to continue the conversation
-with the remote. Application is queried through the above three 
&#8220;verify&#8221;
+with the remote. Application is queried through the above three “verify”
 method. They are called at different points of the verification process.</p>
 
 <p>Decisions can be one of ALLOW, DENY, and SKIP. ALLOW and DENY means the
 conversation should be continued or disconnected, respectively. ALLOW and
-DENY decision stops the verification process. SKIP means there&#8217;s no 
decision
+DENY decision stops the verification process. SKIP means there’s no decision
 based on the given input, continue the verification process.</p>
 
 <p>First, (a) is called with the remote IP. It is called once at the beginning.
-&#8220;sa&#8221; is the IP address of the remote peer.</p>
+“sa” is the IP address of the remote peer.</p>
 
 <p>Then, the certificate of remote peer is loaded. SubjectAltName extensions
 are extracted and sent to application for verification. When a DNS
 subjectAltName field is extracted, (b) is called. When an IP subjectAltName
 field is extracted, (c) is called.</p>
 
-<p>The &#8220;host&#8221; in (b) is the value from TSocket::getHost() if this 
is a client
+<p>The “host” in (b) is the value from TSocket::getHost() if this is a client
 side socket, or TSocket::getPeerHost() if this is a server side socket. The
 reason is client side socket initiates the connection. TSocket::getHost()
 is the remote host name. On server side, the remote host name is unknown
-unless it&#8217;s retrieved through TSocket::getPeerHost(). Either way, 
&#8220;host&#8221;
+unless it’s retrieved through TSocket::getPeerHost(). Either way, “host”
 should be the remote host name. Keep in mind, if TSocket::getPeerHost()
 failed, it would return the remote host name in numeric format.</p>
 
-<p>If all subjectAltName extensions were &#8220;skipped&#8221;, the common 
name field would
-be checked. It is sent to application through (c), where &#8220;sa&#8221; is 
the remote
-IP address. &#8220;data&#8221; is the IP address extracted from subjectAltName 
IP
-extension, and &#8220;size&#8221; is the length of the extension data.</p>
+<p>If all subjectAltName extensions were “skipped”, the common name field would
+be checked. It is sent to application through (c), where “sa” is the remote
+IP address. “data” is the IP address extracted from subjectAltName IP
+extension, and “size” is the length of the extension data.</p>
 
-<p>If any of the above &#8220;verify&#8221; methods returned a decision ALLOW 
or DENY, the
+<p>If any of the above “verify” methods returned a decision ALLOW or DENY, the
 verification process would be stopped.</p>
 
-<p>If any of the above &#8220;verify&#8221; methods returned SKIP, that 
decision would be
+<p>If any of the above “verify” methods returned SKIP, that decision would be
 ignored and the verification process would move on till the last item is
-examined. At that point, if there&#8217;s still no decision, the connection is
+examined. At that point, if there’s still no decision, the connection is
 terminated.</p>
 
-<p>Thread safety, an access manager should not store state information if 
it&#8217;s
+<p>Thread safety, an access manager should not store state information if it’s
 to be used by many SSL sockets.</p>
 
 <h2 id="sigpipe-signal">SIGPIPE signal</h2>
@@ -249,7 +249,7 @@ this signal would kill the application.</p>
 
 <p>The file names are hard coded in the source code. You need to create these
 certificates before you can run the test code in SSL mode. Make sure at least
-one of the followings is included in &#8220;keys/server.crt&#8221;,</p>
+one of the followings is included in “keys/server.crt”,</p>
 
 <ul>
   <li>subjectAltName, DNS localhost</li>
@@ -263,16 +263,16 @@ one of the followings is included in 
&#8220;keys/server.crt&#8221;,</p>
      ./cpp/TestClient --ssl
 </code></pre>
 
-<p>If &#8220;-h <host>" is used to run client, the above "localhost" in the 
above
+<p>If “-h <host>" is used to run client, the above "localhost" in the above
 keys/server.crt has to be replaced with that host name.</host></p>
 
 <h2 id="tsslsocketfactoryrandomize">TSSLSocketFactory::randomize()</h2>
 
 <p>The default implementation of OpenSSLSocketFactory::randomize() simply calls
-OpenSSL&#8217;s RAND_poll() when OpenSSL library is first initialized.</p>
+OpenSSL’s RAND_poll() when OpenSSL library is first initialized.</p>
 
 <p>The PRNG seed is key to the application security. This method should be
-overridden if it&#8217;s not strong enough for you.</p>
+overridden if it’s not strong enough for you.</p>
 
 <h1 id="deprecations">Deprecations</h1>
 
@@ -314,7 +314,7 @@ Qt4 support was removed.</p>
 
 <p>THRIFT-4762:
 Added <code>const</code> specifier to <code>TTransport::getOrigin()</code>. 
This changes its function signature.
-It&#8217;s recommended to add the <code>override</code> specifier in 
implementations derived from <code>TTransport</code>.</p>
+It’s recommended to add the <code>override</code> specifier in implementations 
derived from <code>TTransport</code>.</p>
 
 <h2 id="section-2">0.11.0</h2>
 
@@ -327,7 +327,7 @@ preprocessor macro `FORCE_BOOST_SMART_PTR`.  
(THRIFT-2221)</memory></p>
 <p>In the pthread mutex implementation, the contention profiling code was 
enabled
 by default in all builds.  This changed to be disabled by default.  
(THRIFT-4151)</p>
 
-<p>In older releases, if a TSSLSocketFactory&#8217;s lifetime was not at least 
as long
+<p>In older releases, if a TSSLSocketFactory’s lifetime was not at least as 
long
 as the TSSLSockets it created, we silently reverted openssl to unsafe 
multithread behavior
 and so the results were undefined.  Changes were made in 0.11.0 that cause 
either an
 assertion or a core instead of undefined behavior.  The lifetime of a 
TSSLSocketFactory
diff --git a/output/lib/d.html b/output/lib/d.html
index d064a68..c60c567 100644
--- a/output/lib/d.html
+++ b/output/lib/d.html
@@ -56,7 +56,7 @@
 the unit test blocks contained in the D source files, and
 second, the more extensive testing applications in the test/
 subdirectory, which also make use of the Thrift compiler.
-Both are built when running &#8220;make check&#8221;, but only the
+Both are built when running “make check”, but only the
 unit tests are immediately run, however – the separate test
 cases typically run longer or require manual intervention.
 It might also be prudent to run the independent tests,
@@ -68,11 +68,11 @@ be to manually create a file containing an empty main() and
 invoke the compiler by running the following in the src/
 directory (PowerShell syntax):</p>
 
-<p>dmd -ofunittest -unittest -w $(dir -r -filter &#8216;*.d&#8217; -name)</p>
+<p>dmd -ofunittest -unittest -w $(dir -r -filter ‘*.d’ -name)</p>
 
 <h2 id="async-and-ssl">Async and SSL</h2>
 <p>Using SSL with async is experimental (always has been) and
-the unit test &#8220;async_test &#8211;ssl&#8221; hangs.  Use at your own
+the unit test “async_test –ssl” hangs.  Use at your own
 risk.</p>
 
 <p class="snippet_footer">This page was generated by Apache Thrift's 
<strong>source tree docs</strong>:
diff --git a/output/lib/go.html b/output/lib/go.html
index 96e1af2..9a86f05 100644
--- a/output/lib/go.html
+++ b/output/lib/go.html
@@ -61,9 +61,9 @@ the latest two Go releases are go1.15 and go1.14,
 and those are the two Go releases supported by Thrift v0.14.*
 (including v0.14.1 and v0.14.2 patch releases).</p>
 
-<p>Because of Go&#8217;s backward compatibility guarantee,
+<p>Because of Go’s backward compatibility guarantee,
 older Thrift libraries usually works with newer Go releases
-(e.g. Thrift v0.14.* works with go1.16, although it&#8217;s not officially 
supported),
+(e.g. Thrift v0.14.* works with go1.16, although it’s not officially 
supported),
 but newer Thrift releases might use new APIs introduced in Go releases and no
 longer work with older Go releases.
 For example, Thrift v0.14.0 used APIs introduced in go1.13,
@@ -102,7 +102,7 @@ is, given a struct like</p>
 }
 </code></pre>
 
-<p>(Nor is there any other syntax that&#8217;s built in to the language)</p>
+<p>(Nor is there any other syntax that’s built in to the language)</p>
 
 <p>As such, we provide some helpers that do just this under lib/go/thrift/. 
E.g.,</p>
 
@@ -134,15 +134,21 @@ typedefs and enums.</p>
 
 <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
-&#8211; there&#8217;s no guarantee that the context object is always canceled 
when client
-closes the connection, but when it&#8217;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&#8217;s no longer needed:</p>
+– 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). The cause of the cancellation (via 
<code>context.Cause(ctx)</code>)
+would also be set to <code>thrift.ErrAbandonRequest</code>.</p>
+
+<p>When implementing Go Thrift server, you can take advantage of that to 
abandon
+requests that’s no longer needed by returning 
<code>thrift.ErrAbandonRequest</code>:</p>
 
 <pre><code>func MyEndpoint(ctx context.Context, req *thriftRequestType) 
(*thriftResponseType, error) {
     ...
     if ctx.Err() == context.Canceled {
         return nil, thrift.ErrAbandonRequest
+        // Or just return ctx.Err(), compiler generated processor code will
+        // handle it for you automatically:
+        // return nil, ctx.Err()
     }
     ...
 }
@@ -180,7 +186,7 @@ thrift.ServerStopTimeout in your main or init function:</p>
 <pre><code>thrift.ServerStopTimeout = &lt;max_duration_to_stop&gt;
 </code></pre>
 
-<p>If it&#8217;s set to &lt;=0, the feature will be disabled (by default), and 
server 
+<p>If it’s set to &lt;=0, the feature will be disabled (by default), and 
server 
 will wait for all the client connections to be closed gracefully with 
 zero err time. Otherwise, the stop will wait for all the client 
 connections to be closed gracefully util thrift.ServerStopTimeout is 
diff --git a/output/lib/haxe.html b/output/lib/haxe.html
index b27b3c8..c0222e6 100644
--- a/output/lib/haxe.html
+++ b/output/lib/haxe.html
@@ -94,7 +94,7 @@ sudo ldconfig
 <h2 id="thrift-haxe-bindings">Thrift Haxe bindings</h2>
 
 <p>Thrift Haxe bindings can be set up via the <code>haxelib</code> tool  as 
usual.
-Alternatively, the &#8220;github&#8221; method can be used.</p>
+Alternatively, the “github” method can be used.</p>
 
 <ul>
   <li>
@@ -121,7 +121,7 @@ or build from source, depending on your operating system. 
Appropriate
 downloads and more information can be found at http://thrift.apache.org</p>
 
 <p>To get started, visit the /tutorial/haxe and /test/haxe dirs for examples. 
-If you are using the HaxeDevelop IDE, you&#8217;ll find appropriate project 
files 
+If you are using the HaxeDevelop IDE, you’ll find appropriate project files 
 in these folders.</p>
 
 <h1 id="breaking-changes">Breaking changes</h1>
@@ -180,7 +180,7 @@ transport = new TWrappingServerTransport(
 </code></p>
   </li>
   <li>
-    <p>TSimpleServer doesn&#8217;t stop after first call, so 
processor.process() should be called instead, or use runOnce property 
+    <p>TSimpleServer doesn’t stop after first call, so processor.process() 
should be called instead, or use runOnce property 
 <code>haxe
 var server = new TSimpleServer( processor, transport, transfactory, 
protfactory);
 server.runOnce = true;
diff --git a/output/lib/java.html b/output/lib/java.html
index 4fe695d..70cdf54 100644
--- a/output/lib/java.html
+++ b/output/lib/java.html
@@ -71,7 +71,7 @@ install code to copy to the target destination.</p>
 the Gradle build system, which tends to be predominant amongst Java
 developers.</p>
 
-<p>Currently we use gradle 7.5.1 to build the Thrift Java source. The usual 
way to setup gradle
+<p>Currently we use gradle 8.0 to build the Thrift Java source. The usual way 
to setup gradle
 project is to include the gradle-wrapper.jar in the project and then run the 
gradle wrapper to
 bootstrap setting up gradle binaries. However to avoid putting binary files 
into the source tree we
 have ignored the gradle wrapper files. You are expected to install it 
manually, as described in
@@ -79,13 +79,13 @@ the <a 
href="https://docs.gradle.org/current/userguide/installation.html";>gradle
 following this step (which is also done in the travis CI docker images):</p>
 
 <p><code>bash
-export GRADLE_VERSION="7.5.1"
+export GRADLE_VERSION="8.0.2"
 # install dependencies
 apt-get install -y --no-install-recommends openjdk-17-jdk-headless wget unzip
 # download gradle distribution
 wget https://services.gradle.org/distributions/gradle-$GRADLE_VERSION-bin.zip 
-q -O /tmp/gradle-$GRADLE_VERSION-bin.zip
 # check binary integrity
-echo "f6b8596b10cce501591e92f229816aa4046424f3b24d771751b06779d58c8ec4  
/tmp/gradle-$GRADLE_VERSION-bin.zip" | sha256sum -c -
+echo "ff7bf6a86f09b9b2c40bb8f48b25fc19cf2b2664fd1d220cd7ab833ec758d0d7  
/tmp/gradle-$GRADLE_VERSION-bin.zip" | sha256sum -c -
 # unzip and install
 unzip -d /tmp /tmp/gradle-$GRADLE_VERSION-bin.zip
 mv /tmp/gradle-$GRADLE_VERSION /usr/local/gradle
@@ -105,7 +105,7 @@ gradle wrapper --gradle-version $GRADLE_VERSION
 gradle
 </code></p>
 
-<p>Yep, that&#8217;s easy. Look for <code>libthrift-&lt;version&gt;.jar</code> 
in the build/libs directory.</p>
+<p>Yep, that’s easy. Look for <code>libthrift-&lt;version&gt;.jar</code> in 
the build/libs directory.</p>
 
 <p>The default build will run the unit tests which expect a usable
 Thrift compiler to exist on the system. You have two choices for
@@ -119,7 +119,7 @@ to look for it there.</li>
     <p>Install the published binary distribution to have Thrift
 executable in a known location and add the path to the
 ~/.gradle/gradle.properties file using the property name
-&#8220;thrift.compiler&#8221;. For example this would set the path in
+“thrift.compiler”. For example this would set the path in
 a Windows box if Thrift was installed under C:\Thrift</p>
 
     <p>thrift.compiler=C:/Thrift/thrift.exe</p>
@@ -246,7 +246,7 @@ http://gradle.org/</p>
 
 <ul>
   <li>
-    <p>The signature of the &#8216;process&#8217; method in TAsyncProcessor 
and TProcessor has
+    <p>The signature of the ‘process’ method in TAsyncProcessor and TProcessor 
has
 changed to remove the boolean return type and instead rely on Exceptions.</p>
   </li>
   <li>
diff --git a/output/lib/js.html b/output/lib/js.html
index b88b757..5468729 100644
--- a/output/lib/js.html
+++ b/output/lib/js.html
@@ -169,7 +169,7 @@ console.log("Http/Thrift Server running on port: " + port);
 <h2 id="section">0.13.0</h2>
 
 <ol>
-  <li>64-bit integer constants are now generatd using node-int64 e.g.: var x = 
new Int64(&#8220;7fffffffffffffff&#8221;);</li>
+  <li>64-bit integer constants are now generatd using node-int64 e.g.: var x = 
new Int64(“7fffffffffffffff”);</li>
 </ol>
 
 <p class="snippet_footer">This page was generated by Apache Thrift's 
<strong>source tree docs</strong>:
diff --git a/output/lib/netstd.html b/output/lib/netstd.html
index fcefda9..922b2bc 100644
--- a/output/lib/netstd.html
+++ b/output/lib/netstd.html
@@ -77,7 +77,7 @@ or</li>
 
 <h1 id="migration-to-netstd">Migration to netstd</h1>
 
-<h2 id="from-netcore">&#8230; from netcore</h2>
+<h2 id="from-netcore">… from netcore</h2>
 
 <p>If you are migrating your code from netcore library, you will have to:</p>
 
@@ -94,14 +94,14 @@ or</li>
 
 <p>You may wonder why we changed so many names. The naming scheme has been 
revised for two reasons: First, we want to get back the established, well-known 
naming consistency across the Thrift libraries which the netcore library did 
not fully respect. Second, by achieving that first objective, we get the 
additional benefit of making migration at least a bit easier for C# 
projects.</p>
 
-<h2 id="from-csharp">&#8230; from csharp</h2>
+<h2 id="from-csharp">… from csharp</h2>
 
 <p>Because of the different environment requirements, migration from C# takes 
slightly more efforts. While the code changes related to Thrift itself are 
moderate, you may need to upgrade certain dependencies, components or even 
modules to more recent versions.</p>
 
 <ol>
   <li>Client and server applications must use at least framework 4.6.1, any 
version below will not work.</li>
   <li>Switch to <code>thrift -gen netstd</code>. The following compiler flags 
are no longer needed or supported: <code>hashcode</code> and <code>async</code> 
are now standard, while <code>nullable</code> is no longer supported.</li>
-  <li><a 
href="https://msdn.microsoft.com/en-us/magazine/jj991977.aspx";>Familiarize 
yourself with the <code>async/await</code> model</a>, if you have not already 
done so. As netstd does not support <code>ISync</code> anymore, async is 
mandatory. The synchronous model is simply no longer available (that&#8217;s 
also the reason why we don&#8217;t need the <code>async</code> flag 
anymore).</li>
+  <li><a 
href="https://msdn.microsoft.com/en-us/magazine/jj991977.aspx";>Familiarize 
yourself with the <code>async/await</code> model</a>, if you have not already 
done so. As netstd does not support <code>ISync</code> anymore, async is 
mandatory. The synchronous model is simply no longer available (that’s also the 
reason why we don’t need the <code>async</code> flag anymore).</li>
   <li>Consider proper use of <code>cancellationToken</code> parameters. They 
are optional but may be quite helpful.</li>
   <li>As you probably already guessed, there are a few names that have been 
changed:
 - add <code>using Thrift.Processor;</code> in the server code where appropriate
@@ -109,7 +109,7 @@ or</li>
 - change <code>IProtocolFactory</code> into <code>ITProtocolFactory</code>
 - if you are looking for <code>TSimpleServer</code>, try 
<code>TSimpleAsyncServer</code> instead
 - similarly, the <code>TThreadPoolServer</code> is now a 
<code>TThreadPoolAsyncServer</code> 
-- the server&#8217;s <code>Serve()</code> method does now 
<code>ServeAsync()</code>
+- the server’s <code>Serve()</code> method does now <code>ServeAsync()</code>
 - In case you are using Thrift server event handlers: the 
<code>SetEventHandler</code> method now starts with an uppercase letter
 - and you will also have to revise the method names of all 
<code>TServerEventHandler</code> descendants you have in your code</li>
 </ol>
diff --git a/output/lib/nodejs.html b/output/lib/nodejs.html
index daf1ead..e6c1fa5 100644
--- a/output/lib/nodejs.html
+++ b/output/lib/nodejs.html
@@ -71,22 +71,22 @@
 <p>Here is a Cassandra example:</p>
 
 <p>```js
-var thrift = require(&#8216;thrift&#8217;),
-    Cassandra = require(&#8216;./gen-nodejs/Cassandra&#8217;)
-    ttypes = require(&#8216;./gen-nodejs/cassandra_types&#8217;);</p>
+var thrift = require(‘thrift’),
+    Cassandra = require(‘./gen-nodejs/Cassandra’)
+    ttypes = require(‘./gen-nodejs/cassandra_types’);</p>
 
-<p>var connection = thrift.createConnection(&#8220;localhost&#8221;, 9160),
+<p>var connection = thrift.createConnection(“localhost”, 9160),
     client = thrift.createClient(Cassandra, connection);</p>
 
-<p>connection.on(&#8216;error&#8217;, function(err) {
+<p>connection.on(‘error’, function(err) {
   console.error(err);
 });</p>
 
-<p>client.get_slice(&#8220;Keyspace&#8221;, &#8220;key&#8221;, new 
ttypes.ColumnParent({column_family: &#8220;ExampleCF&#8221;}), new 
ttypes.SlicePredicate({slice_range: new ttypes.SliceRange({start: 
&#8216;&#8217;, finish: &#8216;&#8217;})}), ttypes.ConsistencyLevel.ONE, 
function(err, data) {
+<p>client.get_slice(“Keyspace”, “key”, new ttypes.ColumnParent({column_family: 
“ExampleCF”}), new ttypes.SlicePredicate({slice_range: new 
ttypes.SliceRange({start: ‘’, finish: ‘’})}), ttypes.ConsistencyLevel.ONE, 
function(err, data) {
   if (err) {
     // handle err
   } else {
-    // data == [ttypes.ColumnOrSuperColumn, &#8230;]
+    // data == [ttypes.ColumnOrSuperColumn, …]
   }
   connection.end();
 });
@@ -105,11 +105,11 @@ var thrift = require(&#8216;thrift&#8217;),
 
 <p>You can use code generated with js:node on browsers with Webpack. Here is 
an example.</p>
 
-<p>thrift &#8211;gen js:node,ts,es6,with_ns</p>
+<p>thrift –gen js:node,ts,es6,with_ns</p>
 
 <p>```javascript
-import * as thrift from &#8216;thrift&#8217;;
-import { MyServiceClient } from &#8216;../gen-nodejs/MyService&#8217;;</p>
+import * as thrift from ‘thrift’;
+import { MyServiceClient } from ‘../gen-nodejs/MyService’;</p>
 
 <p>let host = window.location.hostname;
 let port = 443;
@@ -117,17 +117,17 @@ let opts = {
   transport: thrift.TBufferedTransport,
   protocol: thrift.TJSONProtocol, 
     headers: {
-     &#8216;Content-Type&#8217;: 
&#8216;application/vnd.apache.thrift.json&#8217;,
+     ‘Content-Type’: ‘application/vnd.apache.thrift.json’,
     },
     https: true,
-    path: &#8216;/url/path&#8217;,
+    path: ‘/url/path’,
     useCORS: true,
 };</p>
 
 <p>let connection = thrift.createXHRConnection(host, port, opts);
 let thriftClient = thrift.createXHRClient(MyServiceClient, connection);</p>
 
-<p>connection.on(&#8216;error&#8217;, (err) =&gt; {
+<p>connection.on(‘error’, (err) =&gt; {
   console.error(err);
 });</p>
 
@@ -136,7 +136,7 @@ let thriftClient = thrift.createXHRClient(MyServiceClient, 
connection);</p>
     console.log(result);
   })
   .catch((err) =&gt; {
-    &#8230;.
+    ….
   });
 ```</p>
 
@@ -145,8 +145,8 @@ let thriftClient = thrift.createXHRClient(MyServiceClient, 
connection);</p>
 
 <h3 
id="browser-example-with-websocket-bufferedtransport-and-binaryprotocol">Browser
 example with WebSocket, BufferedTransport and BinaryProtocol</h3>
 <p>```javascript
-import thrift from &#8216;thrift&#8217;;
-import { MyServiceClient } from &#8216;../gen-nodejs/MyService&#8217;;</p>
+import thrift from ‘thrift’;
+import { MyServiceClient } from ‘../gen-nodejs/MyService’;</p>
 
 <p>const host = window.location.hostname;
 const port = 9090;
@@ -158,7 +158,7 @@ const connection = thrift.createWSConnection(host, port, 
opts);
 connection.open();
 const thriftClient = thrift.createWSClient(MyServiceClient, connection);</p>
 
-<p>connection.on(&#8216;error&#8217;, (err) =&gt; {
+<p>connection.on(‘error’, (err) =&gt; {
   console.error(err);
 });</p>
 
@@ -167,7 +167,7 @@ const thriftClient = thrift.createWSClient(MyServiceClient, 
connection);</p>
     console.log(result);
   })
   .catch((err) =&gt; {
-    &#8230;.
+    ….
   });
 ```</p>
 
diff --git a/output/lib/ocaml.html b/output/lib/ocaml.html
index 9ba35b6..c7349e1 100644
--- a/output/lib/ocaml.html
+++ b/output/lib/ocaml.html
@@ -100,8 +100,8 @@ type t =
 | SIX
 | EIGHT</p>
 
-<p>let of_i = &#8230;
-let to_i = &#8230;
+<p>let of_i = …
+let to_i = …
 end</p>
 
 <h2 id="typedef-format">typedef format</h2>
@@ -120,17 +120,17 @@ E of t that is raised/caught.</p>
 raise (Xception.E (new Xception.t))
 and
 try
-  &#8230;
-with Xception.E e -&gt; &#8230;</p>
+  …
+with Xception.E e -&gt; …</p>
 
 <h2 id="list-format">list format</h2>
 <p>Lists are turned into OCaml native lists.</p>
 
 <h2 id="mapset-formats">Map/Set formats</h2>
-<p>These are both turned into Hashtbl.t&#8217;s. Set values are bool.</p>
+<p>These are both turned into Hashtbl.t’s. Set values are bool.</p>
 
 <h2 id="services">Services</h2>
-<p>The client is a class &#8220;client&#8221; parametrized on input and output
+<p>The client is a class “client” parametrized on input and output
 protocols. The processor is a class parametrized on a handler. A
 handler is a class inheriting the iface abstract class. Unlike other
 implementations, client does not implement iface since iface functions
diff --git a/output/lib/st.html b/output/lib/st.html
index 01d0b25..263b86a 100644
--- a/output/lib/st.html
+++ b/output/lib/st.html
@@ -56,7 +56,7 @@
 on the tutorial .thrift files (and file in the resulting code), and
 then:</p>
 
-<p>calc := CalculatorClient binaryOnHost: &#8216;localhost&#8217; port: 
&#8216;9090&#8217;
+<p>calc := CalculatorClient binaryOnHost: ‘localhost’ port: ‘9090’
 calc addNum1: 10 num2: 15</p>
 
 <p>Tested in Squeak 3.7, but should work fine with anything later.</p>
diff --git a/output/test/index.html b/output/test/index.html
index 2a080ea..a2935fb 100644
--- a/output/test/index.html
+++ b/output/test/index.html
@@ -85,7 +85,7 @@ test/test.py --server cpp,java --client nodejs
 test/test.py --server nodejs --client cpp,java
 </code></pre>
 
-<p>Another useful flag is &#8211;regex. For example, to run all tests that 
involve
+<p>Another useful flag is –regex. For example, to run all tests that involve
 Java TBinaryProtocol:</p>
 
 <pre><code>test/test.py --regex "java.*binary"
@@ -144,8 +144,8 @@ comment at the opt of <a 
href="crossrunner/collect.py">crossrunner/collect.py</a
 <h2 id="list-of-known-failures">List of known failures</h2>
 
 <p>Since many cross tests currently fail (mainly due to partial incompatibility
-around exception handling), the test script specifically report for &#8220;not 
known
-before&#8221; failures.</p>
+around exception handling), the test script specifically report for “not known
+before” failures.</p>
 
 <p>For this purpose, test cases known to (occasionally) fail are listed in
 <code>known_failures_&lt;platform&gt;.json</code> where 
<code>&lt;platform&gt;</code> matches with python
diff --git a/output/test/keys.html b/output/test/keys.html
index a8340b8..ec8e1cb 100644
--- a/output/test/keys.html
+++ b/output/test/keys.html
@@ -80,7 +80,7 @@ openssl x509 -in server.crt -text &gt; CA.pem
 cat server.crt server.key &gt; server.pem
 </code></pre>
 
-<p>Export password is &#8220;thrift&#8221; without the quotes</p>
+<p>Export password is “thrift” without the quotes</p>
 
 <pre><code>openssl pkcs12 -export -clcerts -in server.crt -inkey server.key 
-out server.p12
 </code></pre>
@@ -100,7 +100,7 @@ cat server.crt server.key &gt; server.pem
 <pre><code>openssl x509 -req -days 3000 -in client.csr -CA CA.pem -CAkey 
server.key -set_serial 01 -out client.crt
 </code></pre>
 
-<p>export certificate in PKCS12 format (Export password is 
&#8220;thrift&#8221; without the quotes)</p>
+<p>export certificate in PKCS12 format (Export password is “thrift” without 
the quotes)</p>
 
 <pre><code>openssl pkcs12 -export -clcerts -in client.crt -inkey client.key 
-out client.p12
 </code></pre>
@@ -134,7 +134,7 @@ IP.3=::ffff:127.0.0.1
 </code></pre>
 
 <h2 id="java-key-and-certificate-import">Java key and certificate import</h2>
-<p>Java Test Environment uses key and trust store password 
&#8220;thrift&#8221; without the quotes</p>
+<p>Java Test Environment uses key and trust store password “thrift” without 
the quotes</p>
 
 <p>list keystore entries</p>
 

Reply via email to