Releases: cohere-ai/cohere-compass-sdk
Releases · cohere-ai/cohere-compass-sdk
Release v2.0.1
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
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
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
chore: Fix url for upload releases (#150)
Release v1.7.1
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
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
feat: Adding asset id to returned chunk (#143)
Release v1.5.0
feat: Adding new upload api (#139)
Release v1.4.2
build: Updating version for release (#138)
Release v1.4.1
chore: Update version (#134) Updating version to make a release