Skip to content

Move from proxies to well-defined adapters #380

Closed
@grzuy

Description

@grzuy

An attempt to address #316

What?

  • Create a cache store Adapter interface, that defines which are the minimal set of methods that rack-attack needs to function properly.
  • Transform existing proxies into adapters, which implement the defined Adapter interface. E.g. "redis adapter", "memcache adapter".

Why?

End users benefits

  • More clear on what and what not to expect when reading/accessing Rack::Attack.cache.store
  • Less confusion when configuring rack-attack cache store backend
  • Less friction to introduce new cache store backends
    • Well-defined interface eases development and testing of new adapters
    • plus is easier for anyone to code and release new adapter as separate gem if they want, instead of being forced to get approval upstream

Contributors & Maintainers benefits

  • Easier to test
  • Easier to debug cache store issues
  • Easier to implement support for new cache store backends
  • Better maintainability in general

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions