Current section
Files
Jump to
Current section
Files
lib/verex.ex
defmodule Verex do
@moduledoc """
This is a simple versioning library for Phoenix. Rather than only versioning changes or
old inactive versions, this library allows for a full history of your modules. Verex does not use an independent
'versions' table, but incorporates the full history into the modules existing table. Verex makes use of
a `current_flag` in the repo to flag an entry as active. It also makes use of a `parent_id` to allow for simple traversing
of an entries history.
By keeping a full history, Verex allows for associations with other modules on 'un-active' records.
**Usage**
Verex works by making changes to a changeset prior to any repo transaction. Therefore rather than
calling Ecto.Repo functions such as Repo.insert, Repo.update, or Repo.delete on your versioned module, call
`Verex.Repo.insert`,
`Verex.Repo.update`, and
`Verex.Repo.delete`
"""
end