Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CQ: Add .editorconfig and validate repo against it #4792

Draft
wants to merge 17 commits into
base: main
Choose a base branch
from

Conversation

echoix
Copy link
Member

@echoix echoix commented Dec 1, 2024

To be rebased after #4790 and #4791, to drop repeated commits. This is intended to be a draft, and would like to separate the change of line endings stored to CRLF for some files (plus the .gitattributes file change) to be in another commit, easier to cherry-pick afterwards.

With an .editorconfig file, most editors will adjust some preferences to match these settings. For example, setting to trim lines on some file types will have the whitespace trimmed when saving the file, preventing the situation where I regularly need to remove some files that slept through, as we had no CI to enforce it. Setting whether spaces or tabs are used, the indent size, whether to always ensure a new line is present on save. Plugins can accept more domain-specific settings, but appart from the couple of basic properties that are supported by all implementations, the rest is more like a preference if the plugins support the custom properies. For example, Intellij (Pycharm) uses many keys supported only by them, and in CSharp+Visual Basic, editorconfig files are used to select ALL the formatting choices and enable/silence/change the severity of some warnings, supported with more than just the Visual Studio IDE.

This PR:

  • Sets up an .editorconfig file https://editorconfig.org/. Some rules will need to be introduced later on, as too many files are affected at once
  • Uses editorconfig-checker to check in CI (through super-linter) and with pre-commit.
  • Creates a .gitattributes file to ensure Git normalizes some files, like .bat and .cmd as CRLF no matter what the platform is. https://git-scm.com/docs/gitattributes
  • Fixes some files so that editorconfig-checker would not fail the run.

@echoix echoix requested a review from neteler December 1, 2024 04:14
@echoix echoix marked this pull request as draft December 1, 2024 04:15
@github-actions github-actions bot added windows Microsoft Windows specific CI Continuous integration vector Related to vector data processing HTML Related code is in HTML database Related to database management libraries module docs raster3d labels Dec 1, 2024
@echoix
Copy link
Member Author

echoix commented Dec 2, 2024

Theres 7 bat files to change line endings too

@echoix echoix force-pushed the editorconfig-checker branch 2 times, most recently from 3ea0708 to ba1d323 Compare December 8, 2024 23:17
@echoix echoix force-pushed the editorconfig-checker branch from ba1d323 to a9c81e7 Compare December 22, 2024 14:19
@echoix echoix force-pushed the editorconfig-checker branch from a9c81e7 to 025c29b Compare December 22, 2024 14:27
@github-actions github-actions bot added the JavaScript Related code is in JavaScript label Dec 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Continuous integration database Related to database management docs HTML Related code is in HTML JavaScript Related code is in JavaScript libraries module raster3d vector Related to vector data processing windows Microsoft Windows specific
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant