diff --git a/.github/workflows/conventional-commit.yml b/.github/workflows/conventional-commit.yml
new file mode 100644
index 0000000..facc6f6
--- /dev/null
+++ b/.github/workflows/conventional-commit.yml
@@ -0,0 +1,29 @@
+name: Conventional Commit
+
+on:
+ pull_request:
+ types:
+ - edited
+ - opened
+
+jobs:
+ conventional-commit:
+ name: Conventional Commit
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check PR Conventional Commit title
+ uses: amannn/action-semantic-pull-request@v5
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ with:
+ types: | # mirrors changelog-sections in the /release-please-config.json
+ feat
+ fix
+ infra
+ ci
+ docs
+ deps
+ perf
+ refactor
+ test
+ chore
diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml
new file mode 100644
index 0000000..968c75b
--- /dev/null
+++ b/.github/workflows/release-please.yml
@@ -0,0 +1,18 @@
+name: Update release PR
+
+on:
+ push:
+ branches:
+ - main
+
+permissions:
+ contents: write
+ pull-requests: write
+
+jobs:
+ release-please:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: googleapis/release-please-action@v4
+ with:
+ token: ${{ secrets.RELEASE_PLEASE_GITHUB_TOKEN }}
diff --git a/.release-please-manifest.yml b/.release-please-manifest.yml
new file mode 100644
index 0000000..89713b8
--- /dev/null
+++ b/.release-please-manifest.yml
@@ -0,0 +1 @@
+{".": "0.4.0"}
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..dad56d8
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,60 @@
+
+# [v0.4.0](https://github.com/Flagsmith/flagsmith-rust-flag-engine/releases/tag/v0.4.0) - 2024-04-04
+
+## What's Changed
+* feat: Add identity overrides to Environment model by [@khvn26](https://github.com/khvn26) in [#12](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/12)
+
+
+**Full Changelog**: https://github.com/Flagsmith/flagsmith-rust-flag-engine/compare/v0.3.0...v0.4.0
+
+[Changes][v0.4.0]
+
+
+
+# [v0.3.0](https://github.com/Flagsmith/flagsmith-rust-flag-engine/releases/tag/v0.3.0) - 2023-07-20
+
+## What's Changed
+* feat: implement the `IN` operator by [@khvn26](https://github.com/khvn26) in [#9](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/9)
+
+## New Contributors
+* [@khvn26](https://github.com/khvn26) made their first contribution in [#9](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/9)
+
+**Full Changelog**: https://github.com/Flagsmith/flagsmith-rust-flag-engine/compare/v0.2.0...v0.3.0
+
+[Changes][v0.3.0]
+
+
+
+# [v0.2.0](https://github.com/Flagsmith/flagsmith-rust-flag-engine/releases/tag/v0.2.0) - 2022-10-20
+
+## What's Changed
+* feat(modulo): Add modulo operator by [@gagantrivedi](https://github.com/gagantrivedi) in [#6](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/6)
+* feat(segment/operator): Add is_set and is_not_set by [@gagantrivedi](https://github.com/gagantrivedi) in [#7](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/7)
+
+
+**Full Changelog**: https://github.com/Flagsmith/flagsmith-rust-flag-engine/compare/v0.1.1...v0.2.0
+
+[Changes][v0.2.0]
+
+
+
+# [v0.1.1](https://github.com/Flagsmith/flagsmith-rust-flag-engine/releases/tag/v0.1.1) - 2022-05-27
+
+## What's Changed
+* Implement flag engine v0.1.0 by [@gagantrivedi](https://github.com/gagantrivedi) in [#1](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/1)
+* Chore/add metadata by [@gagantrivedi](https://github.com/gagantrivedi) in [#3](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/3)
+* ci: Add workflow to publish package to cargo by [@gagantrivedi](https://github.com/gagantrivedi) in [#4](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/4)
+* Release 0.1.1 by [@gagantrivedi](https://github.com/gagantrivedi) in [#5](https://github.com/Flagsmith/flagsmith-rust-flag-engine/pull/5)
+
+
+**Full Changelog**: https://github.com/Flagsmith/flagsmith-rust-flag-engine/commits/v0.1.1
+
+[Changes][v0.1.1]
+
+
+[v0.4.0]: https://github.com/Flagsmith/flagsmith-rust-flag-engine/compare/v0.3.0...v0.4.0
+[v0.3.0]: https://github.com/Flagsmith/flagsmith-rust-flag-engine/compare/v0.2.0...v0.3.0
+[v0.2.0]: https://github.com/Flagsmith/flagsmith-rust-flag-engine/compare/v0.1.1...v0.2.0
+[v0.1.1]: https://github.com/Flagsmith/flagsmith-rust-flag-engine/tree/v0.1.1
+
+
diff --git a/release-please-config.json b/release-please-config.json
new file mode 100644
index 0000000..c91c8d9
--- /dev/null
+++ b/release-please-config.json
@@ -0,0 +1,62 @@
+{
+ "bootstrap-sha": "afdd7cc5b01c5ccb99cf83f271f6de84bc701722",
+ "packages": {
+ ".": {
+ "release-type": "rust",
+ "changelog-path": "CHANGELOG.md",
+ "bump-minor-pre-major": false,
+ "bump-patch-for-minor-pre-major": false,
+ "draft": false,
+ "prerelease": false,
+ "include-component-in-tag": false
+ }
+ },
+ "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
+ "changelog-sections": [
+ {
+ "type": "feat",
+ "hidden": false,
+ "section": "Features"
+ },
+ {
+ "type": "fix",
+ "hidden": false,
+ "section": "Bug Fixes"
+ },
+ {
+ "type": "ci",
+ "hidden": false,
+ "section": "CI"
+ },
+ {
+ "type": "docs",
+ "hidden": false,
+ "section": "Docs"
+ },
+ {
+ "type": "deps",
+ "hidden": false,
+ "section": "Dependency Updates"
+ },
+ {
+ "type": "perf",
+ "hidden": false,
+ "section": "Performance Improvements"
+ },
+ {
+ "type": "refactor",
+ "hidden": false,
+ "section": "Refactoring"
+ },
+ {
+ "type": "test",
+ "hidden": false,
+ "section": "Tests"
+ },
+ {
+ "type": "chore",
+ "hidden": false,
+ "section": "Other"
+ }
+ ]
+}