Skip to content

Commit

Permalink
release(client): v2.0.0 (#124)
Browse files Browse the repository at this point in the history
  • Loading branch information
eeberhard authored Feb 16, 2024
1 parent 069c33f commit a8e0f56
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 5 deletions.
9 changes: 8 additions & 1 deletion python/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,21 @@

Release Versions:

- [2.0.0](#200)
- [1.2.1](#121)
- [1.2.0](#120)
- [1.1.0](#102)
- [1.0.2](#102)
- [1.0.1](#101)
- [1.0.0](#100)

## Upcoming changes
## 2.0.0

This version of the AICA API client is compatible with the new AICA API server version 3.0 by using Socket.IO instead of
raw websockets for run-time data. This change breaks backwards compatibility for API server versions v2.x and below.
It uses Socket.IO instead of raw websockets for run-time data required by the new AICA framework API version 3.0.

### Breaking changes

- refactor!: use Socket.IO client instead of websockets for run-time data (#95)

Expand Down
29 changes: 26 additions & 3 deletions python/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ The client can be used to easily make API calls as shown below:

```python
from aica_api.client import AICA

aica = AICA()

aica.set_application('my_application.yaml')
Expand All @@ -25,6 +26,7 @@ To check the status of component predicates and conditions, the following blocki

```python
from aica_api.client import AICA

aica = AICA()

if aica.wait_for_condition('timer_1_active', timeout=10.0):
Expand All @@ -38,7 +40,28 @@ else:
print('Timed out before predicate was true')
```

## Upcoming features
## Compatability table

The latest version of the AICA API client will generally support the latest API version in the AICA framework. For
older versions of the AICA framework, it may be necessary to install older versions of the client. Use the following
compatability table to determine which client version to use.

| API server version | Matching Python client version |
|--------------------|--------------------------------|
| `v3.x` | `>= v2.0.0` |
| `v2.x` | `v1.2.0` |
| `<= v1.x` | Unsupported |

Recent client versions also support the following functions to check the client version and API compatability.

```python
from aica_api.client import AICA

aica = AICA()

# get the current client version
aica.client_version()

- Better API documentation
- Helper functions to handle API response objects
# check compatability between the client version and API version
aica.check()
```
2 changes: 1 addition & 1 deletion python/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "hatchling.build"

[project]
name = "aica_api"
version = "1.2.1"
version = "2.0.0"
authors = [
{ name="Enrico Eberhard", email="[email protected]" },
]
Expand Down

0 comments on commit a8e0f56

Please sign in to comment.