Current section
12 Versions
Jump to
Current section
12 Versions
Compare versions
3
files changed
+9
additions
-11
deletions
| @@ -1,6 +1,6 @@ | |
| 1 1 | {<<"links">>,[{<<"GitHub">>,<<"https://github.com/acalejos/flint">>}]}. |
| 2 2 | {<<"name">>,<<"flint">>}. |
| 3 | - {<<"version">>,<<"0.4.1">>}. |
| 3 | + {<<"version">>,<<"0.4.2">>}. |
| 4 4 | {<<"description">>, |
| 5 5 | <<"Declarative Ecto embedded schemas for data validation, coercion, and manipulation.">>}. |
| 6 6 | {<<"elixir">>,<<"~> 1.14">>}. |
| @@ -3,7 +3,6 @@ defmodule Flint.Changeset do | |
| 3 3 | The base `changeset` function defined by `Flint`. `Flint.Changeset` uses the module attributes |
| 4 4 | that are collected when using the `Flint.Schema` macros to perform transformations and validations. |
| 5 5 | """ |
| 6 | - import Ecto.Changeset |
| 7 6 | |
| 8 7 | @doc """ |
| 9 8 | Uses the quoted expressions from the `Flint.Schema.field` and `Flint.Schema.field!` |
| @@ -18,10 +17,9 @@ defmodule Flint.Changeset do | |
| 18 17 | all_validations = |
| 19 18 | module.__schema__(:blocks) |
| 20 19 | |
| 21 | - for {field, validations} <- all_validations, reduce: changeset do |
| 20 | + for {field, block} <- all_validations, reduce: changeset do |
| 22 21 | changeset -> |
| 23 22 | bindings = bindings ++ Enum.into(changeset.changes, []) |
| 24 | - block = Keyword.get(validations, :block, []) |
| 25 23 | |
| 26 24 | block |
| 27 25 | |> Enum.with_index() |
| @@ -37,7 +35,7 @@ defmodule Flint.Changeset do | |
| 37 35 | apply(invalid?, []) |
| 38 36 | |
| 39 37 | {:arity, 1} when not is_nil(field) -> |
| 40 | - apply(invalid?, [fetch_change!(changeset, field)]) |
| 38 | + apply(invalid?, [Ecto.Changeset.fetch_change!(changeset, field)]) |
| 41 39 | |
| 42 40 | _ -> |
| 43 41 | raise ArgumentError, |
| @@ -50,7 +48,7 @@ defmodule Flint.Changeset do | |
| 50 48 | {err_msg, _bindings} = Code.eval_quoted(quoted_err, bindings, env) |
| 51 49 | |
| 52 50 | if invalid? do |
| 53 | - add_error(chngset, field, err_msg, |
| 51 | + Ecto.Changeset.add_error(chngset, field, err_msg, |
| 54 52 | validation: :block, |
| 55 53 | clause: index + 1 |
| 56 54 | ) |
| @@ -59,7 +57,7 @@ defmodule Flint.Changeset do | |
| 59 57 | end |
| 60 58 | rescue |
| 61 59 | _ -> |
| 62 | - add_error( |
| 60 | + Ecto.Changeset.add_error( |
| 63 61 | chngset, |
| 64 62 | field, |
| 65 63 | "Error evaluating expression in Clause ##{index + 1} of `do:` block" |
| @@ -96,20 +94,20 @@ defmodule Flint.Changeset do | |
| 96 94 | |
| 97 95 | changeset = |
| 98 96 | schema |
| 99 | - |> cast(params, fields |> MapSet.to_list()) |
| 97 | + |> Ecto.Changeset.cast(params, fields |> MapSet.to_list()) |
| 100 98 | |
| 101 99 | changeset = |
| 102 100 | for field <- embedded_fields, reduce: changeset do |
| 103 101 | changeset -> |
| 104 102 | changeset |
| 105 | - |> cast_embed(field, |
| 103 | + |> Ecto.Changeset.cast_embed(field, |
| 106 104 | required: field in required_embeds, |
| 107 105 | with: &changeset(&1, &2, bindings) |
| 108 106 | ) |
| 109 107 | end |
| 110 108 | |
| 111 109 | changeset |
| 112 | - |> validate_required(required_fields) |
| 110 | + |> Ecto.Changeset.validate_required(required_fields) |
| 113 111 | |> validate_do_blocks(bindings) |
| 114 112 | end |
| 115 113 | end |
| @@ -5,7 +5,7 @@ defmodule Flint.MixProject do | |
| 5 5 | [ |
| 6 6 | app: :flint, |
| 7 7 | name: "Flint", |
| 8 | - version: "0.4.1", |
| 8 | + version: "0.4.2", |
| 9 9 | elixir: "~> 1.14", |
| 10 10 | start_permanent: Mix.env() == :prod, |
| 11 11 | deps: deps(), |