---
title: Ruby-SDK - 3.3.0
slug: feature-experimentation/release-notes/ruby-sdk-3-3-0
docTags: 
createdAt: 2026-07-20T15:44:55.588Z
---

\## 3.3.0
September 26th, 2019

\### New Features:
\- Added non-typed \`get\_feature\_variable\` method (\[#190]\([https://github.com/optimizely/ruby-sdk/pull/190](https://github.com/optimizely/ruby-sdk/pull/190))) as a more idiomatic approach to getting values of feature variables.
\- Typed \`get\_feature\_variable\` methods will still be available for use.
\- Added support for event batching via the event processor.
\- Events generated by methods like \`activate\`, \`track\`, and \`is\_feature\_enabled\` will be held in a queue until the configured batch size is reached, or the configured flush interval has elapsed. Then, they will be batched into a single payload and sent to the event dispatcher.
\- To configure event batching, set the \`batch\_size\` and \`flush\_interval\` properties in the \`OptimizelyFactory\` using \`OptimizelyFactory.max\_event\_batch\_size(batch\_size, logger)\` and \`OptimizelyFactory.max\_event\_flush\_interval(flush\_interval, logger)\` and then create \`OptimizelyFactory.custom\_instance\`.
\- Event batching is enabled by default. \`batch\_size\` defaults to \`10\`. \`flush\_interval\` defaults to \`30000\` milliseconds.
\- Added the \`close\` method representing the process of closing the instance. When \`close\` is called, any events waiting to be sent as part of a batched event request will be immediately batched and sent to the event dispatcher.

\### Deprecated
\- \`EventBuilder\` was deprecated and now we will be using \`UserEventFactory\` and \`EventFactory\` to create logEvents.
\- \`LogEvent\` was deprecated from \`Activate\` and \`Track\` notifications in favor of explicit \`LogEvent\` notification.

[https://github.com/optimizely/ruby-sdk/releases/tag/3.3.0](https://github.com/optimizely/ruby-sdk/releases/tag/3.3.0)
