View Source 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

Unreleased

Compare with 0.6.1

0-6-1-2023-07-07

[0.6.1] - 2023-07-07

Compare with 0.6.0

added

Added

  • support for Elixir v1.15 and Erlang/OTP 26.

fixed

Fixed

0-6-0-2023-06-22

[0.6.0] - 2023-06-22

Compare with 0.5.1

added-1

Added

  • support for cal::date_duration EdgeDB type via EdgeDB.DateDuration structure.
  • support for EdgeDB Cloud.
  • support for tuples and named tuples as query arguments.
  • support for EdgeDB 3.0.
  • support for ext::pgvector::vector type.

changed

Changed

fixed-1

Fixed

  • crash after updating db_connection to 2.5.
  • decoding a single propery for EdgeDB.Object that equals to an empty set.
  • not catching an EdgeDB.Error exception during parameters encoding, which caused throwing an exception for non-! functions.
  • silent error for calling EdgeDB API with wrong module names.

removed

Removed

  • EdgeDB.subtransaction/2, EdgeDB.subtransaction!/2 functions and other mentions of subtransactions support in the client.
  • support for custom pool configuration.
  • :raw option from EdgeDB.query* functions as well as access to EdgeDB.Query and EdgeDB.Result.
  • API for constructing an EdgeDB.Error.

0-5-1-2022-08-25

[0.5.1] - 2022-08-25

Compare with 0.5.0

removed-1

Removed

  • unintentional ping log for the connection.

0-5-0-2022-08-20

[0.5.0] - 2022-08-20

Compare with 0.4.0

added-2

Added

  • EdgeDB.Client module that is acceptable by all EdgeDB API.
  • :max_concurrency option to start pool to control max connections count in EdgeDB.Pool.

changed-1

Changed

fixed-2

Fixed

  • concurrent transactions when client was unintentionally marked as borrowed for transaction instead of connection.

removed-2

Removed

0-4-0-2022-08-04

[0.4.0] - 2022-08-04

Compare with 0.3.0

added-3

Added

  • support for EdgeDB 2.0 with new binary protocol.
  • support for EdgeQL state via EdgeDB.State.
  • new EdgeDB.Range type to represent ranges from EdgeDB 2.0.
  • support for multiple EdgeQL statements execution via EdgeDB.execute/4 and EdgeDB.execute!/4.

changed-2

Changed

  • io_format option to output_format.

fixed-3

Fixed

  • the ability to pass maps or keyword lists in a query that requires positional arguments.

0-3-0-2022-05-29

[0.3.0] - 2022-05-29

Compare with 0.2.1

added-4

Added

removed-3

Removed

  • legacy arguments encoding.

changed-3

Changed

  • EdgeQL queries to be lowercase.
  • EdgeDB.Error.inheritor?/2 to work with generated module names for EdgeDB exceptions instead of atoms.

0-2-1-2022-05-19

[0.2.1] - 2022-05-19

Compare with 0.2.0

removed-4

Removed

  • mention of :repeatable_read option for transaction isolation mode from t:EdgeDB.edgedb_transaction_option/0.

fixed-4

Fixed

  • codec name returned by codec for std::str from std::uuid to str::str.
  • documentation for the custom codec example, which did not have a EdgeDB.Protocol.Codec.decode/3 implementation and used the wrong protocol.

0-2-0-2022-05-03

[0.2.0] - 2022-05-03

Compare with 0.1.0

added-5

Added

fixed-5

Fixed

changed-4

Changed

  • parsing of binary data from EdgeDB by completely reworking the protocol implementation.
  • internal implementation of the Access behaviour for EdgeDB.Object to improve fields access performance.

0-1-0-2022-02-10

[0.1.0] - 2022-02-10

Compare with first commit

added-6

Added

  • First release.