All Versions
57
Latest Version
Avg Release Cycle
32 days
Latest Release
24 days ago

Changelog History
Page 4

  • v3.3.2 Changes

    January 28, 2020

    โœจ Enhancements

    • [Ecto.Changeset] Only bump optimistic lock in case of success
    • [Ecto.Query] Allow macros in Ecto window expressions
    • [Ecto.Schema] Support :join_defaults on many_to_many associations
    • [Ecto.Schema] Allow MFargs to be given to association :defaults
    • [Ecto.Type] Add Ecto.Type.embedded_load and Ecto.Type.embedded_dump

    ๐Ÿ› Bug fixes

    • [Ecto.Repo] Ignore empty hostname when parsing database url (Elixir v1.10 support)
    • [Ecto.Repo] Rewrite combinations on Repo.exists? queries
    • [Ecto.Schema] Respect child @schema_prefix in cast_assoc
    • [mix ecto.gen.repo] Use config_path when writing new config in mix ecto.gen.repo
  • v3.3.1 Changes

    December 27, 2019

    โœจ Enhancements

    • [Ecto.Query.WindowAPI] Support filter/2

    ๐Ÿ› Bug fixes

    • [Ecto.Query.API] Fix coalesce/2 usage with mixed types
  • v3.3.0 Changes

    December 11, 2019

    โœจ Enhancements

    • [Ecto.Adapter] Add storage_status/1 callback to Ecto.Adapters.Storage behaviour
    • [Ecto.Changeset] Add Ecto.Changeset.apply_action!/2
    • [Ecto.Changeset] Remove actions restriction in Ecto.Changeset.apply_action/2
    • [Ecto.Repo] Introduce c:Ecto.Repo.aggregate/2
    • [Ecto.Repo] Support {:replace_all_except, fields} in :on_conflict

    ๐Ÿ› Bug fixes

    • [Ecto.Query] Make sure the :prefix option in :from/:join also cascades to subqueries
    • [Ecto.Query] Make sure the :prefix option in :join also cascades to queries
    • [Ecto.Query] Use database returned values for literals. Previous Ecto versions knew literals from queries should not be discarded for combinations but, even if they were not discarded, we would ignore the values returned by the database
    • [Ecto.Repo] Do not wrap schema operations in a transaction if already inside a transaction. We have also removed the private option called :skip_transaction

    ๐Ÿ—„ Deprecations

    • [Ecto.Repo] :replace_all_except_primary_keys is deprecated in favor of {:replace_all_except, fields} in :on_conflict
  • v3.2.5 Changes

    November 03, 2019

    ๐Ÿ› Bug fixes

    • [Ecto.Query] Fix a bug where executing some queries would leak the {:maybe, ...} type
  • v3.2.4 Changes

    November 02, 2019

    ๐Ÿ› Bug fixes

    • [Ecto.Query] Improve error message on invalid join binding
    • [Ecto.Query] Make sure the :prefix option in :join also applies to through associations
    • [Ecto.Query] Invoke custom type when loading aggregations from the database (but fallback to database value if it can't be cast)
    • [mix ecto.gen.repo] Support Elixir v1.9 style configs
  • v3.2.3 Changes

    October 17, 2019

    ๐Ÿ› Bug fixes

    • [Ecto.Changeset] Do not convert enums given to validate_inclusion to a list

    โœจ Enhancements

    • [Ecto.Changeset] Improve error message on non-atom keys to change/put_change
    • [Ecto.Changeset] Allow :with to be given as a {module, function, args} tuple on cast_association/cast_embed
    • [Ecto.Changeset] Add fetch_change!/2 and fetch_field!/2
  • v3.2.2 Changes

    October 01, 2019

    ๐Ÿ› Bug fixes

    • [Ecto.Query] Fix keyword arguments given to :on when a bind is not given to join
    • [Ecto.Repo] Make sure a preload given to an already preloaded has_many :through is loaded
  • v3.2.1 Changes

    September 17, 2019

    โœจ Enhancements

    • [Ecto.Changeset] Add rollover logic for default incrementer in optimistic_lock
    • [Ecto.Query] Also expand macros when used inside type/2

    ๐Ÿ› Bug fixes

    • [Ecto.Query] Ensure queries with non-cacheable queries in CTEs/combinations are also not-cacheable
  • v3.2.0 Changes

    September 07, 2019

    v3.2 requires Elixir v1.6+.

    โœจ Enhancements

    • [Ecto.Query] Add common table expressions support with_cte/3 and recursive_ctes/2
    • [Ecto.Query] Allow dynamic/3 to be used in order_by, distinct, group_by, as well as in partition_by, order_by, and frame inside windows
    • [Ecto.Query] Allow filters in type/2 expressions
    • [Ecto.Repo] Merge options given to the repository into the changeset repo_opts and assign it back to make it available down the chain
    • [Ecto.Repo] Add prepare_query/3 callback that is invoked before query operations
    • [Ecto.Repo] Support :returning option in Ecto.Repo.update/2
    • [Ecto.Repo] Support passing a one arity function to Ecto.Repo.transaction/2, where the argument is the current repo
    • [Ecto.Type] Add a new embed_as/1 callback to Ecto.Type that allows adapters to control embedding behaviour
    • [Ecto.Type] Add use Ecto.Type for convenience that implements the new required callbacks

    ๐Ÿ› Bug fixes

    • [Ecto.Association] Ensure we delete an association before inserting when replacing on has_one
    • [Ecto.Query] Do not allow interpolated nil in literal keyword list when building query
    • [Ecto.Query] Do not remove literals from combinations, otherwise UNION/INTERSECTION queries may not match the nummber of values in select
    • [Ecto.Query] Do not attempt to merge at compile-time non-keyword lists given to select_merge
    • [Ecto.Repo] Do not override :through associations on preload unless forcing
    • [Ecto.Repo] Make sure prefix option cascades to combinations and recursive queries
    • [Ecto.Schema] Use OS time without drift when generating timestamps
    • [Ecto.Type] Allow any datetime in datetime_add
  • v3.1.7 Changes

    June 27, 2019

    ๐Ÿ› Bug fixes

    • [Ecto.Changeset] Make sure put_assoc with empty changeset propagates on insert