ConfigCat SDK for Ruby. ConfigCat is a hosted feature flag service: https://configcat.com. Manage feature toggles across frontend, backend, mobile, desktop apps. Alternative to LaunchDarkly. Management app + feature flag SDKs.
MIT License
Published by kp-cat 8 months ago
New features and improvements:
Breaking changes:
custom
dictionary also allows attribute values other than string
values.config-json convert v5-to-v6
command of the ConfigCat CLI tool.matched_evaluation_percentage_rule
property to matched_targeting_rule
and the matched_evaluation_rule`` property to
matched_percentage_optionin
EvaluationDetails`.ConfigCatClientException
when the SDK key is passed to ConfigCatClient.get
in an invalid format (unless the client is set up to use local-only flag override behaviour).Published by kp-cat over 1 year ago
Please note that this version has several breaking changes, so you may need to adjust your code when upgrading, especially if you're using deprecated APIs or a custom cache implementation. You can find the detailed list of breaking changes below.
ConfigCat.create_client
, ConfigCat.create_client_with_auto_poll
, ConfigCat.create_client_with_lazy_load
, ConfigCat.create_client_with_manual_poll
. Create the ConfigCat Client as a Singleton object with ConfigCat.get()
instead.Published by adams85 over 1 year ago
New features and improvements:
Bug fixes:
get_value_details()
in case config JSON is not present (https://github.com/configcat/ruby-sdk/pull/27)Published by kp-cat over 1 year ago
set_default_user(user)
/ clear_default_user
methods to set / remove a default user object used when there's no user passed to get_value
/ get_value_details
/ get_all_values
/ get_all_variation_ids
methods.set_offline
/ set_online
methods to indicate whether the SDK is allowed to make HTTP calls or not. In 'offline' mode the SDK works from the cache only.on_client_ready
/ on_config_changed
/ on_flag_evaluated
/ on_error
hooks. Subscription is possible on client initialization options and with the hooks
property on ConfigCatClient
.get_value_details
method to retrieve evaluation details along with the feature flag / setting value. It returns the same details that is passed to on_flag_evaluated
on each evaluation.get_all_value_details
method to retrieve evaluation details along with all feature flags/ setting values.ConfigCatOptions
object that can be passed to the new configcatclient.get
factory method. The create_client*
methods are deprecated.create_client*
methods the following params changed:
config_cache_class
to config_cache
: A subclass of ConfigCache
object is expected here (not a class).connect_timeout
to connect_timeout_seconds
(to indicate the unit of measure).read_timeout
to read_timeout_seconds
(to indicate the unit of measure).flag_overrides
expects a new FlagOverrides
object (not an OverrideDataSource object).ConfigCatClient
's stop
method is renamed to close
.ConfigCatClient
can be explicitly closed via client.close
and configcatclient.close_all
methods.force_refresh
now returns with a result object that indicates whether the refresh succeeded or not.lazy_load
and interval of auto_poll
is compared against a cached fetch_time
, which allows the SDK not necessarily download a new config.json
at each application restart.403
response status and updates cached fetch_time
in case of 304
403
and 404
response status.Published by kp-cat over 2 years ago
Published by kp-cat over 2 years ago
Published by kp-cat over 2 years ago
open_timeout
and read_timeout
initialization parameters were added to be able to configure HTTP timeout parameters.get_all_values()
function was added that evaluates all flags & settings in a dictionary.flag_overrides
parameter to support the reading of flags & settings from a file or a hash.Published by kp-cat about 4 years ago
Addressing global data handling and processing trends via Data Governance feature. Customers can control the geographic location where their config JSONs get published to. See the docs.
We are introducing a new DataGovernance initialization parameter. Set this parameter to be in sync with the Data Governance preference on the Dashboard.
Breaking change:
Published by kp-cat about 4 years ago
get_variation_id()
get_all_variation_ids()
get_key_and_value()
Published by configcat over 4 years ago
Breaking change: Renamed API Key
to SDK Key
.
Published by configcat over 4 years ago
Supporting ETag in config fetcher. The ETag HTTP response header is an identifier for a specific version of a resource. It lets caches be more efficient and save bandwidth, as a web server does not need to resend a full response if the content has not changed.
Published by configcat over 4 years ago
Moving from config_v3.json to config_v4.json.
Published by configcat over 4 years ago
Supporting sensitive comparators in targeting rules.
Published by configcat almost 5 years ago
Logging fix
Published by configcat almost 5 years ago
Logging fix
Published by configcat almost 5 years ago
Gem description update
Published by configcat almost 5 years ago
ConfigCat Ruby SDK v1.2.0
Semantic version operators
Number operators
Logging improvements
Proxy support
Published by configcat about 5 years ago