Skip to content

Latest commit

 

History

History
54 lines (43 loc) · 2.25 KB

File metadata and controls

54 lines (43 loc) · 2.25 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[0.1.1] - 2025-12-28

Changed

  • Default sync interval changed from 10 seconds to 30 seconds

[0.1.0] - 2025-12-27

Added

  • Initial release
  • Native Flagstack API: Flagstack.enabled?, Flagstack.disabled?, Flagstack.enable, Flagstack.disable
  • Actor targeting: Flagstack.enable_actor, Flagstack.disable_actor
  • Group targeting: Flagstack.enable_group, Flagstack.disable_group, Flagstack.register
  • Percentage rollouts: Flagstack.enable_percentage_of_actors, Flagstack.enable_percentage_of_time
  • Feature access: Flagstack[:feature], Flagstack.features
  • Health check method (Flagstack.health_check) to verify connectivity to Flagstack server
  • Graceful shutdown hooks for Rails applications via at_exit
  • Feature flag synchronization from Flagstack to local Flipper adapter
  • Background polling for automatic sync (configurable interval)
  • Telemetry support for feature flag evaluation metrics
  • Support for all Flipper gate types:
    • Boolean (enabled/disabled)
    • Actors (specific users/entities)
    • Groups (named groups)
    • Percentage of actors
    • Percentage of time
  • Rails integration via Railtie
  • Auto-configuration when FLAGSTACK_TOKEN environment variable is set
  • Install generator (rails generate flagstack:install)
  • Fork detection for multi-process servers (Puma, Unicorn)
  • ETag-based caching for efficient sync
  • Offline resilience (reads continue from local adapter if Flagstack is unavailable)

Configuration Options

  • token - API token (required)
  • url - Flagstack server URL (default: https://flagstack.io)
  • sync_interval - Polling interval in seconds (default: 30)
  • sync_method - :poll or :manual (default: :poll)
  • telemetry_enabled - Enable/disable telemetry (default: true)
  • telemetry_interval - Telemetry submission interval (default: 60)
  • local_adapter - Custom Flipper adapter (auto-detected)
  • logger - Custom logger (default: Rails.logger or stdlib Logger)
  • read_timeout, open_timeout, write_timeout - HTTP timeouts