Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
<!-- This file is generated, please add to it using `knope document-change` in the client-library-templates repo -->
# Changelog

## 9.14.0 (2026-10-26)

### Features

#### Add timeout options to the client builder

`GoCardlessClient.Builder` now has `withConnectTimeout`, `withReadTimeout`, `withWriteTimeout` and `withCallTimeout`, each taking a `java.time.Duration`. Previously the client used OkHttp's defaults (10 seconds for connect, read and write, and no overall call timeout) with no way to change them. Unset options keep those defaults, which are now documented in the README and covered by tests.

```java
GoCardlessClient client = GoCardlessClient.newBuilder(accessToken)
.withConnectTimeout(Duration.ofSeconds(5))
.withCallTimeout(Duration.ofSeconds(30))
.build();
```

A request that times out raises `GoCardlessNetworkException` once the client's automatic retries are exhausted, so the total time before an error can exceed the configured timeout.

## 9.13.0 (2026-10-12)

### Features
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,14 @@ With Maven:
<dependency>
<groupId>com.gocardless</groupId>
<artifactId>gocardless-pro</artifactId>
<version>9.13.0</version>
<version>9.14.0</version>
</dependency>
```

With Gradle:

```
implementation 'com.gocardless:gocardless-pro:9.13.0'
implementation 'com.gocardless:gocardless-pro:9.14.0'
```

## Initializing the client
Expand Down
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ plugins {
sourceCompatibility = 1.8
targetCompatibility = 1.8
group = 'com.gocardless'
version = '9.13.0'
version = '9.14.0'

apply plugin: 'ch.raffael.pegdown-doclet'

Expand Down
4 changes: 2 additions & 2 deletions src/main/java/com/gocardless/http/HttpClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public class HttpClient {
private static final String DISALLOWED_USER_AGENT_CHARACTERS =
"[^\\w!#$%&'\\*\\+\\-\\.\\^`\\|~]";
private static final String USER_AGENT =
String.format("gocardless-pro-java/9.13.0 java/%s %s/%s %s/%s",
String.format("gocardless-pro-java/9.14.0 java/%s %s/%s %s/%s",
cleanUserAgentToken(System.getProperty("java.vm.specification.version")),
cleanUserAgentToken(System.getProperty("java.vm.name")),
cleanUserAgentToken(System.getProperty("java.version")),
Expand All @@ -49,7 +49,7 @@ public class HttpClient {
builder.put("GoCardless-Version", "2015-07-06");
builder.put("Accept", "application/json");
builder.put("GoCardless-Client-Library", "gocardless-pro-java");
builder.put("GoCardless-Client-Version", "9.13.0");
builder.put("GoCardless-Client-Version", "9.14.0");
HEADERS = builder.build();
}
private final OkHttpClient rawClient;
Expand Down
Loading