All Versions
17
Latest Version
Avg Release Cycle
167 days
Latest Release
249 days ago

Changelog History
Page 1

  • v2.4.0

    February 18, 2020

    โž• Added

    • ๐Ÿ‘ Allow ExMachina.Ecto to be used without :repo option (#370)
  • v2.3.0

    March 01, 2019

    โž• Added

    • ๐Ÿ‘ Allows more control over factory definitions ([#333])
    • โž• Adds ability to reset specific sequences ([#331])

    ๐Ÿ“„ Docs

    • โž• Adds additional callbacks for functions with default params ([#319])
  • v2.2.2

    November 05, 2018
    • โž• Adds support for Ecto 3.0 (#301)
  • v2.2.1

    October 24, 2018

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fixes sequence typespec (#278)

    โœ‚ Removed

    • โœ‚ Removed fields_for/2 function that would raise an error since 1.0.0 (#287)

    ๐Ÿ“„ Docs

    • โž• Adds example for derived attribute (#264)
    • โž• Adds example for dependent factory (#239)
  • v2.2.0

    March 13, 2018

    โž• Added

    • โž• Adds support for using lists in sequences (#227).

    ๐Ÿ›  Fixed

    • Elixir 1.6.x changed the behavior of Regex.split/3 which caused factory names to break. Added a fix in (#275).
  • v2.1.0

    August 31, 2017

    โž• Added

    ๐Ÿ›  Fixed

    ๐Ÿ‘Œ Improved

    • ๐Ÿ“š Miscellaneous documentation improvements.
  • v2.0.0

    March 03, 2017

    โž• Added

    • Cast all values before insert (#149)

    For example, this means that if you have field :equity, :decimal in your schema, you can set the value to 0 in your factory and it will automatically cast the value to a Decimal.

    • Add string_params_for, which is useful for controller specs. (#168)
    • โž• Add Sequence.reset/0 for resetting sequences between tests. (#151)

    ๐Ÿ”„ Changed

    • params_* functions now drop fields with nil values (#148)
    • Don't delete has_manys from params_* functions (#174)

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix an issue where values on embedded associations would not be cast (#200)
    • Only drop autogenerated ids (#147)
    • ๐Ÿ›  Fix an issue where setting an association to nil would break insert (#193)
    • ๐Ÿ›  Fix an issue where unbuild has_many through associations were not removed in params_* functions (#192)
  • v1.0.2

    July 01, 2016

    ๐Ÿ“š Minor documentation fixes

  • v1.0.1

    June 24, 2016

    Small change to the error generated when a factory definition is not found (#142)

  • v1.0.0

    June 24, 2016

    โฌ†๏ธ A lot has changed but we tried to make upgrading as simple as possible.

    โฌ†๏ธ To upgrade: In mix.exs change the version to "~> 1.0" and run mix โšก๏ธ deps.get. Once you've updated, run mix test and ExMachina will raise errors that show you what needs to change to work with 1.0.0.

    ๐Ÿ›  Fixed

    • ๐Ÿ›  Fix compilation issues under OTP 19 (#138)
    • Raise helpful error when trying to insert twice (#128)

    โž• Added

    • โž• Add Sequence.next/1 for quickly creating sequences. Example: sequence("username") will generate "username1", then "username2" (#84)
    • Raise if passing invalid keys to structs (#99)
    • Add params_with_assocs (#124)

    ๐Ÿ”„ Changed

    • Rename fields_for to params_for (#98)
    • If using ExMachina with Ecto, use insert, insert_list and insert_pair instead of create_*
    • Instead of defining a custom save_record, you can now implement an ExMachina.Strategy. See the documentation on hex.pm for more info (#102)
    • ๐Ÿ‘€ Define factory as user_factory instead of factory(:user) (#110). See PR and related issue for details on why this was changed.
    • params_for no longer returns the primary key (#123)