diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml new file mode 100644 index 0000000..1b0f7d8 --- /dev/null +++ b/.github/workflows/changelog.yml @@ -0,0 +1,40 @@ +name: Generate Changelog + +on: + push: + tags: + - 'v*' + paths: + - 'src/**' + pull_request: + paths: + - 'src/**' + branches: + - main + +jobs: + changelog: + # Skip job if no changes in src/ + if: contains(github.event.head_commit.modified, 'src/') || contains(github.event.head_commit.added, 'src/') || contains(github.event.head_commit.removed, 'src/') + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Generate changelog + id: changelog + uses: heinrichreimer/github-changelog-generator-action@v2.3 + with: + token: ${{ secrets.GITHUB_TOKEN }} + + - name: Create Release + uses: softprops/action-gh-release@v1 + if: startsWith(github.ref, 'refs/tags/') + with: + body_path: CHANGELOG.md + files: | + CHANGELOG.md + release/basalt.lua + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..a0552fd --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,20 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +### Added +- Initial LuaLS support +- Automatic documentation generation +- Property and event annotations + +### Changed +- Improved type definitions +- Enhanced error handling + +### Fixed +- Various minor bugs