anchor.diff:  
   %% API
   -export([populate/2,
  +         rewrite_vsn/4,
            format_exception/1]).
   
   %%====================================================================
  
positive.code:                      (Element, Acc) ->
                            [Element | Acc]
                    end, [], lists:keydelete(modules, 1, Details))).
  
negative.code: %%====================================================================
  %% Internal functions
  %%====================================================================
  -spec prepare_app(sin_config:config(), sin_state:state(), string()) ->
                           sin_config:config().
  prepare_app(_Config, State0, #app{name=AppName, path=AppBuildDir}) ->
      BaseDetails = populate_modules(State0, AppName),
      DotApp = filename:join([AppBuildDir, "ebin",
                              erlang:atom_to_list(AppName) ++ ".app"]),
  
      ok = file:write_file(DotApp,
                      io_lib:format("~p.\n",
                                    [{application, AppName, BaseDetails}])),
  
      State0.
  
  populate_modules(State, AppName) ->
      Details = sin_state:get_value({apps, AppName, base}, State),
  
  