 
   When in `dev_mode`, the packaging phase is skipped.
   """
-  @callback before_package(Release.t)  :: Release.t | nil
+  @callback before_package(Release.t, Keyword.t)  :: Release.t | nil
 
   @doc """
   Called after packaging the release.

  It should clean up the files the plugin created. The return value of this
  callback is ignored.
  """
  @callback after_cleanup(Release.t, [String.t])  :: any

  @doc false
  defmacro __using__(_opts) do


  Should return a modified `%Release{}` or `nil`.
  """
  @callback before_assembly(Release.t, Keyword.t) :: Release.t | nil

  @doc """
  Called after assembling the release.

  Should return a modified `%Release{}` or `nil`.
  """
  @callback after_assembly(Release.t, Keyword.t)  :: Release.t | nil

  @doc """
  Called before packaging the release.
