diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 68f38f15..bb1436e4 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -32,7 +32,7 @@ jobs:
- name: Test pkg tests
run: go run github.com/onsi/ginkgo/v2/ginkgo -cover -race -r -keep-going -succinct -randomize-suites pkg
- name: Build Benchmark tool
- run: cd tools/benchmark | go build -o benchmark .
+ run: cd tools/benchmark | go build -tags as_proxy -o benchmark .
- name: Build asinfo tool
run: cd tools/asinfo | go build -o asinfo .
- name: Build cli tool
@@ -43,6 +43,8 @@ jobs:
run: go run github.com/onsi/ginkgo/v2/ginkgo build -tags="as_performance" .
- name: Build for Google App Engine (unsafe package removed)
run: go run github.com/onsi/ginkgo/v2/ginkgo build -tags="app_engine" .
+ - name: Build for DBAAS (proxy mode)
+ run: go run github.com/onsi/ginkgo/v2/ginkgo build -tags="as_proxy" .
- name: Run the tests
run: go run github.com/onsi/ginkgo/v2/ginkgo -coverprofile=./cover_native.out -covermode=atomic -coverpkg=./... -race -keep-going -succinct -randomize-suites -skip="HyperLogLog"
- name: Combine Cover Profiles
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ec7b7ebe..69dc59e1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,22 +1,37 @@
# Change History
-## June 27 2024: v7.5.0
+## July 19 2024: v7.6.0
+
+ Minor fix release.
+
+- **Improvements**
+ - [CLIENT-3045] Move proxy client build behind a build flag.
+ This removes the GRPC compilation and potential namespace conflict from the default build and moves it behind the compiler build flag "as_proxy".
+
+- **Fixes**
+ - [CLIENT-3022] `Close()` throws a `nil` pointer error on `ProxyClient` without Authentication.
+ - [CLIENT-3044] Circular reference in between `Client`<->`Cluster` causes memory leak when the client is not closed manually.
+ - [CLIENT-3046] Wrong return type in Single Key Batch Operations with Multiple Ops per Bin.
+ - [CLIENT-3047] Fix pointer value assignment in baseMultiCommand.parseKey (#443).
+ - [CLIENT-3048] Use precomputed ops variable in batchIndexCommandGet.executeSingle (#442).
+ - [CLIENT-3049] Use a specialized pool for grpc conns to prevent premature reaping.
+
+## July 1 2024: v7.5.0
This a minor feature and fix release.
- **New Features**
- - [CLIENT-2968] Support new v71 proxy features:
- - Info command.
+ - [CLIENT-2968] Support new v7.1 proxy server features:
+ - `Info` command.
- `QueryPolicy.QueryDuration`
- [CLIENT-3012] Support new server 7.1 info command error response strings.
- **Improvements**
- [CLIENT-2997] Scans should work in a mixed cluster of v5.7 and v6.4 server nodes.
- - [CLIENT-3012] Support new server 7.1 info command error response strings.
- - [CLIENT-3020] Change ReadModeSC doc from server to client perspective.
+ - [CLIENT-3020] Change `ReadModeSC` doc from server to client perspective.
- **Fixes**
- - [CLIENT-3019] Prevent Goroutine leak in AuthInterceptor for the Proxy Client.
+ - [CLIENT-3019] Prevent Goroutine leak in `AuthInterceptor` for the Proxy Client.
## May 20 2024: v7.4.0
diff --git a/README.md b/README.md
index 654b1075..c6e6de09 100644
--- a/README.md
+++ b/README.md
@@ -2,10 +2,11 @@
[![Aerospike Client Go](https://goreportcard.com/badge/github.com/aerospike/aerospike-client-go/v7)](https://goreportcard.com/report/github.com/aerospike/aerospike-client-go/v7)
[![Godoc](https://godoc.org/github.com/aerospike/aerospike-client-go/v7?status.svg)](https://pkg.go.dev/github.com/aerospike/aerospike-client-go/v7)
+[![Tests](https://github.com/aerospike/aerospike-client-go/actions/workflows/build.yml/badge.svg?branch=v7&event=push)](github.com/aerospike/aerospike-client-go/actions)
An Aerospike library for Go.
-This library is compatible with Go 1.21+ and supports the following operating systems: Linux, Mac OS X (Windows builds are possible, but untested).
+This library is compatible with Go 1.20+ and supports the following operating systems: Linux, Mac OS X (Windows builds are possible, but untested).
Up-to-date documentation is available in the [![Godoc](https://godoc.org/github.com/aerospike/aerospike-client-go/v7?status.svg)](https://pkg.go.dev/github.com/aerospike/aerospike-client-go/v7).
@@ -26,6 +27,7 @@ Please refer to [`CHANGELOG.md`](CHANGELOG.md) for release notes, or if you enco
- [API Documentation](#api-documentation)
- [Google App Engine](#google-app-engine)
- [Reflection, and Object API](#reflection-and-object-api)
+ - [Proxy Client / DBAAS](#proxy-client--dbaas)
- [License](#license)
## Usage
@@ -87,7 +89,7 @@ Details about the API are available in the [`docs`](docs) directory.
## Prerequisites
-[Go](http://golang.org) version v1.21+ is required.
+[Go](http://golang.org) version v1.20+ is required.
To install the latest stable version of Go, visit
[http://golang.org/dl/](http://golang.org/dl/)
@@ -115,7 +117,7 @@ Using [gopkg.in](https://gopkg.in/) is also supported: `go get -u gopkg.in/aeros
- To run a go program directly: ```go run ```
- to build: ```go build -o