diff --git a/.automation/test/spell/.proselintrc b/.automation/test/spell/.proselintrc.json similarity index 100% rename from .automation/test/spell/.proselintrc rename to .automation/test/spell/.proselintrc.json diff --git a/.cspell.json b/.cspell.json index 14f1374de81..62f4d31f8a2 100644 --- a/.cspell.json +++ b/.cspell.json @@ -1040,6 +1040,7 @@ "multline", "Musavi", "musl", + "musllinux", "mvdan", "mycompany", "mydebugpipe", @@ -1271,6 +1272,7 @@ "pycache", "pychalk", "pycharm", + "pybind", "pycodestyle", "pydantic", "pydocstyle", diff --git a/Dockerfile b/Dockerfile index aee3a898e20..52a8567620c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -393,7 +393,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -506,6 +506,9 @@ RUN apk -U --no-cache upgrade \ R \ R-dev \ R-doc \ + build-base \ + re2-dev \ + py3-pybind11-dev \ unzip \ npm \ nodejs-current \ diff --git a/flavors/c_cpp/Dockerfile b/flavors/c_cpp/Dockerfile index b509ffa1d41..4f9b4080e9a 100644 --- a/flavors/c_cpp/Dockerfile +++ b/flavors/c_cpp/Dockerfile @@ -195,7 +195,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -257,6 +257,9 @@ RUN apk -U --no-cache upgrade \ cmd:clang-format \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/cupcake/Dockerfile b/flavors/cupcake/Dockerfile index 4928b6dd4a4..534ab7d5fa5 100644 --- a/flavors/cupcake/Dockerfile +++ b/flavors/cupcake/Dockerfile @@ -303,7 +303,7 @@ ARG GEM_RUBOCOP_RSPEC_VERSION=3.10.2 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -391,6 +391,9 @@ RUN apk -U --no-cache upgrade \ cppcheck \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ unzip \ libxml2-dev \ libxml2-utils \ diff --git a/flavors/documentation/Dockerfile b/flavors/documentation/Dockerfile index 5b61a969a55..168828abbff 100644 --- a/flavors/documentation/Dockerfile +++ b/flavors/documentation/Dockerfile @@ -193,7 +193,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -253,6 +253,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/dotnet/Dockerfile b/flavors/dotnet/Dockerfile index 47b6da0f902..bde5bed15c8 100644 --- a/flavors/dotnet/Dockerfile +++ b/flavors/dotnet/Dockerfile @@ -219,7 +219,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -281,6 +281,9 @@ RUN apk -U --no-cache upgrade \ cppcheck \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/dotnetweb/Dockerfile b/flavors/dotnetweb/Dockerfile index bb6d87971bb..1630870c00f 100644 --- a/flavors/dotnetweb/Dockerfile +++ b/flavors/dotnetweb/Dockerfile @@ -247,7 +247,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -317,6 +317,9 @@ RUN apk -U --no-cache upgrade \ cppcheck \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/go/Dockerfile b/flavors/go/Dockerfile index 25c94f50089..e7fd0fd0569 100644 --- a/flavors/go/Dockerfile +++ b/flavors/go/Dockerfile @@ -207,7 +207,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -269,6 +269,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/java/Dockerfile b/flavors/java/Dockerfile index 7c0d574aadd..0c5e3a8d3b5 100644 --- a/flavors/java/Dockerfile +++ b/flavors/java/Dockerfile @@ -205,7 +205,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -265,6 +265,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/javascript/Dockerfile b/flavors/javascript/Dockerfile index 008e186ff18..4d7dccba306 100644 --- a/flavors/javascript/Dockerfile +++ b/flavors/javascript/Dockerfile @@ -225,7 +225,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -293,6 +293,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/php/Dockerfile b/flavors/php/Dockerfile index 7f3b939f0df..647f5a9ddaa 100644 --- a/flavors/php/Dockerfile +++ b/flavors/php/Dockerfile @@ -207,7 +207,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -282,6 +282,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/python/Dockerfile b/flavors/python/Dockerfile index 2852d6773ab..ba781727db4 100644 --- a/flavors/python/Dockerfile +++ b/flavors/python/Dockerfile @@ -225,7 +225,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -286,6 +286,9 @@ RUN apk -U --no-cache upgrade \ cppcheck \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/ruby/Dockerfile b/flavors/ruby/Dockerfile index f8bb9f2f290..c0207309c41 100644 --- a/flavors/ruby/Dockerfile +++ b/flavors/ruby/Dockerfile @@ -205,7 +205,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -265,6 +265,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/rust/Dockerfile b/flavors/rust/Dockerfile index 1afb1813561..be7df73c4f0 100644 --- a/flavors/rust/Dockerfile +++ b/flavors/rust/Dockerfile @@ -193,7 +193,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -255,6 +255,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/salesforce/Dockerfile b/flavors/salesforce/Dockerfile index cc3c4c5fe27..8172a87512d 100644 --- a/flavors/salesforce/Dockerfile +++ b/flavors/salesforce/Dockerfile @@ -205,7 +205,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -266,6 +266,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/flavors/swift/Dockerfile b/flavors/swift/Dockerfile index dd2aff5c350..e2a3b2a658d 100644 --- a/flavors/swift/Dockerfile +++ b/flavors/swift/Dockerfile @@ -193,7 +193,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -255,6 +255,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ unzip \ libxml2-dev \ libxml2-utils \ diff --git a/flavors/terraform/Dockerfile b/flavors/terraform/Dockerfile index c2625f33814..cc7ec28e83d 100644 --- a/flavors/terraform/Dockerfile +++ b/flavors/terraform/Dockerfile @@ -201,7 +201,7 @@ ARG PIP_SNAKEFMT_VERSION=2.0.3 # renovate: datasource=npm depName=cspell ARG NPM_CSPELL_VERSION=10.0.1 # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=codespell ARG PIP_CODESPELL_VERSION=2.4.2 # renovate: datasource=pypi depName=sqlfluff @@ -263,6 +263,9 @@ RUN apk -U --no-cache upgrade \ py3-pyflakes \ openjdk17 \ helm \ + build-base \ + re2-dev \ + py3-pybind11-dev \ libxml2-dev \ libxml2-utils \ libgcc \ diff --git a/linters/spell_proselint/Dockerfile b/linters/spell_proselint/Dockerfile index 6a567c663ae..7d68a983d9d 100644 --- a/linters/spell_proselint/Dockerfile +++ b/linters/spell_proselint/Dockerfile @@ -55,7 +55,7 @@ RUN python -m pip install --no-cache-dir "wheel>=0.46.2" "setuptools>=75.8.0" \ ARG TARGETPLATFORM ARG TARGETARCH # renovate: datasource=pypi depName=proselint -ARG PIP_PROSELINT_VERSION=0.14.0 +ARG PIP_PROSELINT_VERSION=0.16.0 # renovate: datasource=pypi depName=pip ARG PIP_PIP_VERSION=26.1.2 # renovate: datasource=pypi depName=virtualenv @@ -87,6 +87,9 @@ RUN apk -U --no-cache upgrade \ musl-dev \ openssh \ su-exec \ + build-base \ + re2-dev \ + py3-pybind11-dev \ && git config --global core.autocrlf true #APK__END diff --git a/megalinter/descriptors/spell.megalinter-descriptor.yml b/megalinter/descriptors/spell.megalinter-descriptor.yml index 09c8ed3b844..b428b3de951 100644 --- a/megalinter/descriptors/spell.megalinter-descriptor.yml +++ b/megalinter/descriptors/spell.megalinter-descriptor.yml @@ -69,7 +69,7 @@ linters: - ".md" - ".txt" active_only_if_file_found: - - .proselintrc + - .proselintrc.json - proselint/config.json linter_text: | **proselint** is a powerful linter for English prose that places the world's greatest writers and editors by your side, offering intelligent suggestions to improve your writing quality and style. @@ -89,18 +89,31 @@ linters: linter_rules_url: https://github.com/amperser/proselint#checks linter_rules_configuration_url: https://github.com/amperser/proselint#checks cli_config_arg_name: --config - config_file_name: .proselintrc + config_file_name: .proselintrc.json cli_lint_mode: list_of_files + # proselint 0.16.0 moved linting under the `check` subcommand + # (`proselint check `); the bare `proselint ` form was removed + cli_lint_extra_args: + - check cli_lint_errors_count: regex_count cli_lint_errors_regex: ":([0-9]+):([0-9]+): (.*)" - cli_version_arg_name: "-v" + # proselint 0.16.0 replaced `proselint -v` with the `version` subcommand + cli_version_arg_name: version examples: - - "proselint --config .proselintrc myfile.md myfile2.txt myfile3.rst" + - "proselint check --config .proselintrc.json myfile.md myfile2.txt myfile3.rst" install: + apk: + # proselint >=0.16.0 depends on google-re2, which has no musllinux + # wheel and must be compiled from source: needs a C++ toolchain + # (build-base), the system RE2 library headers (re2-dev, which also + # pulls abseil) and pybind11 headers (py3-pybind11-dev). + - build-base + - re2-dev + - py3-pybind11-dev dockerfile: - |- # renovate: datasource=pypi depName=proselint - ARG PIP_PROSELINT_VERSION=0.14.0 + ARG PIP_PROSELINT_VERSION=0.16.0 pip: - proselint==${PIP_PROSELINT_VERSION} supported_platforms: