Skip to content

Commit

Permalink
chore: prepare 0.6.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
TheMrMilchmann committed Oct 25, 2024
1 parent a37cfd5 commit 8cf7879
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 56 deletions.
2 changes: 1 addition & 1 deletion docs/changelog/0.6.0.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
### 0.6.0

_Not Released Yet_
_Released 2024 Oct 25_

#### Fixes

Expand Down
4 changes: 2 additions & 2 deletions docs/changelog/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

### Version History

* ????-??-?? [0.6.0](0.6.0.md) (TBD; work in progress)
* 2024-07-22 [0.5.0](0.5.0.md) (latest)
* 2024-10-25 [0.6.0](0.6.0.md) (latest)
* 2024-07-22 [0.5.0](0.5.0.md)
* 2022-07-27 [0.4.0](0.4.0.md)
* 2021-07-14 [0.3.0](0.3.0.md)
* 2021-01-25 [0.2.0](0.2.0.md)
Expand Down
16 changes: 16 additions & 0 deletions docs/changelog/full.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
### 0.6.0

_Released 2024 Oct 25_

#### Fixes

- Fixed a critical bug in the path parameter substitution logic that caused
requests with path parameters to target invalid endpoints.

#### Breaking Changes

- `api-client-ktor` now requires Ktor 3.


---

### 0.5.0

_Released 2024 Jul 22_
Expand Down
59 changes: 6 additions & 53 deletions docs/changelog/latest.md
Original file line number Diff line number Diff line change
@@ -1,59 +1,12 @@
### 0.5.0
### 0.6.0

_Released 2024 Jul 22_
_Released 2024 Oct 25_

#### Overview
#### Fixes

This release is a long overdue major update to the project. The entire API
surface has been touched up and improved to provide a better developer
experience.

The most significant change is the decoupling of request creation from request
execution:

```kotlin
// Old
suspend fun main() {
val client = GW2APIClient(...)
val requestBuilder = client.gw2v2Build()

val request = coroutineScope { requestBuilder.execute(this) }
val response = request.get()

val gw2v2Build = response.data.getOrNull() ?: error("Could not decode request")

println("Build ID: ${gw2v2Build.id}")
}
```

Whereas the old way to create request contained a lot of ceremony to support
asynchronous and synchronous execution at the same time, the new way is much
more straightforward:

```kotlin
// New
suspend fun main() {
val client = Gw2ApiClient()
val gw2v2Build = client.executeAsync(gw2v2Build()).dataOrNull ?: error("Failed to fetch build ID.")

println("Build ID: {$gw2v2Build.id}")
}
```

There is no full migration guide available. Please refer to the updated
documentation for more information.

#### Improvements

- Added an explicit Java module descriptor for `api-types`.
- Added a simple API to allow blocking execution of requests on the JVM.
- This is especially useful in combination with virtual threads.
- Replaced placeholder exception that is thrown when an unknown type is
encountered with a `SerializationException`.
- Migrated to schema version `2022-03-23T19:00:00.000Z`.
- Fixed a critical bug in the path parameter substitution logic that caused
requests with path parameters to target invalid endpoints.

#### Breaking Changes

- Migrated to schema version `2022-03-23T19:00:00.000Z`.
- The entire API client has been rewritten to decouple request creation from
execution. Please see the updated documentation for more information.
- `api-client-ktor` now requires Ktor 3.

0 comments on commit 8cf7879

Please sign in to comment.