-
Notifications
You must be signed in to change notification settings - Fork 945
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
Proposition of architecture refactoring for Super-Linter V4 (in progress) #791
Conversation
* Display tests durations * Code coverage increase * + code coverage * Accelerate test cases + raku codecov * Docker build time log
* Display tests durations * Code coverage increase * + code coverage * Accelerate test cases + raku codecov * Docker build time log * Use setup.py for dependencies * Update Dockerfile * ARM + C# + install at descriptor level * Display date more nicely * Dotnet fix * Dotnet fix ";" * try fix arm & dotnet * fixes again * againnnnn * allezzzz * Back * Fix arm * Remove CSharp from this PR * format
* C and C++ Linters * Fix c / c++ tests
* fix version * Update Pipfile * adding it * didnt mean to degrade this * Bump @stoplight/spectral from 5.5.0 to 5.6.0 in /dependencies Bumps [@stoplight/spectral](https://github.com/stoplightio/spectral) from 5.5.0 to 5.6.0. - [Release notes](https://github.com/stoplightio/spectral/releases) - [Changelog](https://github.com/stoplightio/spectral/blob/v5.6.0/CHANGELOG.md) - [Commits](stoplightio/spectral@v5.5.0...v5.6.0) Signed-off-by: dependabot[bot] <support@github.com> * Remove unneeded variables and eval the rest * Initialize all log-related ASAP * Bump yamllint from 1.24.2 to 1.25.0 in /dependencies Bumps [yamllint](https://github.com/adrienverge/yamllint) from 1.24.2 to 1.25.0. - [Release notes](https://github.com/adrienverge/yamllint/releases) - [Changelog](https://github.com/adrienverge/yamllint/blob/master/CHANGELOG.rst) - [Commits](adrienverge/yamllint@v1.24.2...v1.25.0) Signed-off-by: dependabot[bot] <support@github.com> * Bump cfn-lint from 0.36.1 to 0.37.0 in /dependencies Bumps [cfn-lint](https://github.com/aws-cloudformation/cfn-python-lint) from 0.36.1 to 0.37.0. - [Release notes](https://github.com/aws-cloudformation/cfn-python-lint/releases) - [Changelog](https://github.com/aws-cloudformation/cfn-python-lint/blob/master/CHANGELOG.md) - [Commits](aws-cloudformation/cfn-lint@v0.36.1...v0.37.0) Signed-off-by: dependabot[bot] <support@github.com> * Remove unneeded variables from Dockerfile * Correct path to linters directory * Bump snakefmt from 0.2.0 to 0.2.1 in /dependencies Bumps [snakefmt](https://github.com/snakemake/snakefmt) from 0.2.0 to 0.2.1. - [Release notes](https://github.com/snakemake/snakefmt/releases) - [Changelog](https://github.com/snakemake/snakefmt/blob/master/CHANGELOG.md) - [Commits](snakemake/snakefmt@0.2.0...0.2.1) Signed-off-by: dependabot[bot] <support@github.com> * Bump snakemake from 5.25.0 to 5.26.0 in /dependencies Bumps [snakemake](https://github.com/snakemake/snakemake) from 5.25.0 to 5.26.0. - [Release notes](https://github.com/snakemake/snakemake/releases) - [Commits](snakemake/snakemake@v5.25.0...v5.26.0) Signed-off-by: dependabot[bot] <support@github.com> * Bump markdownlint-cli from 0.23.2 to 0.24.0 in /dependencies Bumps [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli) from 0.23.2 to 0.24.0. - [Release notes](https://github.com/igorshubovych/markdownlint-cli/releases) - [Commits](igorshubovych/markdownlint-cli@v0.23.2...v0.24.0) Signed-off-by: dependabot[bot] <support@github.com> * Dynamically initialize FILE_ARRAY variables * Set FILE_ARRAY_EDITORCONFIG * Populate FILE_ARRAY_DOCKERFILE_HADOLINT * Bump flake8 from 3.8.3 to 3.8.4 in /dependencies Bumps [flake8](https://gitlab.com/pycqa/flake8) from 3.8.3 to 3.8.4. - [Release notes](https://gitlab.com/pycqa/flake8/tags) - [Commits](https://gitlab.com/pycqa/flake8/compare/3.8.3...3.8.4) Signed-off-by: dependabot[bot] <support@github.com> * Bump eslint-plugin-jest from 24.0.2 to 24.1.0 in /dependencies Bumps [eslint-plugin-jest](https://github.com/jest-community/eslint-plugin-jest) from 24.0.2 to 24.1.0. - [Release notes](https://github.com/jest-community/eslint-plugin-jest/releases) - [Changelog](https://github.com/jest-community/eslint-plugin-jest/blob/master/CHANGELOG.md) - [Commits](jest-community/eslint-plugin-jest@v24.0.2...v24.1.0) Signed-off-by: dependabot[bot] <support@github.com> * Remove unnecessary --update for apk in Dockerfile There are two `apk add` use both `--update` and `--no-cache` parameter, which is unnecessary, usually should use only `--no-cache` to prevent leaving cache files, just like the other `apk add` in line 249 * Simplify shfmt install by using prebuilt binary * Bump snakemake from 5.26.0 to 5.26.1 in /dependencies Bumps [snakemake](https://github.com/snakemake/snakemake) from 5.26.0 to 5.26.1. - [Release notes](https://github.com/snakemake/snakemake/releases) - [Commits](snakemake/snakemake@v5.26.0...v5.26.1) Signed-off-by: dependabot[bot] <support@github.com> * Fix documentation error with VALIDATE_MD being renamed to VALIDATE_MARKDOWN * Bump cfn-lint from 0.37.0 to 0.37.1 in /dependencies Bumps [cfn-lint](https://github.com/aws-cloudformation/cfn-python-lint) from 0.37.0 to 0.37.1. - [Release notes](https://github.com/aws-cloudformation/cfn-python-lint/releases) - [Changelog](https://github.com/aws-cloudformation/cfn-python-lint/blob/master/CHANGELOG.md) - [Commits](aws-cloudformation/cfn-lint@v0.37.0...v0.37.1) Signed-off-by: dependabot[bot] <support@github.com> * Bump snakefmt from 0.2.1 to 0.2.2 in /dependencies Bumps [snakefmt](https://github.com/snakemake/snakefmt) from 0.2.1 to 0.2.2. - [Release notes](https://github.com/snakemake/snakefmt/releases) - [Changelog](https://github.com/snakemake/snakefmt/blob/master/CHANGELOG.md) - [Commits](snakemake/snakefmt@0.2.1...0.2.2) Signed-off-by: dependabot[bot] <support@github.com> * Centralize file list building logic in buildFileList.sh * Dynamically load linter rules * adding rules * fix it * fix pip * adding rules * Add support for Terragrunt files * Add Terragrunt Co-authored-by: Lucas Gravley <29484535+admiralAwkbar@users.noreply.github.com> Co-authored-by: Lukas Gravley <admiralawkbar@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Marco Ferrari <ferrari.marco@gmail.com> Co-authored-by: Steven Hunt <st3v3nhunt@users.noreply.github.com> Co-authored-by: Peter Dave Hello <hsu@peterdavehello.org> Co-authored-by: Omeed Musavi <omusavi@microsoft.com> Co-authored-by: Tim Jones <timniverse@gmail.com>
…er MD doc (#46) * Installation info in linters doc * Add descriptor label * :) * Add parent descriptors install in linter doc * First icons :) * Add descriptor icons * Display icons in html to keep max size * Nicer table * Default icon * ready !
* Display tests durations * Code coverage increase * + code coverage * Accelerate test cases + raku codecov * Docker build time log * Use setup.py for dependencies * Update Dockerfile * ARM + C# + install at descriptor level * Display date more nicely * Dotnet fix * Dotnet fix ";" * try fix arm & dotnet * fixes again * againnnnn * allezzzz * Back * Fix arm * Fix c#
…ry (#48) * TAP V0 * TAP test cases * Fix tap tests * PR message * Fix post comments * et tu tap tap tap * try several report tap expect file names * Skipped test cases on root avoided * Fix tests reports * pytablewriter in setup.py * ignore ponctuation in tap comparison * tap z y tout * no detail when error ok * Only warning if TAP report messages are different * Fix 'fail_contains' filtering with regexes * Rename openapi test files * Disable terraform TAP report test: error just if file order * Rename action * Fix PR message generation * Update SuperLinter.py * Fix post PR comment * Fix PAT + install comments * quickfix github exception
…le + v3 legacy variables (#50) * v0 * Manage DISABLE_ERRORS * Disable errors on linters + doc * legacy variable ERROR_ON_MISSING_EXEC_BIT * contributing * Fix editorconfig * Use latest packages * Bash exec + build * clojure latest version from bash , not docker image * + libstdc++6 * build * clojure * cloj * clojure fix
Hi @nvuillam! Great work and especially in such a short amount of time! The super-linter project is not going to switch over to python as the maintainers are dedicated to continuing it in |
Ok, so hard-fork it is, but that's a little bite sad: on one side there will be more users, and on the other side more capabilities... |
Why
After contributing and discussing on this repo issues and PRs, it became clear that it was more and more difficult to maintain and make evolve Super-Linter
I thought that a more modern language would help, and as there is a lot of scripting, Python appeared like a good choice for such requirements, with its simple syntax and heavy community adoption
Here is my proposition of architecture refactoring for Super-Linter V4: a core runtime refactoring, but keeping as much as possible existing elements
Legend:
Targets
ISO capabilities with V3
Simplify
Improve robustness & stability
New features & improvements
What we could do in future versions from this new architecture
.superlinter
file at the root of the the folderLanguages / formats and linters managed
Languages
Formats
Tooling formats
Questions
Dears Super-Linter maintainers and contributors: (@admiralAwkbar , @GaboFDC , @ferrarimarco ... )
Dear contributors: