diff --git a/.envrc b/.envrc index 3550a30..d522e34 100644 --- a/.envrc +++ b/.envrc @@ -1 +1,3 @@ -use flake +export VIRTUAL_ENV=venv +layout python +python -c 'import pyparsing' 2>/dev/null || pip install -r scripts/requirements.txt diff --git a/.github/workflows/luarocks.yml b/.github/workflows/luarocks.yml new file mode 100644 index 0000000..999f728 --- /dev/null +++ b/.github/workflows/luarocks.yml @@ -0,0 +1,21 @@ +name: luarocks + +on: + push: + tags: + - 'v*' + +jobs: + tests: + uses: ./.github/workflows/tests.yml + + publish: + needs: tests + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - uses: nvim-neorocks/luarocks-tag-release@v7 + env: + LUAROCKS_API_KEY: ${{ secrets.LUAROCKS_API_KEY }} diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 8b1cc58..4ef3bb1 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -10,14 +10,21 @@ on: - main jobs: - selene: - name: Selene + luacheck: + name: Luacheck runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - - uses: NTBBloodbath/selene-action@v1.0.0 - with: - args: --display-style quiet . + + - name: Prepare + run: | + sudo apt-get update + sudo add-apt-repository universe + sudo apt install luarocks -y + sudo luarocks install luacheck + + - name: Run Luacheck + run: luacheck lua tests stylua: name: StyLua @@ -28,7 +35,7 @@ jobs: uses: JohnnyMorganz/stylua-action@v4 with: token: ${{ secrets.GITHUB_TOKEN }} - version: v2.0.2 + version: v2.1.0 args: --check lua tests typecheck: diff --git a/.luacheckrc b/.luacheckrc new file mode 100644 index 0000000..7efefde --- /dev/null +++ b/.luacheckrc @@ -0,0 +1,19 @@ +max_comment_line_length = false +codes = true + +exclude_files = { + "tests/treesitter", +} + +ignore = { + "212", -- Unused argument + "631", -- Line is too long + "122", -- Setting a readonly global + "542", -- Empty if branch +} + +read_globals = { + "vim", + "a", + "assert", +} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml deleted file mode 100644 index 5d1f13f..0000000 --- a/.pre-commit-config.yaml +++ /dev/null @@ -1,17 +0,0 @@ -minimum_pre_commit_version: '3.5.0' - -repos: - - repo: https://github.com/JohnnyMorganz/StyLua - rev: v2.3.1 - hooks: - - id: stylua-github - name: stylua (Lua formatter) - files: \.lua$ - pass_filenames: true - - - repo: https://github.com/pre-commit/mirrors-prettier - rev: v4.0.0-alpha.8 - hooks: - - id: prettier - name: prettier - files: \.(md|toml|yaml|yml|sh)$ diff --git a/Makefile b/Makefile index db15dd5..897b281 100644 --- a/Makefile +++ b/Makefile @@ -17,7 +17,7 @@ test: .PHONY: lint lint: scripts/nvim-typecheck-action ./scripts/nvim-typecheck-action/typecheck.sh --workdir scripts/nvim-typecheck-action lua - selene --display-style quiet . + luacheck lua tests --formatter plain stylua --check lua tests ## profile: use LuaJIT profiler to profile the plugin @@ -45,4 +45,4 @@ scripts/benchmark.nvim: ## clean: reset the repository to a clean state .PHONY: clean clean: - rm -rf scripts/nvim-typecheck-action .testenv perf/tmp profile.json + rm -rf scripts/nvim-typecheck-action venv .testenv perf/tmp profile.json diff --git a/flake.lock b/flake.lock deleted file mode 100644 index 7501bfa..0000000 --- a/flake.lock +++ /dev/null @@ -1,43 +0,0 @@ -{ - "nodes": { - "nixpkgs": { - "locked": { - "lastModified": 1771207753, - "narHash": "sha256-b9uG8yN50DRQ6A7JdZBfzq718ryYrlmGgqkRm9OOwCE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d1c15b7d5806069da59e819999d70e1cec0760bf", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "root": { - "inputs": { - "nixpkgs": "nixpkgs", - "systems": "systems" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - } - }, - "root": "root", - "version": 7 -} diff --git a/flake.nix b/flake.nix deleted file mode 100644 index 5670f55..0000000 --- a/flake.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ - description = "oil.nvim — Neovim file explorer: edit your filesystem like a buffer"; - - inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; - systems.url = "github:nix-systems/default"; - }; - - outputs = - { - nixpkgs, - systems, - ... - }: - let - forEachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system}); - in - { - devShells = forEachSystem (pkgs: { - default = pkgs.mkShell { - packages = [ - pkgs.prettier - pkgs.stylua - pkgs.selene - ]; - }; - }); - }; -} diff --git a/oil.nvim-scm-1.rockspec b/oil.nvim-scm-1.rockspec new file mode 100644 index 0000000..e58c602 --- /dev/null +++ b/oil.nvim-scm-1.rockspec @@ -0,0 +1,21 @@ +rockspec_format = '3.0' +package = 'oil.nvim' +version = 'scm-1' + +source = { + url = 'git+https://github.com/barrettruth/oil.nvim.git', +} + +description = { + summary = 'Neovim file explorer: edit your filesystem like a buffer', + homepage = 'https://github.com/barrettruth/oil.nvim', + license = 'MIT', +} + +dependencies = { + 'lua >= 5.1', +} + +build = { + type = 'builtin', +} diff --git a/selene.toml b/selene.toml deleted file mode 100644 index 96cf5ab..0000000 --- a/selene.toml +++ /dev/null @@ -1 +0,0 @@ -std = 'vim'