Skip to content

Releases: filipchristiansen/mkdocs-source-links

v0.4.0

18 Jun 23:21
Immutable release. Only release title and notes can be modified.
v0.4.0
28a8418

Choose a tag to compare

Added

  • SLSA Level 3 provenance (mkdocs-source-links.intoto.jsonl) on GitHub releases.
  • Post-release slsa-verifier check in the publish workflow.

Changed

  • Publish workflow verifies maintainer signed tags before PyPI upload.
  • GitHub releases created atomically with provenance and distribution archives (immutable-release compatible).
  • Release notes sourced from CHANGELOG.

v0.3.2

18 Jun 20:24
Immutable release. Only release title and notes can be modified.
v0.3.2
697b1d8

Choose a tag to compare

Fixed

  • Use Gitea /src/commit/ URLs when pin: commit is enabled.
  • Tighten forge hostname autodetection heuristics for self-hosted forges.
  • Strip a trailing .git suffix from repo_url when building forge URLs.
  • Always initialize _view_ref in on_config so partial config does not leave the plugin in a
    broken state.
  • Parse GitLab-style edit_uri branch segments when resolving the documentation branch.

Changed

  • Add OpenSSF Best Practices (Metal Passing), Baseline Level 1, and Scorecard badges to the README
    and documentation site; run OpenSSF Scorecard analysis with SARIF upload to Code Scanning.
  • Document a 14-day initial security response SLA and explicit security contacts in SECURITY.md.
  • Create signed release tags (git tag -s); the publish workflow rejects unsigned or unverified tags
    before PyPI upload.
  • Add MIT, CI, and Python badges to the docs home page; exclude MkDocs snippet files from standalone
    page builds.

Full changelog: v0.3.1...v0.3.2

v0.3.1

18 Jun 08:34
7db31c7

Choose a tag to compare

Fixed

  • Rewrite angle-bracket links whose destination contains spaces (](<../my file.py>)); the path is
    percent-encoded in the resulting forge URL.

Changed

  • Run the CI test suite on Windows and macOS (newest supported Python) in addition to the Linux
    Python matrix, to guard cross-platform path handling.
  • Add a two-step release helper (make release-prep / make release-tag) that bumps the version,
    rolls the hand-written [Unreleased] changelog section into a dated release, and opens the
    release PR, tags, and publishes — without ever generating release notes.
  • Lint and format TOML via pre-commit (check-toml plus the taplo-format formatter), keeping
    pyproject.toml consistently styled.

Full changelog: v0.3.0...v0.3.1

v0.3.0

17 Jun 20:48
1d76da1

Choose a tag to compare

What's new in v0.3.0

Added

  • Commit-SHA permalinkspin config option (branch or commit) to embed the current commit SHA in forge URLs instead of a branch name. Azure DevOps uses version=GC<sha> for commits. (#16)
  • Line-anchor translation — canonical #L10 / #L10-L20 fragments in rewritten links are converted to each forge's line-reference syntax (GitHub/Gitea #L10-L20, GitLab #L10-20, Bitbucket #lines-10:20); Azure line anchors are omitted. (#17)
  • enabled toggle (default true, !ENV-aware) to turn link rewriting off, e.g. for faster mkdocs serve. (#18)
  • warn_on_missing (default true) to warn when a ](../path) link target does not exist in the repository; warnings count toward mkdocs build --strict. (#18)

Changed

  • Add the Framework :: MkDocs trove classifier for PyPI discoverability. (#15)

Full changelog: v0.2.0...v0.3.0

v0.2.0

17 Jun 15:09
4185620

Choose a tag to compare

First minor release: multi-forge support, a documentation site, broader link handling, and typing/packaging hygiene. Backwards-compatible.

Added

  • Multi-forge: GitLab, Bitbucket Cloud, Gitea/Forgejo (incl. Codeberg), and Azure DevOps alongside GitHub. Public hosts and common self-hosted patterns (e.g. GitHub Enterprise) are autodetected.
  • forge option to select the forge explicitly for self-hosted instances on custom domains.
  • Titled links (](../x "title")) and angle-bracket destinations (](<../x>)), preserving title and fragment.
  • Documentation site (MkDocs Material) on GitHub Pages with an mkdocstrings API reference.
  • py.typed marker (PEP 561) so downstream type checkers use the bundled hints.
  • CHANGELOG.md, CONTRIBUTING.md, SECURITY.md, issue/PR templates, Dependabot.

Fixed

  • Don't rewrite ](../path) links inside fenced code blocks or inline code spans (#2).

Changed

  • Trimmed sdist contents; CI lint runs the shared pre-commit hooks; reproducible installs via committed uv.lock (--frozen); publish workflow aligned with CI.

Full changelog: v0.1.1...v0.2.0

v0.1.1

16 Jun 21:35
7c62b55

Choose a tag to compare

Hardening release: CI/linting overhaul, tests to 100% coverage, docs, and a small robustness fix. Backwards-compatible patch.

Fixes

  • on_page_markdown now leaves markdown unchanged for pages with no backing file (abs_src_path is None), avoiding errors on virtual pages.

Internal

  • __version__ is derived from installed package metadata via importlib.metadata.
  • Deduplicated ../ path resolution in rewrite.py.
  • numpy-style docstrings across the package.

Tooling / CI

  • Split CI into lint (ruff, ruff-format, mypy, pydoclint, pylint) and test (Python 3.10–3.13) jobs.
  • Coverage + Codecov upload on 3.10; 100% coverage gate.
  • Added pre-commit config, Makefile, and markdownlint config.

Docs

  • README badges and a make-based development workflow.

Full changelog: v0.1.0...v0.1.1