mirror of
https://github.com/goreleaser/goreleaser.git
synced 2025-01-30 04:50:45 +02:00
ac40ce8a80
<!-- Hi, thanks for contributing! Please make sure you read our CONTRIBUTING guide. Also, add tests and the respective documentation changes as well. --> <!-- If applied, this commit will... --> This PR allows `chocolateys.copyright` to be templated, and provides `ctx.ReleaseNotes` as `.Changelog`. <!-- Why is this change being made? --> Allowing templates for the copyright will enable, for example: ```yaml chocolateys: - ... copyright: Copyright (c) 1970-{{ .Now.Format "2006" }} Foo Bar ... ``` Without this change: ```xml <?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd"> <metadata> ... <copyright>Copyright (c) 1970-{{ .Now.Format "2006" }} Foo Bar</copyright> ... </metadata> ... </package> ``` With this change: ```xml <?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd"> <metadata> ... <copyright>Copyright (c) 1970-2024 Foo Bar</copyright> ... </metadata> ... </package> ``` --- Providing the release notes means they can be placed directly in the package page instead of linking to them, for example: ```yaml chocolateys: - ... release_notes: '{{ .Changelog }}' ... ``` Without this change: ```console ❯ goreleaser release --skip=sign,announce,publish --clean • starting release... ... • chocolatey packages ⨯ release failed after 4s error=template: failed to apply "{{ .Changelog }}": template: failed to apply "{{ .Changelog }}": map has no entry for key "Changelog" ``` With this change: ```xml <?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd"> <metadata> ... <releaseNotes>## Changelog
### Other
* cfa5cbfa5 test
</releaseNotes> ... </metadata> ... </package> ``` <!-- # Provide links to any relevant tickets, URLs or other resources --> --- These are already supported for WinGet. There is probably a better way of doing this, and I've probably also missed something, so feedback is welcome!
Documentation
Documentation is written in mkdocs and there are a few extensions that allow richer authoring than markdown.
To iterate with documentation, therefore, it is recommended to run the mkdocs server and view your pages in a browser.
Prerequisites
With nix
If you have nix installed, you can:
nix develop .#docs
To drop into a shell with all the needed dependencies.
Edit the docs
After installing mkdocs and extensions, build and run the documentation locally:
task docs:serve
The site will soon be available at http://localhost:8000 and auto-update after changes.