https://github.com/sheerlox/semantic_release
📦🚀 Fully automated version management and package publishing for Elixir
https://github.com/sheerlox/semantic_release
automation changelog elixir package publish release release-automation release-workflow semantic-release semantic-version semver semver-release version
Last synced: 5 days ago
JSON representation
📦🚀 Fully automated version management and package publishing for Elixir
- Host: GitHub
- URL: https://github.com/sheerlox/semantic_release
- Owner: sheerlox
- License: mit
- Created: 2023-11-29T15:31:39.000Z (over 2 years ago)
- Default Branch: dev
- Last Pushed: 2025-01-10T20:43:20.000Z (over 1 year ago)
- Last Synced: 2025-12-13T01:57:34.982Z (6 months ago)
- Topics: automation, changelog, elixir, package, publish, release, release-automation, release-workflow, semantic-release, semantic-version, semver, semver-release, version
- Language: Elixir
- Homepage:
- Size: 109 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Semantic Release for Elixir
[](https://hex.pm/packages/semantic_release)
[](https://hexdocs.pm/semantic_release/)
[](https://hex.pm/packages/semantic_release)
[](https://github.com/unill-io/semantic_release/)
Mix tasks for installing and running [`semantic-release`](https://github.com/semantic-release/semantic-release/) (and the adapter plugin [`semantic-release-hex`](https://github.com/unill-io/semantic-release-hex/)) in Elixir projects.
> **⚠️ WARNING**
>
> This is a pre-release version. As such, anything _may_ change
> at any time, the public API _should not_ be considered stable,
> and using a pinned version is _recommended_.
> **Disclaimer**: Because `semantic-release` is written in JavaScript, this package will install Node.js in your `_build/` folder upon running.
>
> See the [`nodelix` documentation](https://hexdocs.pm/nodelix/) for more information on how Node.js is installed.
## Installation
`gpg` must be available in your PATH to verify the signature of Node.js releases.
The package can be installed by adding `semantic_release` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:semantic_release, "1.0.0-alpha.9", only: :dev, runtime: false}
]
end
```
## Configuration
You can list additional npm packages to be passed to the `npm install` command:
```elixir
config :semantic_release,
additional_packages: [
"@semantic-release/changelog",
"@semantic-release/git",
]
```
This can also be used to override automatically installed package versions:
```elixir
config :semantic_release,
additional_packages: [
"semantic-release-hex@next",
"@semantic-release/changelog",
"@semantic-release/git",
]
```
## Versioning
This project follows the principles of [Semantic Versioning (SemVer)](https://semver.org/).