Changelog

Unreleased

[4.15.1]

to avoid compilation issues in apps that depend on Surgex.

[4.15.0]

  • Discard unexpected parameters instead of returning 400 Bad Request

4.12.0 - 2022-09-05

4.11.0

4.10.0

  • Extended compatibility with Jabbax to 1.0

4.9.0

4.8.0

  • New Surgex.DateTime module with date_and_offset_to_datetime/3 helper for creating UTC or time-zone date time

4.7.0

  • The Surgex.Parser.RequiredParser accepts an empty string as valid input

4.6.1

  • Parsers can now process any value without throwing exception on unknown value type

4.6.0

  • Updated Surgex.Parser.ResourceArrayParser to support invalid parameters

4.5.0

  • Extended parsers to match empty string values as nil

4.4.0

  • Extended parsing of ResourceID ("" -> required)

4.3.0

  • Bump minor version

4.2.1

  • Extended parsing of boolean ("true" -> true, "false" -> false) and integers ("" -> nil) values

4.2.0

  • Added support for translating errors in nested changeset to JSON API responses

[4.0.0]

  • Removed support for AppSignal

[3.2.8]

3.2.7

  • Simplified email regex to fix catastrophic backtracing error when providing longer addresses

3.2.6

3.2.5

  • Fixed typespec error in Surgex.Parser.BooleanParser
  • Added dialyzer --halt-exit-status to mix check

3.2.4

3.2.3

3.2.2

  • Fixed error in Surgex.Appsignal.EctoLogger for when event is missing stage times

3.2.1

  • Fixed compilation of Surgex.Appsignal.EctoLogger
  • Added :all value for :query_stages option in Surgex.Appsignal.EctoLogger.handle_event/4

3.2.0

  • Added Surgex.Appsignal.EctoLogger

3.1.0

3.0.0

  • Extended Surgex.Parser.IdListParser with support for list type
  • Removed Surgex.Config
  • Removed Surgex.DeviseSession
  • Removed Surgex.PhoneNumber
  • Removed Surgex.RPC
  • Removed Surgex.Scout
  • Updated some deps

2.24.1

2.23.0

2.22.0

2.21.0

2.20.1

2.20.0

2.19.0

2.18.0

  • Added Surgex.Parser.ListParser

2.17.0

2.16.0

  • Extended Surgex.Parser.FloatParser with support for integers as input

2.15.0

  • Extended Surgex.Parser.FloatParser with support for floats as input
  • Extended Surgex.Parser.BooleanParser with support for booleans as input

2.14.0

  • Extended Surgex.Parser.FloatParser with min and max options

2.13.0

  • Added Surgex.Parser.ResourceParser

2.12.1

  • Fixed Surgex.RPC.Client to support no services in the client
  • Refactored Surgex.RPC for proper payload - transport separation

2.12.0

  • Added Surgex.Parser.SlugParser
  • Added Surgex.Parser.SlugOrIdParser

2.11.0

  • Added support for configuring Surgex.RPC.HTTPAdapter via Mix config, powered by Surgex.Config
  • Added support for passing service name atom to Surgex.RPC.Client.proto/1
  • Added support for passing arbitrary opts to Protobuf via Surgex.RPC.Client.service/1

2.10.0

  • Added Surgex.RPC

2.9.0

2.8.0

  • Added Surgex.Config.Patch

2.7.0

  • Added Surgex.Scout to support setting Scout Agent Key with {:system, "SCOUT_API_KEY"}

2.6.0

2.5.1

  • Fixed Surgex.DeviseSession to support Plug.Conn with {:system, "SECRET_KEY_BASE"}

2.5.0

2.3.0

2.2.1

  • Fixed Surgex.Parser to return the same error reason multiple times

2.2.0

2.1.1

2.1.0

2.0.0

1.6.0

  • Added Surgex.Config.Session

1.5.2

  • Support integer input in Surgex.Parser.IntegerParser

1.5.1

1.5.0

1.4.0

1.2.1

  • Fix bug in Sentry docs

1.2.0

1.1.0

  • Added Surgex.PhoneNumber

1.0.0

  • Extended Surgex.Config to support env var lists
  • Changed Surgex.Config to take opts via keyword list
  • Added Surgex.Parser support for nil input
  • Extended Surgex.Parser.IntegerParser with min and max opts
  • Changed Surgex.Sentry to run as an OTP app
  • Extended Surgex.Sentry to take release and environment from Mix
  • Completed Surgex.Guide