Skip to content

Releases: cohere-ai/cohere-compass-sdk

Release v2.0.1

09 Oct 20:07
deeafb4

Choose a tag to compare

chore: Increment version to trigger release and publish (#158)

<!-- begin-generated-description -->

This PR updates the version of the Cohere Compass SDK from 2.0.0 to
2.0.1 in the pyproject.toml and poetry.lock files.

- pyproject.toml: The version is updated from 2.0.0 to 2.0.1.
- poetry.lock: The version is updated from 2.0.0 to 2.0.1.

<!-- end-generated-description -->

Release v2.0.0

06 Oct 14:38
9eca2f9

Choose a tag to compare

feat: Cohere Compass SDK v2.0.0 - Major Release (#149)

### Overview
This PR introduces v2.0.0 of the Cohere Compass SDK, a major release
with significant architectural improvements, new features, and breaking
changes. This branch consolidates all V2 development work into a clean
commit against `main` to avoid merge conflicts.

### 🚀 Major Features

#### 1. **Async/Await Support**
- New `CompassAsyncClient` and `CompassParserAsyncClient` for native
async operations
- Enables better performance for I/O-bound operations
- Supports concurrent request handling with proper async patterns

#### 2. **HTTP Client Migration**
- Migrated from `requests` to `httpx` library
- Benefits: Native async support, HTTP/2 compatibility, better
connection pooling
- Unified sync/async interface

#### 3. **Improved Error Handling**
- Standardized error reporting across the entire SDK
- Better error messages with more context
- Fixed inconsistent behavior between exceptions and error responses

### 🔧 Improvements
- Simplified API URL handling (removed `include_api_in_url` flag)
- General code refactoring and reduced duplication
- Improved type hints using Python 3.11+ native features

### 💥 Breaking Changes
- **Python Version**: Now requires Python 3.11+ (previously 3.9+)
- **Dependencies**:
  - Replaced `requests` with `httpx`
  - Removed `typing-extensions` (using native Python 3.11+ features)
  - Test mocking changed from `requests-mock` to `respx`

### 🧪 Testing
- Updated test suite to use `respx` for httpx mocking
- Added async test support with `pytest-asyncio`
- Maintained comprehensive test coverage

### 📝 Migration Notes
We are planning to write a more detailed Migration Guide for users
upgrading from v1.x to v2.0, but for now the summary is:

1. Ensure Python 3.11+ is installed
2. Update dependencies. If you are using `poetry` or `uv`, you can do a
`poetry|uv sync`
3. Review and update error handling code. Previously, some methods
returned a response with error, and others threw exception. Now, all
methods throw exceptions in case of errors.
4. Some methods might have a slightly different signature. You need to
check the new signature and adjust your call accordingly. Most of the
times, the changes are minimal as the backend of Compass didn't change,
hence the real parameters used in v1.x should still work.
5. Consider adopting async clients for improved performance

Release v1.9.0

26 Sep 16:58
90465c3

Choose a tag to compare

feat: Increase max accepted file size to 500mb (#155)

<!-- begin-generated-description -->

This PR updates the file size limit in the
`cohere_compass/clients/parser.py` file.

- `DEFAULT_MAX_ACCEPTED_FILE_SIZE_BYTES` is increased from 50,000,000 to
500,000,000.
- `max_size_mb` is calculated using integer division (`//`) instead of
float division (`/`).
- The error message is updated to use uppercase "MB" instead of
lowercase "mb".

<!-- end-generated-description -->

Release v1.8.0

15 Sep 19:25
3c02df5

Choose a tag to compare

chore: Fix url for upload releases (#150)

Release v1.7.1

03 Sep 08:26
6991b88

Choose a tag to compare

fix: Adding error log when parser fails on doc level (#147)

Previously, if a document failed during parsing, the error was silently
ignored and only the successfully parsed documents were returned.
This PR introduces error logging so that any document-specific parsing
failures are now recorded, making issues more visible while continuing
to return the successfully parsed documents.

Release v1.7.0

22 Aug 19:28
beabfaa

Choose a tag to compare

Added a timeout for the parser client, process_file_timeout_seconds. Optionally, on calls to process_file, timeout for the HTTP call can be specified for the request.Session

Release v1.6.0

20 Aug 07:33
9124ee4

Choose a tag to compare

feat: Adding asset id to returned chunk (#143)

Release v1.5.0

18 Aug 13:12
97eaed9

Choose a tag to compare

feat: Adding new upload api (#139)

Release v1.4.2

25 Jul 15:21
63e21ac

Choose a tag to compare

build: Updating version for release (#138)

Release v1.4.1

25 Jun 10:58
1a22b81

Choose a tag to compare

chore: Update version (#134)

Updating version to make a release