Remote Ip Versions Save

A plug to rewrite the Plug.Conn's remote_ip based on forwarding headers.

v1.1.0

1 year ago
  • Requires Elixir v1.10 or higher
  • Fixes deprecation warnings on Elixir v1.14; see #31

v1.0.0

3 years ago
  • Supports Elixir v1.7 or higher
  • Improved documentation
  • Added Logger metadata; see #22
  • New MFA-style runtime options; see RemoteIp.Options
  • New compile-time debugging is now configurable and disabled by default; see RemoteIp.Debugger
  • New interface for custom parsers; see RemoteIp.Parser
  • Dropped inet_cidr dependency; now :proxies & :clients recognize all valid CIDR strings as well as individual IPs, and it's more performant

v0.2.1

4 years ago

Fixes issue where bad Unicode input in the headers would raise an exception. See #19.

v0.2.0

4 years ago

New functionality! 🎉

  • Add RemoteIp.from/2 so you can retrieve the retrieve the originating client IP from a given list of headers without using a plug. See #9 for background.
  • Teach RemoteIp.init/1 the new :clients option, which lets you override the default loopback/reserved addresses automatically appended to :proxies. See #8, #10, and #11 for background.
  • Add debug logging so that you can troubleshoot issues like #6 and #13 easier.
  • Bump Elixir/Plug dependencies to version ~> 1.5, as earlier versions are no longer officially supported.
  • Miscellaneous refactoring and documentation.

v0.1.5

4 years ago

Fixes mix release errors under Elixir 1.9. See #1, #12, #14, #15, #16, #17.

v0.1.4

6 years ago

Miscellaneous maintenance

v0.1.3

7 years ago

Silence Elixir 1.4 warnings to do with zero-arity function calls that don't use parens.

This is a backwards-compatible change with Elixir 1.3, but stops Elixir 1.4 from badgering you.

Cf. https://github.com/elixir-lang/elixir/issues/3268 and #2.

v0.1.2

7 years ago

v0.1.1 succeeded in only fixing one runtime issue for Erlang deploys (i.e., apps built using something like distillery). Forwarded header parsing would still break because a dependency was not being declared in the application definition.

This release adds all dependencies to the application definition, so Erlang deploys should now work. :+1:

v0.1.1

7 years ago

Add inet_cidr dependency to included_applications, since its absence apparently breaks the Erlang release of your app. :scream:

v0.1.0

7 years ago

Initial release.