{#
This changelog template initializes a full changelog for the project,
it follows the following logic:
  1. Header
  2. Any Unreleased Details (uncommon)
  3. all previous releases except the very first release
  4. the first release

#}{#
   #    Header
#}{%    include "changelog_header.md.j2"
-%}{#
   #    Any Unreleased Details (uncommon)
#}{%    include "unreleased_changes.md.j2"
-%}{#
    #   Since this is initialization, we are generating all the previous
    #   release notes per version. The very first release notes is specialized
#}{%    if releases | length > 0
%}{%      for release in releases
%}{{        "\n"
}}{%        if loop.last and ctx.mask_initial_release
%}{%-         include "first_release.md.j2"
-%}{%       else
%}{%-         include "versioned_changes.md.j2"
-%}{%       endif
%}{{       "\n"
}}{%      endfor
%}{%    endif
%}
