# `Tayori.Sources.Changelog`
[🔗](https://github.com/hattoriai/tayori/blob/v0.1.0/lib/tayori/sources/changelog.ex#L1)

The changes of a `CHANGELOG.md` in the [Keep a
Changelog](https://keepachangelog.com) format: each item of each
release is a change.

    ## [1.4.0] - 2026-10-20

    ### Added

    - Exports in two clicks: zip a project with its files.

    ### Fixed

    - Dates showed a day early in Auckland.

The change's `:version` is the release's (`1.4.0`), its `:kind` the
section's (`added`, `fixed`, ...), its `:occurred_at` the release's
date, its `:title` the item's first sentence, and its `:body` the rest.
An item can say more about itself in a comment that ends it,
`<!-- audience: internal -->` or `<!-- category: api, highlight -->`.

Options:

  * `:path` - the file (see `Tayori.Source.path/1`), required.
  * `:sections` - `:released` (the releases with a version, not
    `[Unreleased]`) or `:all` (`:released`).
  * `:name` - the source's name (`"changelog"`).

# `parse`

```elixir
@spec parse(String.t(), :released | :all) :: [Tayori.Source.change()]
```

The changes of a changelog's text: `:released` sections only, or
`:all`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
