Merge pull request #152 from NotAShelf/feature/ci

CI: add more stict checking
This commit is contained in:
raf 2023-10-20 12:04:05 +03:00 committed by GitHub
commit b562e8579e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 97 additions and 13 deletions

28
.editorconfig Normal file
View file

@ -0,0 +1,28 @@
root = true
[*]
charset = utf-8
end_of_line = lf
indent_style = tab
indent_size = 4
insert_final_newline = true
tab_width = 4
trim_trailing_whitespace = true
[*.md]
indent_style = space
indent_size = 2
trim_trailing_whitespace = false
[*.{nix,yml,yaml}]
indent_style = space
indent_size = 2
tab_width = 2
[*.{diff,patch}]
end_of_line = unset
insert_final_newline = unset
trim_trailing_whitespace = unset
[*.lock]
indent_size = unset

11
.github/dependabot.yml vendored Normal file
View file

@ -0,0 +1,11 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
open-pull-requests-limit: 15
reviewers:
- NotAShelf
assignees:
- NotAShelf

47
.github/workflows/editorconfig.yml vendored Normal file
View file

@ -0,0 +1,47 @@
name: "Check validity of .editorconfig"
permissions: read-all
on:
pull_request:
jobs:
check-editorconfig:
runs-on: ubuntu-latest
if: "!contains(github.event.pull_request.title, '[skip ci]')"
steps:
- name: Get list of changed files from PR
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh api \
repos/notashelf/neovim-flake/pulls/${{github.event.number}}/files --paginate \
| jq '.[] | select(.status != "removed") | .filename' \
> "$HOME/changed_files"
- name: Print list of changed files
run: |
cat "$HOME/changed_files"
- name: Checkout
uses: actions/checkout@v4
with:
ref: refs/pull/${{ github.event.pull_request.number }}/merge
- name: Install Nix
uses: DeterminateSystems/nix-installer-action@main
- uses: DeterminateSystems/magic-nix-cache-action@main
- name: Checking EditorConfig
shell: bash
run: |
cat "$HOME/changed_files" | nix-shell -p editorconfig-checker.out --run 'xargs -r editorconfig-checker -disable-indent-size --verbose'
echo -n "Check status: $?"
- name: Fail Gracefully
if: ${{ failure() }}
shell: bash
run: |
echo "::error:: Current formatting does not fit convention provided by .editorconfig located in the project root."
echo "Please make sure your editor properly integrates editorconfig. See https://editorconfig.org/#download for more."
exit 1

2
.gitignore vendored
View file

@ -10,5 +10,3 @@ result/
# Ignore log files generated by my debuggers # Ignore log files generated by my debuggers
*.log *.log
*.log.* *.log.*
#

View file

@ -19,7 +19,7 @@ https://github.com/notashelf[notashelf]:
* There is now a scrollbar on active buffers, which can highlight errors by hooking to your LSPs. This is on by default, but can be toggled off under `vim.visuals` if seen necessary. * There is now a scrollbar on active buffers, which can highlight errors by hooking to your LSPs. This is on by default, but can be toggled off under `vim.visuals` if seen necessary.
* Discord Rich Presence has been added through `presence.nvim` for those who want to flex that they are using the *superior* text editor. * Discord Rich Presence has been added through `presence.nvim` for those who want to flex that they are using the *superior* text editor.
* An icon picker is now available with telescope integration. You can use `:IconPickerInsert` or `:IconPickerYank` to add icons to your code. * An icon picker is now available with telescope integration. You can use `:IconPickerInsert` or `:IconPickerYank` to add icons to your code.
@ -29,7 +29,7 @@ https://github.com/notashelf[notashelf]:
* Most UI components of Neovim have been replaced through the help of `noice.nvim`. There are also notifications and custom UI elements available for Neovim messages and prompts. * Most UI components of Neovim have been replaced through the help of `noice.nvim`. There are also notifications and custom UI elements available for Neovim messages and prompts.
* A (floating by default) terminal has been added through `toggleterm.nvim`. * A (floating by default) terminal has been added through `toggleterm.nvim`.
* Harness the power of ethical (`tabnine.nvim`) and not-so-ethical (`copilot.lua`) AI by those new assistant plugins. Both are off by default, TabNine needs to be wrapped before it's working. * Harness the power of ethical (`tabnine.nvim`) and not-so-ethical (`copilot.lua`) AI by those new assistant plugins. Both are off by default, TabNine needs to be wrapped before it's working.
@ -37,10 +37,10 @@ https://github.com/notashelf[notashelf]:
* Re-open last visited buffers via `nvim-session-manager`. Disabled by default as deleting buffers seems to be problematic at the moment. * Re-open last visited buffers via `nvim-session-manager`. Disabled by default as deleting buffers seems to be problematic at the moment.
* Most of NvimTree's configuration options have been changed with some options being toggled to off by default. * Most of NvimTree's configuration options have been changed with some options being toggled to off by default.
* Lualine had its configuration simplified and style toned down. Less color, more info. * Lualine had its configuration simplified and style toned down. Less color, more info.
* Modules where multiple plugin configurations were in the same directory have been simplified. Each plugin inside a single module gets its own directory to be imported. * Modules where multiple plugin configurations were in the same directory have been simplified. Each plugin inside a single module gets its own directory to be imported.
* Separate config options with the same parent attribute have been merged into one for simplicity. * Separate config options with the same parent attribute have been merged into one for simplicity.

View file

@ -3,13 +3,13 @@
Release 0.3 had to come out beore I wanted it to due to Neovim 0.9 dropping into nixpkgs-unstable. The treesitter changes Release 0.3 had to come out beore I wanted it to due to Neovim 0.9 dropping into nixpkgs-unstable. The treesitter changes
have prompted a treesitter rework, which was followed by reworking the languages system. Most of the changes to those are downstreamed have prompted a treesitter rework, which was followed by reworking the languages system. Most of the changes to those are downstreamed
from the original repository. The feature requests that was originally planned for 0.3 have been moved to 0.4, which from the original repository. The feature requests that was originally planned for 0.3 have been moved to 0.4, which
should come out soon. should come out soon.
[[sec-release-0.3-changelog]] [[sec-release-0.3-changelog]]
=== Changelog === Changelog
* We have transitioned to flake-parts, from flake-utils to extend the flexibility of this flake. This means the flake structure * We have transitioned to flake-parts, from flake-utils to extend the flexibility of this flake. This means the flake structure
is different than usual, but the functionality remains the same. is different than usual, but the functionality remains the same.
* We now provide a home-manager module. Do note that it is still far from perfect, but it works. * We now provide a home-manager module. Do note that it is still far from perfect, but it works.
@ -24,7 +24,7 @@ display the correct titles instad of `+prefix`
* Most of the modules have been refactored to separate `config` and `options` attributes. * Most of the modules have been refactored to separate `config` and `options` attributes.
* Darwin has been deprecated as the zig package is marked as broken. We will attempt to use the zig overlay to return Darwin * Darwin has been deprecated as the zig package is marked as broken. We will attempt to use the zig overlay to return Darwin
support. support.
* `Fidget.nvim` has been added as a neat visual addition for LSP installations. * `Fidget.nvim` has been added as a neat visual addition for LSP installations.
@ -47,12 +47,12 @@ support.
* For <<opt-vim.visuals.indentBlankline.fillChar>> and <<opt-vim.visuals.indentBlankline.eolChar>> turning them off should use `null` rather than `""` now. * For <<opt-vim.visuals.indentBlankline.fillChar>> and <<opt-vim.visuals.indentBlankline.eolChar>> turning them off should use `null` rather than `""` now.
* Transparency has been made optional and has been disabled by default. <<opt-vim.theme.transparent>> option can be used to enable or * Transparency has been made optional and has been disabled by default. <<opt-vim.theme.transparent>> option can be used to enable or
disable transparency for your configuration. disable transparency for your configuration.
* Fixed deprecated configuration method for Tokyonight, and added new style "moon" * Fixed deprecated configuration method for Tokyonight, and added new style "moon"
* Dart language support as well as extended flutter support has been added. Thanks to @FlafyDev for his contributions towards Dart * Dart language support as well as extended flutter support has been added. Thanks to @FlafyDev for his contributions towards Dart
language support. language support.
* Elixir language support has been added through `elixir-tools.nvim`. * Elixir language support has been added through `elixir-tools.nvim`.
@ -61,7 +61,7 @@ language support.
* `modes.nvim` has been added to the UI plugins as a minor error highlighter. * `modes.nvim` has been added to the UI plugins as a minor error highlighter.
* `smartcollumn.nvim` has been added to dynamically display a colorcolumn when the limit has been exceeded, providing * `smartcollumn.nvim` has been added to dynamically display a colorcolumn when the limit has been exceeded, providing
per-buftype column position and more. per-buftype column position and more.
* `project.nvim` has been added for better project management inside Neovim. * `project.nvim` has been added for better project management inside Neovim.

View file

@ -5,7 +5,7 @@
[[sec-release-0.5-changelog]] [[sec-release-0.5-changelog]]
=== Changelog === Changelog
https://github.com/vagahbond[vagahbond]: https://github.com/vagahbond[vagahbond]:
* Added phan language server for PHP. * Added phan language server for PHP.
* Added phpactor language server for PHP. * Added phpactor language server for PHP.