From 8e745f5fdb14d813e5d55b141ff1548e26b06142 Mon Sep 17 00:00:00 2001 From: Marc Jakobi Date: Fri, 3 Feb 2023 14:21:09 +0100 Subject: [PATCH] feat: add rockspec (#115) Created a new PR because #83 got closed and cannot be reopened. For some reason GitHub thinks it has over 250 commits. ###### Things done - [x] Tested, as applicable: - [x] Manually - [ ] Added plenary specs - [x] Updated [CHANGELOG.md](https://github.com/MrcJkb/haskell-tools.nvim/blob/master/CHANGELOG.md) (if applicable). - [x] Fits [CONTRIBUTING.md](https://github.com/MrcJkb/haskell-tools.nvim/blob/master/CONTRIBUTING.md) --- .github/workflows/release.yml | 27 +++++++++++++++++++++++++++ CHANGELOG.md | 2 ++ README.md | 1 + haskell-tools.nvim-scm-1.rockspec | 31 +++++++++++++++++++++++++++++++ 4 files changed, 61 insertions(+) create mode 100644 .github/workflows/release.yml create mode 100644 haskell-tools.nvim-scm-1.rockspec diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..595ef5d3 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,27 @@ +name: "Release" +on: + push: + tags: + - "*" + +jobs: + luarocks-release: + runs-on: ubuntu-latest + name: LuaRocks upload + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: LuaRocks Upload + uses: nvim-neorocks/luarocks-tag-release@v1.0.0 + env: + LUAROCKS_API_KEY: ${{ secrets.LUAROCKS_API_KEY }} + with: + dependencies: | + plenary.nvim + copy_directories: | + doc + detailed_description: | + This plugin automatically configures the haskell-language-server builtin LSP client + and integrates with other Haskell tools. See the README's #features section + for more info. + diff --git a/CHANGELOG.md b/CHANGELOG.md index ebd34241..8ad53bdc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Hover actions: Shorten locations relative to file, package or project. - Only show definition/typeDefinition hover actions if they are in different locations. ### Added +- Rockspec for automatic dependency management by LoaRocks-compatible plugin managers. +- LuaRocks tag release worflow. - `HlsStart`, `HlsStop` and `HlsRestart` commands. - Dynamically load `haskell-language-server` settings JSON from project root, if available. - Health checks, runnable with `:checkhealth haskell-tools`. diff --git a/README.md b/README.md index c46bbb9b..043497f3 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ ![Nix](https://img.shields.io/badge/nix-0175C2?style=for-the-badge&logo=NixOS&logoColor=white) [![Nix build](https://github.com/MrcJkb/haskell-tools.nvim/actions/workflows/nix-build.yml/badge.svg)](https://github.com/MrcJkb/haskell-tools.nvim/actions/workflows/nix-build.yml) +![LuaRocks](https://img.shields.io/luarocks/v/MrcJkb/haskell-tools.nvim?logo=lua&color=purple) [![All Contributors](https://img.shields.io/badge/all_contributors-3-grey.svg?style=flat-square)](#contributors-) diff --git a/haskell-tools.nvim-scm-1.rockspec b/haskell-tools.nvim-scm-1.rockspec new file mode 100644 index 00000000..1698865f --- /dev/null +++ b/haskell-tools.nvim-scm-1.rockspec @@ -0,0 +1,31 @@ +local MODREV, SPECREV = 'scm', '-1' +rockspec_format = '3.0' +package = 'haskell-tools.nvim' +version = MODREV .. SPECREV + +description = { + summary = 'Supercharge your Haskell experience in neovim!', + detailed = [[ + Automatically configures the haskell-language-server neovim client + and integrates with other haskell tools, such as hoogle and fast-tags. + ]], + labels = { 'neovim', 'lsp', 'haskell', 'plugin' }, + homepage = 'https://github.com/MrcJkb/haskell-tools.nvim', + license = 'GPL-2.0', +} + +dependencies = { + 'lua >= 5.1', + 'plenary.nvim', +} + +source = { + url = 'git://github.com/MrcJkb/haskell-tools.nvim', +} + +build = { + type = 'builtin', + copy_directories = { + 'doc', + }, +}