copernicus_viewer 0.2.0

GUI viewer and library for inspecting and comparing EOPF Zarr products from the Copernicus ecosystem
# git-cliff configuration — https://git-cliff.org
# Generates CHANGELOG.md from git history on each release.
#
# GitHub integration ([remote.github]) enriches commits with PR metadata when
# GITHUB_TOKEN is set (CI does this automatically). Issue links are extracted
# from commit bodies via [git.link_parsers] when messages contain #123 or
# "Fixes #123" (common in squash-merged PR descriptions).

[remote.github]
owner = "vlevasseur073"
repo = "copernicus_viewer"

[changelog]
header = """
# Changelog

All notable changes to this project are documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

"""
body = """
{%- macro remote_url() -%}
https://github.com/{{ remote.github.owner }}/{{ remote.github.repo }}
{%- endmacro -%}

{% if version %}
  {% if previous.version %}
    ## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
  {% else %}
    ## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
  {% endif %}
{% else %}
  ## [Unreleased]
{% endif %}

{% for group, commits in commits | group_by(attribute="group") %}
  ### {{ group | upper_first }}
  {% for commit in commits %}
    - {{ commit.message | split(pat="\n") | first | trim | upper_first }}{% if commit.remote.username %} by @{{ commit.remote.username }}{% endif %}{% if commit.remote.pr_number %} ([PR #{{ commit.remote.pr_number }}]({{ self::remote_url() }}/pull/{{ commit.remote.pr_number }})){% endif %}{% for link in commit.links %}{% if not commit.remote.pr_number or link.text != "#" ~ commit.remote.pr_number %} ([{{ link.text }}]({{ link.href }})){% endif %}{% endfor %}
  {% endfor %}
{% endfor %}

{% if statistics.links | length > 0 %}
  ### Related Issues
  {% for link in statistics.links %}
    - [{{ link.text }}]({{ link.href }}){% if link.count > 1 %} (referenced {{ link.count }} times){% endif %}
  {% endfor %}
{% endif %}

"""
footer = """
<!-- generated by git-cliff -->
"""
trim = true

[git]
conventional_commits = false
filter_unconventional = false
split_commits = false
link_parsers = [
  { pattern = "#([0-9]+)", href = "https://github.com/vlevasseur073/copernicus_viewer/issues/$1", text = "#$1" },
  { pattern = "(?i)(?:fix(?:e)?s|close(?:s|d)?|resolve(?:s|d)?)\\s+#([0-9]+)", href = "https://github.com/vlevasseur073/copernicus_viewer/issues/$1", text = "#$1" },
]
commit_parsers = [
  { message = "^Merge pull request", skip = true },
  { message = "^Merge branch", skip = true },
  { message = "^Merge remote-tracking branch", skip = true },
  { message = "^chore\\(release\\)", skip = true },
  { message = "^chore: update CHANGELOG", skip = true },
  { message = "^feature[: ]", group = "Features" },
  { message = "^Feature[: ]", group = "Features" },
  { message = "^feat[.: ]", group = "Features" },
  { message = "^fix[: ]", group = "Bug Fixes" },
  { message = "^Fix[: ]", group = "Bug Fixes" },
  { message = "^Add ", group = "Added" },
  { message = "^Update ", group = "Changed" },
  { message = "^Draft ", group = "Changed" },
  { message = "^Format ", group = "Changed" },
  { message = ".*", group = "Other" },
]
filter_commits = false
tag_pattern = "v[0-9]+.*"
sort_commits = "newest"