diff --git a/.github/renovate.json5 b/.github/renovate.json5 new file mode 100644 index 0000000000..6a7ae10a7e --- /dev/null +++ b/.github/renovate.json5 @@ -0,0 +1,88 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + extends: [ + "config:base", + // Required to not pin dependencies to _exact_ versions (pip) + ":preserveSemverRanges", + "group:monorepos", + "helpers:pinGitHubActionDigests", + ":semanticPrefixFixDepsChoreOthers", + ":dependencyDashboard", + ], + + // Added for posterity how to let Renovate manage version-branches + baseBranches: ["main", "/^release\\/.*/"], + additionalBranchPrefix: "{{baseBranch}}/", + commitMessagePrefix: "{{baseBranch}}: ", + + pip_requirements: { + // fileMatch default: (^|/)([\\w-]*)requirements\\.(txt|pip)$ + "fileMatch": ["(^|/)([\\w-]*)requirements.*\\.txt$"], + }, + + packageRules: [ + { + matchManagers: ["github-actions"], + matchUpdateTypes: ["major", "minor", "patch", "digest"], + automerge: true, + platformAutomerge: true, + }, + + // Check for updates, merge automatically + { + matchManagers: [ + "gradle", "gradle-wrapper", + "pip_requirements", "pip_setup", "poetry", "setup-cfg", + "dockerfile", "devcontainer", "docker-compose"], + matchUpdateTypes: ["minor", "patch"], + automerge: true, + platformAutomerge: true, + }, + + // Check for major updates, but do not merge automatically + { + matchManagers: [ + "gradle", "gradle-wrapper", + "pip_requirements", "pip_setup", "poetry", "setup-cfg", + "dockerfile", "devcontainer", "docker-compose"], + matchUpdateTypes: ["major"], + automerge: false, + }, + + // Reduce awssdk update frequency noise (awssdk has daily releases) + { + matchManagers: ["gradle"], + matchPackagePrefixes: ["software.amazon.awssdk"], + extends: ["schedule:weekly"], + }, + + // Turn off major & minor version updates on version-branches + { + matchBaseBranches: ["/^release/.*/"], + matchUpdateTypes: ["major", "minor"], + enabled: false + }, + ], + + // Max 50 PRs in total, 5 per hour + prConcurrentLimit: 50, + prHourlyLimit: 5, +} diff --git a/.github/workflows/check-md-link.yml b/.github/workflows/check-md-link.yml index c71dc5fd8f..cd40813ec1 100644 --- a/.github/workflows/check-md-link.yml +++ b/.github/workflows/check-md-link.yml @@ -43,7 +43,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@master - - uses: gaurav-nelson/github-action-markdown-link-check@v1 + - uses: gaurav-nelson/github-action-markdown-link-check@5c5dfc0ac2e225883c0e5f03a85311ec2830d368 # v1 with: config-file: '.github/workflows/check-md-link-config.json' folder-path: '., docs, regtests, regtests/client/python/docs, regtests/client/python' diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 97ce4e2d76..ace81effe7 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -40,9 +40,9 @@ jobs: contents: read steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 - name: Set up JDK 21 - uses: actions/setup-java@v4 + uses: actions/setup-java@2dfa2011c5b2a0f1489bf9e433881c92c1631f88 # v4 with: java-version: '21' distribution: 'temurin' @@ -63,7 +63,7 @@ jobs: run: ./gradlew test - name: Archive test results - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4 if: always() with: name: upload-test-artifacts diff --git a/.github/workflows/regtest.yml b/.github/workflows/regtest.yml index b7f095c08e..637ece4277 100644 --- a/.github/workflows/regtest.yml +++ b/.github/workflows/regtest.yml @@ -32,7 +32,7 @@ jobs: contents: read steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 - name: fix permissions run: mkdir -p regtests/output && chmod 777 regtests/output && chmod 777 regtests/t_*/ref/* - name: Regression Test diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 2533507350..91eaa40a60 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -22,7 +22,7 @@ jobs: stale: runs-on: ubuntu-22.04 steps: - - uses: actions/stale@28ca1036281a5e5922ead5184a1bbf96e5fc984e + - uses: actions/stale@3f3b0175e8c66fb49b9a6d5a0cd1f8436d4c3ab6 with: days-before-close: 5 days-before-stale: 30 diff --git a/gradle/baselibs.versions.toml b/gradle/baselibs.versions.toml index 5391dcd62d..c127c2d4e8 100644 --- a/gradle/baselibs.versions.toml +++ b/gradle/baselibs.versions.toml @@ -20,5 +20,5 @@ [libraries] errorprone = { module = "net.ltgt.gradle:gradle-errorprone-plugin", version = "4.0.1" } idea-ext = { module = "gradle.plugin.org.jetbrains.gradle.plugin.idea-ext:gradle-idea-ext", version = "1.1.8" } -license-report = { module = "com.github.jk1:gradle-license-report", version = "2.8" } +license-report = { module = "com.github.jk1:gradle-license-report", version = "2.9" } spotless = { module = "com.diffplug.spotless:spotless-plugin-gradle", version = "6.25.0" } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 49a1106a71..3c279519c3 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -21,7 +21,7 @@ hadoop = "3.4.0" iceberg = "1.5.0" dropwizard = "4.0.8" -slf4j = "2.0.13" +slf4j = "2.0.16" swagger = "1.6.14" [bundles] @@ -34,7 +34,7 @@ swagger = "1.6.14" # assertj-core = { module = "org.assertj:assertj-core", version = "3.26.3" } auth0-jwt = { module = "com.auth0:java-jwt", version = "4.4.0" } -awssdk-bom = { module = "software.amazon.awssdk:bom", version = "2.26.31" } +awssdk-bom = { module = "software.amazon.awssdk:bom", version = "2.27.21" } azuresdk-bom = { module = "com.azure:azure-sdk-bom", version = "1.2.27" } bouncycastle-bcprov = { module = "org.bouncycastle:bcprov-jdk18on", version = "1.78.1" } caffeine = { module = "com.github.ben-manes.caffeine:caffeine", version = "3.1.8" } @@ -42,7 +42,7 @@ commons-codec1 = { module = "commons-codec:commons-codec", version = "1.17.1" } commons-lang3 = { module = "org.apache.commons:commons-lang3", version = "3.17.0" } dropwizard-bom = { module = "io.dropwizard:dropwizard-bom", version.ref = "dropwizard" } eclipselink = { module = "org.eclipse.persistence:eclipselink", version = "4.0.4" } -errorprone = { module = "com.google.errorprone:error_prone_core", version = "2.29.2" } +errorprone = { module = "com.google.errorprone:error_prone_core", version = "2.32.0" } google-cloud-storage-bom = { module = "com.google.cloud:google-cloud-storage-bom", version = "2.42.0" } guava = { module = "com.google.guava:guava", version = "33.3.0-jre" } h2 = { module = "com.h2database:h2", version = "2.3.232" } @@ -53,27 +53,27 @@ iceberg-bom = { module = "org.apache.iceberg:iceberg-bom", version.ref = "iceber jackson-bom = { module = "com.fasterxml.jackson:jackson-bom", version = "2.17.2" } jakarta-annotation-api = { module = "jakarta.annotation:jakarta.annotation-api", version = "3.0.0" } jakarta-validation-api = { module = "jakarta.validation:jakarta.validation-api", version = "3.1.0" } -jakarta-persistence-api = { module = "jakarta.persistence:jakarta.persistence-api", version = "3.1.0" } +jakarta-persistence-api = { module = "jakarta.persistence:jakarta.persistence-api", version = "3.2.0" } javax-annotation-api = { module = "javax.annotation:javax.annotation-api", version = "1.3.2" } javax-inject = { module = "javax.inject:javax.inject", version = "1" } jetbrains-annotations = { module = "org.jetbrains:annotations", version = "24.1.0" } -junit-bom = { module = "org.junit:junit-bom", version = "5.10.3" } -logback-core = { module = "ch.qos.logback:logback-core", version = "1.4.14" } -micrometer-bom = { module = "io.micrometer:micrometer-bom", version = "1.13.2" } -mockito-core = { module = "org.mockito:mockito-core", version = "5.11.0" } -opentelemetry-bom = { module = "io.opentelemetry:opentelemetry-bom", version = "1.38.0" } +junit-bom = { module = "org.junit:junit-bom", version = "5.11.0" } +logback-core = { module = "ch.qos.logback:logback-core", version = "1.5.8" } +micrometer-bom = { module = "io.micrometer:micrometer-bom", version = "1.13.4" } +mockito-core = { module = "org.mockito:mockito-core", version = "5.13.0" } +opentelemetry-bom = { module = "io.opentelemetry:opentelemetry-bom", version = "1.42.1" } opentelemetry-semconv = { module = "io.opentelemetry.semconv:opentelemetry-semconv", version = "1.25.0-alpha" } -prometheus-metrics-exporter-servlet-jakarta = { module = "io.prometheus:prometheus-metrics-exporter-servlet-jakarta", version = "1.3.0" } -s3mock-testcontainers = { module = "com.adobe.testing:s3mock-testcontainers", version = "3.9.1" } +prometheus-metrics-exporter-servlet-jakarta = { module = "io.prometheus:prometheus-metrics-exporter-servlet-jakarta", version = "1.3.1" } +s3mock-testcontainers = { module = "com.adobe.testing:s3mock-testcontainers", version = "3.10.0" } slf4j-api = { module = "org.slf4j:slf4j-api", version.ref = "slf4j" } -spotbugs-annotations = { module = "com.github.spotbugs:spotbugs-annotations", version = "4.8.5" } +spotbugs-annotations = { module = "com.github.spotbugs:spotbugs-annotations", version = "4.8.6" } swagger-annotations = { module = "io.swagger:swagger-annotations", version.ref = "swagger" } swagger-jaxrs = { module = "io.swagger:swagger-jaxrs", version.ref = "swagger" } -testcontainers-bom = { module = "org.testcontainers:testcontainers-bom", version = "1.20.0" } +testcontainers-bom = { module = "org.testcontainers:testcontainers-bom", version = "1.20.1" } threeten-extra = { module = "org.threeten:threeten-extra", version = "1.8.0" } [plugins] -openapi-generator = { id = "org.openapi.generator", version = "7.6.0" } +openapi-generator = { id = "org.openapi.generator", version = "7.8.0" } rat = { id = "org.nosphere.apache.rat", version = "0.8.1" } spotless = { id = "com.diffplug.spotless", version = "6.25.0" } -shadow = { id = "com.gradleup.shadow", version = "8.3.0" } +shadow = { id = "com.gradleup.shadow", version = "8.3.1" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 1fa499edd7..fdd85d1d9d 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -20,8 +20,8 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists # See https://gradle.org/release-checksums/ for valid checksums -distributionSha256Sum=5b9c5eb3f9fc2c94abaea57d90bd78747ca117ddbbf96c859d3741181a12bf2a -distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip +distributionSha256Sum=1541fa36599e12857140465f3c91a97409b4512501c26f9631fb113e392c5bd1 +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/polaris-core/build.gradle.kts b/polaris-core/build.gradle.kts index c1850b3136..00c7a3f404 100644 --- a/polaris-core/build.gradle.kts +++ b/polaris-core/build.gradle.kts @@ -31,7 +31,7 @@ dependencies { implementation("org.apache.iceberg:iceberg-api") implementation("org.apache.iceberg:iceberg-core") constraints { - implementation("io.airlift:aircompressor:0.27") { because("Vulnerability detected in 0.25") } + implementation("io.airlift:aircompressor:2.0.2") { because("Vulnerability detected in 0.25") } } // TODO - this is only here for the Discoverable interface // We should use a different mechanism to discover the plugin implementations @@ -58,19 +58,19 @@ dependencies { exclude("org.apache.zookeeper", "zookeeper") } constraints { - implementation("org.xerial.snappy:snappy-java:1.1.10.4") { + implementation("org.xerial.snappy:snappy-java:1.1.10.7") { because("Vulnerability detected in 1.1.8.2") } implementation("org.codehaus.jettison:jettison:1.5.4") { because("Vulnerability detected in 1.1") } - implementation("org.apache.commons:commons-configuration2:2.10.1") { + implementation("org.apache.commons:commons-configuration2:2.11.0") { because("Vulnerability detected in 2.8.0") } - implementation("org.apache.commons:commons-compress:1.26.0") { + implementation("org.apache.commons:commons-compress:1.27.1") { because("Vulnerability detected in 1.21") } - implementation("com.nimbusds:nimbus-jose-jwt:9.37.2") { + implementation("com.nimbusds:nimbus-jose-jwt:9.41.1") { because("Vulnerability detected in 9.8.1") } } @@ -94,10 +94,10 @@ dependencies { implementation("com.azure:azure-identity") implementation("com.azure:azure-storage-file-datalake") constraints { - implementation("io.netty:netty-codec-http2:4.1.100") { + implementation("io.netty:netty-codec-http2:4.1.113.Final") { because("Vulnerability detected in 4.1.72") } - implementation("io.projectreactor.netty:reactor-netty-http:1.1.13") { + implementation("io.projectreactor.netty:reactor-netty-http:1.1.22") { because("Vulnerability detected in 1.0.45") } } diff --git a/polaris-service/build.gradle.kts b/polaris-service/build.gradle.kts index e0f990ae32..df30b73674 100644 --- a/polaris-service/build.gradle.kts +++ b/polaris-service/build.gradle.kts @@ -93,7 +93,7 @@ dependencies { testImplementation("org.apache.iceberg:iceberg-spark-3.5_2.12") testImplementation("org.apache.iceberg:iceberg-spark-extensions-3.5_2.12") - testImplementation("org.apache.spark:spark-sql_2.12:3.5.1") { + testImplementation("org.apache.spark:spark-sql_2.12:3.5.2") { // exclude log4j dependencies exclude("org.apache.logging.log4j", "log4j-slf4j2-impl") exclude("org.apache.logging.log4j", "log4j-api") diff --git a/regtests/Dockerfile b/regtests/Dockerfile index cfff9932cb..9a71db7124 100644 --- a/regtests/Dockerfile +++ b/regtests/Dockerfile @@ -17,7 +17,7 @@ # under the License. # -FROM docker.io/apache/spark:3.5.1-python3 +FROM docker.io/apache/spark:3.5.2-python3 ARG POLARIS_HOST=polaris ENV POLARIS_HOST=$POLARIS_HOST ENV SPARK_HOME=/opt/spark diff --git a/regtests/client/python/.github/workflows/python.yml b/regtests/client/python/.github/workflows/python.yml index 48acea7f8e..9fb6b157a9 100644 --- a/regtests/client/python/.github/workflows/python.yml +++ b/regtests/client/python/.github/workflows/python.yml @@ -35,9 +35,9 @@ jobs: python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@f677139bbe7f9c59b41e40162b753c062f5d49a3 # v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies diff --git a/regtests/client/python/.gitlab-ci.yml b/regtests/client/python/.gitlab-ci.yml index 98bd0e6afe..4afc74dba3 100644 --- a/regtests/client/python/.gitlab-ci.yml +++ b/regtests/client/python/.gitlab-ci.yml @@ -34,16 +34,16 @@ stages: pytest-3.7: extends: .pytest - image: python:3.7-alpine + image: python:3.12-alpine pytest-3.8: extends: .pytest - image: python:3.8-alpine + image: python:3.12-alpine pytest-3.9: extends: .pytest - image: python:3.9-alpine + image: python:3.12-alpine pytest-3.10: extends: .pytest - image: python:3.10-alpine + image: python:3.12-alpine pytest-3.11: extends: .pytest - image: python:3.11-alpine + image: python:3.12-alpine diff --git a/regtests/client/python/poetry.lock b/regtests/client/python/poetry.lock index 25367ce075..2a560900c5 100644 --- a/regtests/client/python/poetry.lock +++ b/regtests/client/python/poetry.lock @@ -16,17 +16,17 @@ typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.9\""} [[package]] name = "boto3" -version = "1.34.120" +version = "1.35.17" description = "The AWS SDK for Python" optional = false python-versions = ">=3.8" files = [ - {file = "boto3-1.34.120-py3-none-any.whl", hash = "sha256:3c42bc309246a761413f6e152f307f009e80e7c9fd03dd9e6c0dc8ab8b3a8fc1"}, - {file = "boto3-1.34.120.tar.gz", hash = "sha256:38893db8269d25b72cc6fbab97633bfc863eefde5456847169d06149a16aa6e0"}, + {file = "boto3-1.35.17-py3-none-any.whl", hash = "sha256:67268aa6c4043e9fdeb4ab3c1e9032f44a6fa168c789af5e351f63f1f8880a2f"}, + {file = "boto3-1.35.17.tar.gz", hash = "sha256:4a32db8793569ee5f13c5bf3efb260193353cb8946bf6426e3c330b61c68e59d"}, ] [package.dependencies] -botocore = ">=1.34.120,<1.35.0" +botocore = ">=1.35.17,<1.36.0" jmespath = ">=0.7.1,<2.0.0" s3transfer = ">=0.10.0,<0.11.0" @@ -35,13 +35,13 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"] [[package]] name = "botocore" -version = "1.34.132" +version = "1.35.17" description = "Low-level, data-driven core of boto 3." optional = false python-versions = ">=3.8" files = [ - {file = "botocore-1.34.132-py3-none-any.whl", hash = "sha256:06ef8b4bd3b3cb5a9b9a4273a543b257be3304030978ba51516b576a65156c39"}, - {file = "botocore-1.34.132.tar.gz", hash = "sha256:372a6cfce29e5de9bcf8c95af901d0bc3e27d8aa2295fadee295424f95f43f16"}, + {file = "botocore-1.35.17-py3-none-any.whl", hash = "sha256:a93f773ca93139529b5d36730b382dbee63ab4c7f26129aa5c84835255ca999d"}, + {file = "botocore-1.35.17.tar.gz", hash = "sha256:0d35d03ea647b5d464c7f77bdab6fb23ae5d49752b13cf97ab84444518c7b1bd"}, ] [package.dependencies] @@ -53,7 +53,7 @@ urllib3 = [ ] [package.extras] -crt = ["awscrt (==0.20.11)"] +crt = ["awscrt (==0.21.5)"] [[package]] name = "cachetools" @@ -180,48 +180,49 @@ files = [ [[package]] name = "mypy" -version = "1.4.1" +version = "1.11.2" description = "Optional static typing for Python" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "mypy-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:566e72b0cd6598503e48ea610e0052d1b8168e60a46e0bfd34b3acf2d57f96a8"}, - {file = "mypy-1.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ca637024ca67ab24a7fd6f65d280572c3794665eaf5edcc7e90a866544076878"}, - {file = "mypy-1.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dde1d180cd84f0624c5dcaaa89c89775550a675aff96b5848de78fb11adabcd"}, - {file = "mypy-1.4.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8c4d8e89aa7de683e2056a581ce63c46a0c41e31bd2b6d34144e2c80f5ea53dc"}, - {file = "mypy-1.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:bfdca17c36ae01a21274a3c387a63aa1aafe72bff976522886869ef131b937f1"}, - {file = "mypy-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7549fbf655e5825d787bbc9ecf6028731973f78088fbca3a1f4145c39ef09462"}, - {file = "mypy-1.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:98324ec3ecf12296e6422939e54763faedbfcc502ea4a4c38502082711867258"}, - {file = "mypy-1.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:141dedfdbfe8a04142881ff30ce6e6653c9685b354876b12e4fe6c78598b45e2"}, - {file = "mypy-1.4.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8207b7105829eca6f3d774f64a904190bb2231de91b8b186d21ffd98005f14a7"}, - {file = "mypy-1.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:16f0db5b641ba159eff72cff08edc3875f2b62b2fa2bc24f68c1e7a4e8232d01"}, - {file = "mypy-1.4.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:470c969bb3f9a9efcedbadcd19a74ffb34a25f8e6b0e02dae7c0e71f8372f97b"}, - {file = "mypy-1.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e5952d2d18b79f7dc25e62e014fe5a23eb1a3d2bc66318df8988a01b1a037c5b"}, - {file = "mypy-1.4.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:190b6bab0302cec4e9e6767d3eb66085aef2a1cc98fe04936d8a42ed2ba77bb7"}, - {file = "mypy-1.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:9d40652cc4fe33871ad3338581dca3297ff5f2213d0df345bcfbde5162abf0c9"}, - {file = "mypy-1.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:01fd2e9f85622d981fd9063bfaef1aed6e336eaacca00892cd2d82801ab7c042"}, - {file = "mypy-1.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2460a58faeea905aeb1b9b36f5065f2dc9a9c6e4c992a6499a2360c6c74ceca3"}, - {file = "mypy-1.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a2746d69a8196698146a3dbe29104f9eb6a2a4d8a27878d92169a6c0b74435b6"}, - {file = "mypy-1.4.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:ae704dcfaa180ff7c4cfbad23e74321a2b774f92ca77fd94ce1049175a21c97f"}, - {file = "mypy-1.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:43d24f6437925ce50139a310a64b2ab048cb2d3694c84c71c3f2a1626d8101dc"}, - {file = "mypy-1.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c482e1246726616088532b5e964e39765b6d1520791348e6c9dc3af25b233828"}, - {file = "mypy-1.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:43b592511672017f5b1a483527fd2684347fdffc041c9ef53428c8dc530f79a3"}, - {file = "mypy-1.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:34a9239d5b3502c17f07fd7c0b2ae6b7dd7d7f6af35fbb5072c6208e76295816"}, - {file = "mypy-1.4.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5703097c4936bbb9e9bce41478c8d08edd2865e177dc4c52be759f81ee4dd26c"}, - {file = "mypy-1.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:e02d700ec8d9b1859790c0475df4e4092c7bf3272a4fd2c9f33d87fac4427b8f"}, - {file = "mypy-1.4.1-py3-none-any.whl", hash = "sha256:45d32cec14e7b97af848bddd97d85ea4f0db4d5a149ed9676caa4eb2f7402bb4"}, - {file = "mypy-1.4.1.tar.gz", hash = "sha256:9bbcd9ab8ea1f2e1c8031c21445b511442cc45c89951e49bbf852cbb70755b1b"}, + {file = "mypy-1.11.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d42a6dd818ffce7be66cce644f1dff482f1d97c53ca70908dff0b9ddc120b77a"}, + {file = "mypy-1.11.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:801780c56d1cdb896eacd5619a83e427ce436d86a3bdf9112527f24a66618fef"}, + {file = "mypy-1.11.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41ea707d036a5307ac674ea172875f40c9d55c5394f888b168033177fce47383"}, + {file = "mypy-1.11.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6e658bd2d20565ea86da7d91331b0eed6d2eee22dc031579e6297f3e12c758c8"}, + {file = "mypy-1.11.2-cp310-cp310-win_amd64.whl", hash = "sha256:478db5f5036817fe45adb7332d927daa62417159d49783041338921dcf646fc7"}, + {file = "mypy-1.11.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:75746e06d5fa1e91bfd5432448d00d34593b52e7e91a187d981d08d1f33d4385"}, + {file = "mypy-1.11.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a976775ab2256aadc6add633d44f100a2517d2388906ec4f13231fafbb0eccca"}, + {file = "mypy-1.11.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cd953f221ac1379050a8a646585a29574488974f79d8082cedef62744f0a0104"}, + {file = "mypy-1.11.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:57555a7715c0a34421013144a33d280e73c08df70f3a18a552938587ce9274f4"}, + {file = "mypy-1.11.2-cp311-cp311-win_amd64.whl", hash = "sha256:36383a4fcbad95f2657642a07ba22ff797de26277158f1cc7bd234821468b1b6"}, + {file = "mypy-1.11.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e8960dbbbf36906c5c0b7f4fbf2f0c7ffb20f4898e6a879fcf56a41a08b0d318"}, + {file = "mypy-1.11.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:06d26c277962f3fb50e13044674aa10553981ae514288cb7d0a738f495550b36"}, + {file = "mypy-1.11.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6e7184632d89d677973a14d00ae4d03214c8bc301ceefcdaf5c474866814c987"}, + {file = "mypy-1.11.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3a66169b92452f72117e2da3a576087025449018afc2d8e9bfe5ffab865709ca"}, + {file = "mypy-1.11.2-cp312-cp312-win_amd64.whl", hash = "sha256:969ea3ef09617aff826885a22ece0ddef69d95852cdad2f60c8bb06bf1f71f70"}, + {file = "mypy-1.11.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:37c7fa6121c1cdfcaac97ce3d3b5588e847aa79b580c1e922bb5d5d2902df19b"}, + {file = "mypy-1.11.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4a8a53bc3ffbd161b5b2a4fff2f0f1e23a33b0168f1c0778ec70e1a3d66deb86"}, + {file = "mypy-1.11.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2ff93107f01968ed834f4256bc1fc4475e2fecf6c661260066a985b52741ddce"}, + {file = "mypy-1.11.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:edb91dded4df17eae4537668b23f0ff6baf3707683734b6a818d5b9d0c0c31a1"}, + {file = "mypy-1.11.2-cp38-cp38-win_amd64.whl", hash = "sha256:ee23de8530d99b6db0573c4ef4bd8f39a2a6f9b60655bf7a1357e585a3486f2b"}, + {file = "mypy-1.11.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:801ca29f43d5acce85f8e999b1e431fb479cb02d0e11deb7d2abb56bdaf24fd6"}, + {file = "mypy-1.11.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:af8d155170fcf87a2afb55b35dc1a0ac21df4431e7d96717621962e4b9192e70"}, + {file = "mypy-1.11.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f7821776e5c4286b6a13138cc935e2e9b6fde05e081bdebf5cdb2bb97c9df81d"}, + {file = "mypy-1.11.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:539c570477a96a4e6fb718b8d5c3e0c0eba1f485df13f86d2970c91f0673148d"}, + {file = "mypy-1.11.2-cp39-cp39-win_amd64.whl", hash = "sha256:3f14cd3d386ac4d05c5a39a51b84387403dadbd936e17cb35882134d4f8f0d24"}, + {file = "mypy-1.11.2-py3-none-any.whl", hash = "sha256:b499bc07dbdcd3de92b0a8b29fdf592c111276f6a12fe29c30f6c417dd546d12"}, + {file = "mypy-1.11.2.tar.gz", hash = "sha256:7f9993ad3e0ffdc95c2a14b66dee63729f021968bff8ad911867579c65d13a79"}, ] [package.dependencies] mypy-extensions = ">=1.0.0" tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typing-extensions = ">=4.1.0" +typing-extensions = ">=4.6.0" [package.extras] dmypy = ["psutil (>=4.0)"] install-types = ["pip"] -python2 = ["typed-ast (>=1.4.0,<2)"] +mypyc = ["setuptools (>=50)"] reports = ["lxml"] [[package]] @@ -591,4 +592,4 @@ test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "c4842ff5ce0e433e93b0d1270e77ba79cf84362da1ce0b63b1940c50cf70da00" +content-hash = "9f41b0769440da7530a7bcc73998a373757234386e7ef0d878469468c0e92640" diff --git a/regtests/client/python/pyproject.toml b/regtests/client/python/pyproject.toml index 9a0bb1bd6d..d617b9cef7 100644 --- a/regtests/client/python/pyproject.toml +++ b/regtests/client/python/pyproject.toml @@ -35,14 +35,14 @@ urllib3 = "^1.25.3" python-dateutil = ">=2.8.2" pydantic = ">=2" typing-extensions = ">=4.7.1" -boto3 = "==1.34.120" +boto3 = "==1.35.17" [tool.poetry.dev-dependencies] pytest = ">=7.2.1" tox = ">=3.9.0" flake8 = ">=4.0.0" types-python-dateutil = ">=2.8.19.14" -mypy = "1.4.1" +mypy = "1.11.2" [build-system] diff --git a/regtests/client/python/test-requirements.txt b/regtests/client/python/test-requirements.txt index d1748ca826..525ec36e06 100644 --- a/regtests/client/python/test-requirements.txt +++ b/regtests/client/python/test-requirements.txt @@ -17,7 +17,7 @@ # under the License. # -pytest~=7.1.3 +pytest~=8.3.2 pytest-cov>=2.8.1 pytest-randomly>=3.12.0 mypy>=1.4.1