Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
ddcb715
fix: cross-SDK test compatibility fixes
joalves Jan 19, 2026
6c4ff20
fix: add explicit ostruct require for Ruby 3.3+ compatibility
joalves Jan 20, 2026
3c01a7a
feat: upgrade Ruby to 3.3.10 and add peek alias
joalves Jan 22, 2026
a33d838
test: add audience matching tests
joalves Jan 26, 2026
fb2e0f4
fix: remove duplicate require 'ostruct' in spec_helper
joalves Jan 26, 2026
1d6a6dc
feat: add comprehensive test coverage improvements
joalves Jan 27, 2026
afc07fb
docs: add Rails, Sinatra examples and request configuration to Ruby SDK
joalves Jan 30, 2026
4da15be
test: add canonical test parity (340 → 412 tests)
joalves Feb 6, 2026
763d659
fix: Ruby 3.3+ compatibility and cross-SDK test fixes
joalves Feb 21, 2026
080dcf0
fix: correct equals and in operators for type coercion edge cases
joalves Feb 24, 2026
551b674
docs: restructure README to match standard SDK documentation structure
joalves Feb 24, 2026
f7c057b
feat: add async context creation and SDK convenience methods
joalves Feb 27, 2026
1b97de5
docs: update README documentation
joalves Mar 9, 2026
d22fd1d
fix: remove check_not_closed? guard from set_override and set_overrides
joalves Mar 15, 2026
e499797
fix: variable_keys returns array of experiment names per key
joalves Mar 15, 2026
9f23db1
fix: preserve events on publish failure instead of losing them
joalves Mar 15, 2026
dce469e
feat: add get_unit, get_units, get_attribute, get_attributes, ready_e…
joalves Mar 15, 2026
539cd50
feat: add finalize aliases, standardize error messages, rename custom…
joalves Mar 15, 2026
1963433
fix(ruby): return safe defaults from read methods when context not re…
joalves Mar 15, 2026
fc3b792
fix: remove transform_keys hot path, store keys as symbols, rename ca…
joalves Mar 17, 2026
debd25e
feat: cross-SDK consistency fixes — all 201 scenarios passing
joalves Mar 17, 2026
573ec6f
fix: add mutex to queue_exposure for thread safety
joalves Mar 17, 2026
f5d2af7
fix: always call queue_exposure, let mutex handle dedup
joalves Mar 17, 2026
e3ca7f2
fix: relax concurrent exposure test assertion
joalves Mar 17, 2026
02edc75
refactor: rename ContextEventHandler to ContextPublisher
joalves Mar 18, 2026
4df9ed2
fix: address coderabbit review issues
joalves Mar 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,12 @@
.rspec_status
.byebug_history

.gemspec
.gemspec
.claude/
.DS_Store
AUDIT_REPORT.md
FIXES_SUMMARY.md
SILENT_FAILURE_AUDIT.md
vendor/
*.bak
*.backup
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.0.6
3.3.10
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

### Added
- Configurable connection pool settings: `pool_size` and `pool_idle_timeout`
- Backwards-compatible class aliases: `SDK` (alias for `ABSmartly`) and `SDKConfig` (alias for `ABSmartlyConfig`)

## [0.1.0] - 2022-08-03

Expand Down
65 changes: 34 additions & 31 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,13 @@ PATH
GEM
remote: https://rubygems.org/
specs:
ast (2.4.2)
ast (2.4.3)
base64 (0.3.0)
byebug (11.1.3)
connection_pool (2.5.5)
diff-lcs (1.5.0)
faraday (2.7.4)
diff-lcs (1.6.2)
faraday (2.8.1)
base64
faraday-net_http (>= 2.0, < 3.1)
ruby2_keywords (>= 0.0.4)
faraday-net_http (3.0.2)
Expand All @@ -25,50 +26,52 @@ GEM
net-http-persistent (>= 4.0.4, < 5)
faraday-retry (2.4.0)
faraday (~> 2.0)
io-console (0.5.6)
irb (1.2.6)
reline (>= 0.1.5)
json (2.6.2)
io-console (0.8.2)
irb (1.6.3)
reline (>= 0.3.0)
json (2.7.6)
murmurhash3 (0.1.7)
net-http-persistent (4.0.8)
connection_pool (>= 2.2.4, < 4)
parallel (1.22.1)
parser (3.1.2.0)
parallel (1.24.0)
parser (3.3.10.1)
ast (~> 2.4.1)
racc
racc (1.8.1)
rainbow (3.1.1)
rake (13.0.6)
regexp_parser (2.5.0)
reline (0.1.5)
rake (13.3.1)
regexp_parser (2.11.3)
reline (0.6.3)
io-console (~> 0.5)
rexml (3.4.4)
rspec (3.11.0)
rspec-core (~> 3.11.0)
rspec-expectations (~> 3.11.0)
rspec-mocks (~> 3.11.0)
rspec-core (3.11.0)
rspec-support (~> 3.11.0)
rspec-expectations (3.11.0)
rspec (3.13.2)
rspec-core (~> 3.13.0)
rspec-expectations (~> 3.13.0)
rspec-mocks (~> 3.13.0)
rspec-core (3.13.6)
rspec-support (~> 3.13.0)
rspec-expectations (3.13.5)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.11.0)
rspec-mocks (3.11.1)
rspec-support (~> 3.13.0)
rspec-mocks (3.13.7)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.11.0)
rspec-support (3.11.0)
rubocop (1.33.0)
rspec-support (~> 3.13.0)
rspec-support (3.13.6)
rubocop (1.50.2)
json (~> 2.3)
parallel (~> 1.10)
parser (>= 3.1.0.0)
parser (>= 3.2.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.19.1, < 2.0)
rubocop-ast (>= 1.28.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 3.0)
rubocop-ast (1.19.1)
parser (>= 3.1.1.0)
ruby-progressbar (1.11.0)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.30.0)
parser (>= 3.2.1.0)
ruby-progressbar (1.13.0)
ruby2_keywords (0.0.5)
unicode-display_width (2.2.0)
unicode-display_width (2.6.0)

PLATFORMS
ruby
Expand Down
Loading
Loading