vectra-client 0.3.2 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -177
  3. data/lib/vectra/version.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2d3586fe349f6746ba939c2596bf5b1110551a8e7ed16a8dc6581eaa2f91af81
4
- data.tar.gz: 11d141983fba57e97fc0d96792f75e8e2e50eac453671ddb25ce8456002acac2
3
+ metadata.gz: 510bd3a530df754db719892b7157846a72a29998659052fa7fda33b615ddab84
4
+ data.tar.gz: 6e853240a0231e909fda25709b72610f5d294e630f3576a0a52c0949e500e47f
5
5
  SHA512:
6
- metadata.gz: 6396f52e61633d9b2eed5502edbc80f8c001d85aea638afad4ff5c377e7d141ca80dd6198ace23808324411355924b2e653aa661e157fa4ae33c0b905bf31e4d
7
- data.tar.gz: 1581ca62c63111caaf6fc26ced7503a101ceb30c8a0531b3fa454a0ac10376446f5a358dfbb29f045de9ba799114803af02b6a021828debc8df14cab129a5147
6
+ metadata.gz: a1658293c6bd4f62c777b106f40da783b56b68498b4cb73dda4af6df542277c8545105bafe47c6ba1fea106f68e934395df42f0d8453d35a2cdc3d89ef80500d
7
+ data.tar.gz: 9a108eb9be1df21a216824f2e9f0bbe60bb721bf6145cb2b4f772ecb1d7abe7b2e618c2d70d67455ed484ad65c05b20b3ec65485196740a51809fa9dd49a70c3
data/CHANGELOG.md CHANGED
@@ -1,72 +1,9 @@
1
1
  # Changelog
2
2
 
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ## [Unreleased]
9
-
10
- ### Added
11
-
12
- - **Proactive Rate Limiting** (`Vectra::RateLimiter`)
13
- - Token bucket algorithm for smooth rate limiting
14
- - Burst support for handling traffic spikes
15
- - Per-provider rate limiter registry
16
- - `RateLimitedClient` wrapper for automatic throttling
17
- - Prevents API rate limit errors before they occur
18
-
19
- - **Structured JSON Logging** (`Vectra::JsonLogger`)
20
- - Machine-readable JSON log format
21
- - Automatic operation logging via instrumentation
22
- - Custom metadata support
23
- - Integration with standard Ruby Logger via `JsonFormatter`
24
- - Log levels: debug, info, warn, error, fatal
25
-
26
- - **Health Check Functionality** (`Vectra::HealthCheck`)
27
- - Built-in `client.health_check` method
28
- - Connectivity and latency testing
29
- - Optional index statistics inclusion
30
- - Pool health checking for pgvector
31
- - `AggregateHealthCheck` for multi-provider setups
32
- - JSON-serializable results
33
-
34
- - **Error Tracking Integrations**
35
- - Sentry adapter with breadcrumbs, context, and fingerprinting
36
- - Honeybadger adapter with severity tags and configurable notifications
37
- - Automatic error context and grouping
38
-
39
- - **Circuit Breaker Pattern** (`Vectra::CircuitBreaker`)
40
- - Three-state circuit (closed, open, half-open)
41
- - Automatic failover with fallback support
42
- - Per-provider circuit registry
43
- - Thread-safe implementation
44
- - Configurable failure/success thresholds
45
-
46
- - **Credential Rotation** (`Vectra::CredentialRotator`)
47
- - Zero-downtime API key rotation
48
- - Pre-rotation validation
49
- - Rollback support
50
- - Multi-provider rotation manager
51
- - Per-provider rotation tracking
52
-
53
- - **Audit Logging** (`Vectra::AuditLog`)
54
- - Structured audit events for compliance
55
- - Access, authentication, authorization logging
56
- - Configuration change tracking
57
- - Credential rotation audit trail
58
- - Automatic API key sanitization
59
- - Global audit logging support
60
-
61
3
  ## [v0.3.2](https://github.com/stokry/vectra/tree/v0.3.2) (2026-01-08)
62
4
 
63
5
  [Full Changelog](https://github.com/stokry/vectra/compare/v0.3.1...v0.3.2)
64
6
 
65
- ### Fixed
66
-
67
- - Audit log keyword parameter ordering and optional fields now align with linting and usage expectations.
68
- - Credential rotation utilities use symbol procs and string interpolation while keeping the existing `switch_to_secondary` API.
69
-
70
7
  ## [v0.3.1](https://github.com/stokry/vectra/tree/v0.3.1) (2026-01-08)
71
8
 
72
9
  [Full Changelog](https://github.com/stokry/vectra/compare/v0.3.0...v0.3.1)
@@ -75,106 +12,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
75
12
 
76
13
  [Full Changelog](https://github.com/stokry/vectra/compare/v0.2.2...v0.3.0)
77
14
 
78
- ### Added
79
-
80
- - **Async Batch Operations** (`Vectra::Batch`)
81
- - Concurrent batch upsert with configurable worker count
82
- - Automatic chunking of large vector sets
83
- - Async delete and fetch operations
84
- - Error aggregation and partial success handling
85
-
86
- - **Streaming Results** (`Vectra::Streaming`)
87
- - Lazy enumeration for large query result sets
88
- - Memory-efficient processing with automatic pagination
89
- - `query_each` and `query_stream` methods
90
- - Duplicate detection across pages
91
-
92
- - **Caching Layer** (`Vectra::Cache` and `Vectra::CachedClient`)
93
- - In-memory LRU cache with configurable TTL
94
- - Transparent caching for query and fetch operations
95
- - Index-level cache invalidation
96
- - Thread-safe with mutex synchronization
97
-
98
- - **Connection Pool with Warmup** (`Vectra::Pool`)
99
- - Configurable pool size and checkout timeout
100
- - Connection warmup at startup
101
- - Health checking and automatic reconnection
102
- - Pool statistics and monitoring
103
-
104
- - **CI Benchmark Integration**
105
- - Weekly scheduled benchmark runs
106
- - PostgreSQL (pgvector) integration in CI
107
- - Benchmark result artifact storage
108
-
109
- ### Configuration
110
-
111
- New configuration options:
112
- - `cache_enabled` - Enable/disable caching (default: false)
113
- - `cache_ttl` - Cache time-to-live in seconds (default: 300)
114
- - `cache_max_size` - Maximum cache entries (default: 1000)
115
- - `async_concurrency` - Concurrent workers for batch ops (default: 4)
116
-
117
- ### Dependencies
118
-
119
- - Added `concurrent-ruby ~> 1.2` for thread-safe operations
120
-
121
15
  ## [v0.2.2](https://github.com/stokry/vectra/tree/v0.2.2) (2026-01-08)
122
16
 
123
17
  [Full Changelog](https://github.com/stokry/vectra/compare/v0.2.1...v0.2.2)
124
18
 
125
- ## [v0.2.1](https://github.com/stokry/vectra/tree/v0.2.1) (2026-01-08)
126
19
 
127
20
  [Full Changelog](https://github.com/stokry/vectra/compare/v0.2.0...v0.2.1)
128
21
 
129
- ### Added
130
-
131
- - **Qdrant Provider** - Full Qdrant vector database support:
132
- - Vector upsert, query, fetch, update, delete operations
133
- - Collection management (create, list, describe, delete)
134
- - Multiple similarity metrics: cosine, euclidean, dot product
135
- - Namespace support via payload filtering
136
- - Advanced metadata filtering with Qdrant operators ($eq, $ne, $gt, $gte, $lt, $lte, $in, $nin)
137
- - Automatic point ID hashing for string IDs
138
- - Support for both local and cloud Qdrant instances
139
- - Optional API key authentication for local deployments
140
-
141
- ### Improved
142
-
143
- - Enhanced error handling with `Faraday::RetriableResponse` support
144
- - Configuration now allows optional API key for Qdrant and pgvector (local instances)
145
- - Better retry middleware integration across all providers
146
-
147
- ### Provider Support
148
-
149
- - ✅ Pinecone - Fully implemented
150
- - ✅ pgvector (PostgreSQL) - Fully implemented
151
- - ✅ Qdrant - Fully implemented
152
- - 🚧 Weaviate - Stub implementation (planned for v0.4.0)
153
-
154
22
  ## [v0.2.0](https://github.com/stokry/vectra/tree/v0.2.0) (2026-01-08)
155
23
 
156
24
  [Full Changelog](https://github.com/stokry/vectra/compare/v0.1.3...v0.2.0)
157
25
 
158
- ### Added
26
+ ## [v0.3.3](https://github.com/stokry/vectra/tree/v0.3.3) (2026-01-09)
159
27
 
160
- - **Instrumentation & Monitoring** - Track all vector operations with New Relic, Datadog, or custom handlers
161
- - **ActiveRecord Integration** - `has_vector` DSL for seamless Rails model integration with automatic indexing
162
- - **Rails Generator** - `rails generate vectra:install` for quick setup
163
- - **Automatic Retry Logic** - Exponential backoff with jitter for transient database errors
164
- - **Performance Benchmarks** - Measure batch operations and connection pooling performance
165
- - **Comprehensive Documentation** - USAGE_EXAMPLES.md, IMPLEMENTATION_GUIDE.md with 10+ real-world examples
28
+ [Full Changelog](https://github.com/stokry/vectra/compare/v0.3.2...v0.3.3)
166
29
 
167
- ### Improved
168
-
169
- - All Client methods now instrumented (upsert, query, fetch, update, delete)
170
- - pgvector Connection module includes retry logic with smart error detection
171
- - Configuration expanded with instrumentation, pool_size, batch_size, max_retries options
172
-
173
- ### Documentation
30
+ ### Changed
174
31
 
175
- - Added USAGE_EXAMPLES.md with e-commerce search, RAG chatbot, duplicate detection examples
176
- - Added IMPLEMENTATION_GUIDE.md for developers implementing new features
177
- - Added NEW_FEATURES_v0.2.0.md with migration guide
32
+ - Version bump and minor maintenance release.
178
33
 
179
34
  ## [v0.1.3](https://github.com/stokry/vectra/tree/v0.1.3) (2026-01-07)
180
35
 
@@ -184,33 +39,6 @@ New configuration options:
184
39
 
185
40
  [Full Changelog](https://github.com/stokry/vectra/compare/0ab2ea7b42d7fbf0b540b24889cc2b24254fef2e...v0.1.1)
186
41
 
187
- ### Added
188
-
189
- - **pgvector provider** - Full PostgreSQL with pgvector extension support:
190
- - Vector upsert, query, fetch, update, delete operations
191
- - Index (table) management with automatic schema creation
192
- - Multiple similarity metrics: cosine, euclidean, inner product
193
- - Namespace support via namespace column
194
- - Metadata filtering with JSONB
195
- - IVFFlat index creation for fast similarity search
196
- - `Vectra.pgvector` convenience method for creating pgvector clients
197
- - Comprehensive unit and integration tests for pgvector provider
198
-
199
- ### Changed
200
-
201
- - Updated gemspec description to include pgvector
202
- - Added `pg` gem as development dependency
203
-
204
- ## Planned
205
-
206
- ### [0.4.0]
207
-
208
- - Weaviate provider implementation
209
- - Additional similarity metrics
210
- - Vector quantization support
211
42
 
212
- ### [1.0.0]
213
43
 
214
- - Background job integration (Sidekiq, GoodJob)
215
- - Production-ready with full documentation
216
- - Performance monitoring dashboard
44
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Vectra
4
- VERSION = "0.3.2"
4
+ VERSION = "0.3.3"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vectra-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mijo Kristo