kiddo 6.0.0

A high-performance, flexible, ergonomic k-d tree library. Ideal for geo- and astro- nearest-neighbour and k-nearest-neighbor queries
Documentation
[changelog]
header = """
# Kiddo Changelog\n
"""

body = """
{% if version %}\
    ## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
{% else %}\
    ## [unreleased]
{% endif %}\
{% if previous %}\
    {% if previous.commit_id %}
        [{{ previous.commit_id | truncate(length=7, end="") }}]({{ previous.commit_id }})...\
            [{{ commit_id | truncate(length=7, end="") }}]({{ commit_id }})
    {% endif %}\
{% endif %}\
{%- for group, commits in commits | group_by(attribute="group") %}
    ### {{ group | striptags | trim }}
    {% for commit in commits %}
        - {{ commit.message | upper_first }}{%- if (commit.remote and commit.remote.username) or (commit.author and commit.author.name) or (commit.footers | length > 0) %} ({%- if commit.remote and commit.remote.username and commit.remote.pr_number and remote.github %}[@{{ commit.remote.username }}](https://github.com/{{ commit.remote.username }}), [PR #{{ commit.remote.pr_number }}](https://github.com/{{ remote.github.owner }}/{{ remote.github.repo }}/pull/{{ commit.remote.pr_number }}){%- elif commit.remote and commit.remote.username %}[@{{ commit.remote.username }}](https://github.com/{{ commit.remote.username }}){%- elif commit.author and commit.author.name %}{{ commit.author.name }}{%- endif %}{%- for footer in commit.footers -%}{%- if (commit.remote and commit.remote.username) or (commit.author and commit.author.name) or not loop.first %}, {% endif %}{{ footer.token }}: {%- if footer.value is starting_with("https://github.com/") and "/issues/" in footer.value -%}[Issue #{{ footer.value | split(pat="/") | last }}]({{ footer.value }}){%- else -%}{{ footer.value }}{%- endif -%}{%- endfor -%}){%- endif %}
    {% endfor %}
{% endfor -%}
"""

trim = true

[remote.github]
owner = "sdd-org"
repo = "kiddo"

[git]
conventional_commits = true
filter_unconventional = true
split_commits = false
commit_parsers = [
  { message = "^feat", group = "<!-- 0 --> ✨ Features" },
  { message = "^fix", group = "<!-- 1 --> 🐛 Bug Fixes" },
  { message = "^perf", group = "<!-- 2 --> ⚡️ Performance" },
  { message = "^refactor", group = "<!-- 3 --> ♻️ Refactor" },
  { message = "^test", group = "<!-- 4 --> 🧪 Testing" },
  { message = "^ci", group = "<!-- 5 --> 🤖 CI" },
  { message = "^chore", group = "<!-- 6 --> 🧹 Chore" },
  { message = "^docs?", group = "<!-- 6 --> 🧹 Chore" },
  { message = "^style", group = "<!-- 6 --> 🧹 Chore" },
  { message = "^build", group = "<!-- 6 --> 🧹 Chore" },
]
protect_breaking_commits = true
tag_pattern = "v[0-9]\\.[0-9]\\.[0-9]"
filter_commits = false
sort_commits = "oldest"