blob: 6efb460eb9f81faad75b93146a293b97b07e6eed [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>Go Client History</title>
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="generator" content="Jekyll v3.7.3">
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
<link rel="stylesheet" href="/avatica/css/screen.css">
<link rel="icon" type="image/x-icon" href="/avatica/favicon.ico">
<!--[if lt IE 9]>
<script src="/js/html5shiv.min.js"></script>
<script src="/js/respond.min.js"></script>
<![endif]-->
</head>
<body class="wrap">
<header role="banner">
<nav class="mobile-nav show-on-mobiles">
<ul>
<li class="">
<a href="/avatica/">Home</a>
</li>
<li class="">
<a href="/avatica/downloads/">Download</a>
</li>
<li class="">
<a href="/avatica/community/">Community</a>
</li>
<li class="">
<a href="/avatica/develop/">Develop</a>
</li>
<li class="">
<a href="/avatica/news/">News</a>
</li>
<li class="current">
<a href="/avatica/docs/">Docs</a>
</li>
</ul>
</nav>
<div class="grid">
<div class="unit one-third center-on-mobiles">
<h1>
<a href="/avatica/">
<span class="sr-only">Apache Calcite Avatica</span>
<img src="/avatica/img/logo.png" width="226" height="140" alt="Calcite Logo">
</a>
</h1>
</div>
<nav class="main-nav unit two-thirds hide-on-mobiles">
<ul>
<li class="">
<a href="/avatica/">Home</a>
</li>
<li class="">
<a href="/avatica/downloads/">Download</a>
</li>
<li class="">
<a href="/avatica/community/">Community</a>
</li>
<li class="">
<a href="/avatica/develop/">Develop</a>
</li>
<li class="">
<a href="/avatica/news/">News</a>
</li>
<li class="current">
<a href="/avatica/docs/">Docs</a>
</li>
</ul>
</nav>
</div>
</header>
<section class="docs">
<div class="grid">
<div class="docs-nav-mobile unit whole show-on-mobiles">
<select onchange="if (this.value) window.location.href=this.value">
<option value="">Navigate the docs…</option>
<optgroup label="Overview">
</optgroup>
<optgroup label="Avatica Reference">
</optgroup>
<optgroup label="Avatica Go Client Reference">
</optgroup>
<optgroup label="Avatica Meta">
</optgroup>
<optgroup label="Avatica Go Client Meta">
</optgroup>
</select>
</div>
<div class="unit four-fifths">
<article>
<h1>Go Client History</h1>
<!--
-->
<p>For a full list of releases, see
<a href="https://github.com/apache/calcite-avatica-go/releases">github</a>.
Downloads are available on the
<a href="/avatica/downloads/avatica-go.html">downloads page</a>.</p>
<h2 id="v4-0-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/v4.0.0">4.0.0</a> / 2019-05-16</h2>
<p>Apache Calcite Avatica Go 4.0.0 is a major release of Avatica Go with a number of improvements and a breaking change.
This release supports using both <a href="https://github.com/golang/dep">dep</a> and Go modules for package management. As Go modules
will be turned on by default in Go 1.13.0 (estimated to be released in September/October 2019), it is highly recommended
that users of this package start migrating to using Go modules to ease the transition.</p>
<p><strong>Breaking change for Phoenix (<a href="https://issues.apache.org/jira/browse/CALCITE-2724">CALCITE-2763</a>):</strong>
In Apache Phoenix, null and empty strings are equivalent. For some background on why this is the case, see
<a href="https://issues.apache.org/jira/browse/PHOENIX-947">PHOENIX-947</a>. In version 3 of Avatica-Go and below, null and empty
strings are returned as an empty string <code class="highlighter-rouge">""</code> to the client. This prevented database/sql’s built in NullString type from
working correctly. From 4.0.0 onwards, null and empty strings will be returned as a <code class="highlighter-rouge">nil</code>. This allows the usage of the
<code class="highlighter-rouge">sql.NullString</code> type.</p>
<p>Features and bug fixes</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2723">CALCITE-2723</a>]
Generate SHA512 digest for releases</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2724">CALCITE-2724</a>]
Exclude .md files from import path check in release script to avoid false positives</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2579">CALCITE-2579</a>]
Implement live reloading of tests when source files change during development</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2763">CALCITE-2763</a>]
Fix handling of nils (nulls) when executing queries and scanning query results with empty strings and other null types</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2775">CALCITE-2775</a>]
Update dependencies and regenerate protobufs</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3024">CALCITE-3024</a>]
Update dependencies (April 26 2019)</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3032">CALCITE-3032</a>]
Simplify docker-compose.yml for running tests and development mode, change release process to use a docker container
to build in a clean environment and include automation for uploading and promoting releases</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3026">CALCITE-3026</a>]
Move import paths from v3 to v4 to prepare for 4.0.0 release</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3042">CALCITE-3042</a>]
Fix bug in docker release script that prevents releases from being promoted correctly and incorrect variable
substitution in vote email</li>
</ul>
<p>Tests</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2771">CALCITE-2771</a>]
Test against Avatica HSQLDB 1.13.0</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3025">CALCITE-3025</a>]
Update travis configuration and docker-compose to test against Go 1.12 and run tests using dep in Go 1.11 and Go 1.12</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3035">CALCITE-3035</a>]
Test against Avatica HSQLDB 1.14.0</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3044">CALCITE-3044</a>]
Test against Avatica HSQLDB 1.15.0 and simplify Alpine dependencies</li>
</ul>
<p>Web site and documentation:</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2774">CALCITE-2774</a>]
Improve release documentation and explicitly include all steps for making a release</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-3033">CALCITE-3033</a>]
Move release process to separate HOWTO document so that it’s consistent with how the avatica docs are structured</li>
</ul>
<h2 id="v3-2-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/v3.2.0">3.2.0</a> / 2018-09-18</h2>
<p>Apache Calcite Avatica Go 3.2.0 is a minor release of Avatica Go with fixes to the import paths after enabling
support for Go modules.</p>
<p>The 3.1.0 release contained a bug where packages within the library used the <code class="highlighter-rouge">"github.com/apache/calcite-avatica-go"</code>
import path rather than the <code class="highlighter-rouge">"github.com/apache/calcite-avatica-go/v3"</code> import path. This resulted in an issue where
2 versions of the library are being used at the same time, causing some programs to not build.</p>
<p><strong>The Calcite team recommends consumers of the Avatica Go library to not use the 3.1.0 release and ensure that the
3.2.0 release is being used.</strong></p>
<p>Features and bug fixes</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2536">CALCITE-2536</a>]
Update release script to check that import paths within the library point to the correct version</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2545">CALCITE-2545</a>]
Fix incorrect import paths within the library to point to the correct version: github.com/apache/calcite-avatica-go/v3</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2544">CALCITE-2544</a>]
Replace the golang.org/x/net/context package with the context package in the standard library</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2547">CALCITE-2547</a>]
Update all dependencies to their latest versions</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2550">CALCITE-2550</a>]
Update release script to build tarballs with filenames in the format: apache-calcite-avatica-go-x.x.x-src.tar.gz</li>
</ul>
<h2 id="v3-1-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/v3.1.0">3.1.0</a> / 2018-09-10</h2>
<p>Apache Calcite Avatica Go 3.1.0 is a minor release of Avatica Go with support for Go modules.
We recommend using the latest stable version of Go.</p>
<p>Go 1.11 along with Go modules support was released at the end of August 2018. Go modules will become the
official package management solution for Go projects. As the Go team currently supports both Go 1.11 and Go 1.10,
the Gopkg.toml and Gopkg.lock files are still available for those using dep for package management. We plan to
remove support for dep when Go 1.12 is released in early 2019, so we encourage users to upgrade to Go 1.11 and use
Go modules where possible.</p>
<p>Features and bug fixes</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2333">CALCITE-2333</a>]
Stop releasing zip archives</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2367">CALCITE-2367</a>]
Remove the satori/go.uuid package as it is unmaintained and replace it with hashicorp/go-uuid which is already
a transitive dependency (Kenneth Shaw)</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2372">CALCITE-2372</a>]
Test against Apache Phoenix 4.14.0</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2493">CALCITE-2493</a>]
Update all dependencies to their latest versions</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2335">CALCITE-2335</a>]
Add support for Go modules (available since Go 1.11) and test against Go 1.11</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2500">CALCITE-2500</a>]
Test against Avatica 1.12.0 and Apache Phoenix 5.0.0 and regenerate protobuf definitions</li>
<li>Fix release script</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2513">CALCITE-2513</a>]
Fix dockerfile so that Go modules work correctly when running tests using docker-compose</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2513">CALCITE-2531</a>]
Update release script to only include files in source control</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2533">CALCITE-2533</a>]
Allow user to select signing key when signing releases using release script</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2532">CALCITE-2532</a>]
Update release script to check ending copyright year in NOTICE file</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2534">CALCITE-2534</a>]
Update release script to check that AVATICA_VER are the same in both gen-protobuf.sh and gen-protobuf.bat</li>
<li>Fix 3.1.0 release annoucement filename</li>
</ul>
<p>Web site and documentation</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-2335">CALCITE-2335</a>]
Update documentation and release instructions to include support for Go modules.</li>
</ul>
<h2 id="v3-0-0"><a href="https://github.com/apache/calcite-avatica-go/releases/tag/3.0.0">3.0.0</a> / 2018-04-27</h2>
<p>Apache Calcite Avatica Go 3.0.0 is the first release since the Go driver has been donated
to the Apache Software foundation.
We recommend using the latest stable version of Go.</p>
<p>Features and bug fixes</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-1240">CALCITE-1240</a>]
Intial import of the original <a href="https://github.com/Boostport/avatica">Boostport/avatica</a> code-base into the
<a href="https://github.com/apache/calcite-avatica-go">apache/calcite-avatica-go</a> repository</li>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-1938">CALCITE-1938</a>]
Releasing the first release of Calcite Avatica Go under the Apache Software Foundation</li>
<li>Remove go-cleanhttp dependency</li>
<li>Support for Avatica HSQLDB backend and move Apache Phoenix support into adapter</li>
<li>Add bash script to automate releases with checks to alert on files without the Apache license header</li>
<li>Replace gopher.png test fixture with Calcite logo</li>
</ul>
<p>Web site and documentation</p>
<ul>
<li>[<a href="https://issues.apache.org/jira/browse/CALCITE-1937">CALCITE-1937</a>]
Set up Calcite Avatica Go website</li>
</ul>
<h2 id="past-releases">Past releases</h2>
<p>Prior to release 3.0.0, the Avatica Go client was developed by Boostport.</p>
<p>Please refer to the <a href="https://github.com/Boostport/avatica">Boostport/avatica</a> Github repository for previous releases
of the Avatica Go client.</p>
<div class="section-nav">
<div class="left align-right">
<a href="/avatica/docs/testapi.html" class="prev">Previous</a>
</div>
<div class="right align-left">
<span class="next disabled">Next</span>
</div>
</div>
<div class="clear"></div>
</article>
</div>
<div class="unit one-fifth hide-on-mobiles">
<aside>
<h4>Overview</h4>
<ul>
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
</ul>
<h4>Avatica Reference</h4>
<ul>
<li class=""><a href="/avatica/docs/client_reference.html">Client Reference</a></li>
<li class=""><a href="/avatica/docs/json_reference.html">JSON Reference</a></li>
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
<li class=""><a href="/avatica/docs/compatibility.html">Compatibility</a></li>
<li class=""><a href="/avatica/docs/custom_client_artifacts.html">Custom Client Artifacts</a></li>
<li class=""><a href="/avatica/docs/docker.html">Docker Images</a></li>
<li class=""><a href="/avatica/docs/protocol_testing.html">Protocol Testing</a></li>
</ul>
<h4>Avatica Go Client Reference</h4>
<ul>
<li class=""><a href="/avatica/docs/go_client_reference.html">Go Client Reference</a></li>
<li class=""><a href="/avatica/docs/go_howto.html">HOWTO</a></li>
</ul>
<h4>Avatica Meta</h4>
<ul>
<li class=""><a href="/avatica/docs/history.html">History</a></li>
<li class=""><a href="/avatica/docs/api/">API</a></li>
<li class=""><a href="/avatica/docs/testapi/">Test API</a></li>
</ul>
<h4>Avatica Go Client Meta</h4>
<ul>
<li class="current"><a href="/avatica/docs/go_history.html">Go Client History</a></li>
</ul>
</aside>
</div>
<div class="clear"></div>
</div>
</section>
<footer role="contentinfo">
<div id="poweredby">
<a href="http://www.apache.org/">
<span class="sr-only">Apache</span>
<img src="/avatica/img/feather.png" width="190" height="77" alt="Apache Logo"></a>
</div>
<div id="copyright">
<p>The contents of this website are &copy;&nbsp;2019
<a href="https://www.apache.org/">Apache Software Foundation</a>
under the terms of
the <a href="https://www.apache.org/licenses/LICENSE-2.0.html">
Apache&nbsp;License&nbsp;v2</a>. Apache Calcite and its logo are
trademarks of the Apache Software Foundation.</p>
</div>
</footer>
<script>
var anchorForId = function (id) {
var anchor = document.createElement("a");
anchor.className = "header-link";
anchor.href = "#" + id;
anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa fa-link\"></i>";
anchor.title = "Permalink";
return anchor;
};
var linkifyAnchors = function (level, containingElement) {
var headers = containingElement.getElementsByTagName("h" + level);
for (var h = 0; h < headers.length; h++) {
var header = headers[h];
if (typeof header.id !== "undefined" && header.id !== "") {
header.appendChild(anchorForId(header.id));
}
}
};
document.onreadystatechange = function () {
if (this.readyState === "complete") {
var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
if (!contentBlock) {
return;
}
for (var level = 1; level <= 6; level++) {
linkifyAnchors(level, contentBlock);
}
}
};
</script>
</body>
</html>