From 25824580d2d7d0342f7699064b11c1bdb56ee625 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jiri=20Dan=C4=9Bk?= Date: Fri, 5 Jan 2024 17:39:23 +0100 Subject: [PATCH] Add ruff Python linter and suppress reported issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [Ruff: a fast Python linter](https://lwn.net/Articles/930487/) * [Ruff: The First 200 Releases](https://notes.crmarsh.com/ruff-the-first-200-releases) Even though ruff is not as good a linter as Pylint, it is still quite good and is _much_ faster: ``` $ time pylint ods_ci real 0m10.980s, user 0m10.745s, sys 0m0.179s $ time ruff ods_ci real 0m0.023s, user 0m0.040s, sys 0m0.017s ``` Signed-off-by: Jiri Daněk --- .github/workflows/code_quality.yaml | 15 ++ poetry.lock | 308 +++++----------------------- pyproject.toml | 122 +++++++++++ 3 files changed, 184 insertions(+), 261 deletions(-) diff --git a/.github/workflows/code_quality.yaml b/.github/workflows/code_quality.yaml index 0346e3d53..91c5ffcb4 100644 --- a/.github/workflows/code_quality.yaml +++ b/.github/workflows/code_quality.yaml @@ -81,3 +81,18 @@ jobs: isort $file --check --diff fi done + ruff: + name: ruff + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install ruff + run: | + pip install poetry + poetry install --only dev + + - name: Run ruff check + run: poetry run ruff check ods_ci/ diff --git a/poetry.lock b/poetry.lock index fcbb70441..8b1f0fcc9 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,10 +1,9 @@ -# This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. [[package]] name = "absl-py" version = "1.4.0" description = "Abseil Python Common Libraries, see https://github.com/abseil/abseil-py." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -16,7 +15,6 @@ files = [ name = "aenum" version = "3.1.15" description = "Advanced Enumerations (compatible with Python's stdlib Enum), NamedTuples, and NamedConstants" -category = "main" optional = false python-versions = "*" files = [ @@ -29,7 +27,6 @@ files = [ name = "appdirs" version = "1.4.4" description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "main" optional = false python-versions = "*" files = [ @@ -41,7 +38,6 @@ files = [ name = "appnope" version = "0.1.3" description = "Disable App Nap on macOS >= 10.9" -category = "main" optional = false python-versions = "*" files = [ @@ -53,7 +49,6 @@ files = [ name = "asttokens" version = "2.4.0" description = "Annotate AST trees with source code positions" -category = "main" optional = false python-versions = "*" files = [ @@ -71,7 +66,6 @@ test = ["astroid", "pytest"] name = "attrs" version = "23.1.0" description = "Classes Without Boilerplate" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -90,7 +84,6 @@ tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pyte name = "autopage" version = "0.5.1" description = "A library to provide automatic paging for console output" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -102,7 +95,6 @@ files = [ name = "awscli" version = "1.29.54" description = "Universal Command Line Environment for AWS." -category = "main" optional = false python-versions = ">= 3.7" files = [ @@ -122,7 +114,6 @@ s3transfer = ">=0.6.0,<0.7.0" name = "backcall" version = "0.2.0" description = "Specifications for callback functions passed in to an API" -category = "main" optional = false python-versions = "*" files = [ @@ -134,7 +125,6 @@ files = [ name = "backports-zoneinfo" version = "0.2.1" description = "Backport of the standard library zoneinfo module" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -163,7 +153,6 @@ tzdata = ["tzdata"] name = "beautifulsoup4" version = "4.12.2" description = "Screen-scraping library" -category = "main" optional = false python-versions = ">=3.6.0" files = [ @@ -182,7 +171,6 @@ lxml = ["lxml"] name = "black" version = "23.9.1" description = "The uncompromising code formatter." -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -229,7 +217,6 @@ uvloop = ["uvloop (>=0.15.2)"] name = "botocore" version = "1.31.54" description = "Low-level, data-driven core of boto 3." -category = "main" optional = false python-versions = ">= 3.7" files = [ @@ -249,7 +236,6 @@ crt = ["awscrt (==0.16.26)"] name = "cached-property" version = "1.5.2" description = "A decorator for caching properties in classes." -category = "main" optional = false python-versions = "*" files = [ @@ -261,7 +247,6 @@ files = [ name = "cachetools" version = "5.3.1" description = "Extensible memoizing collections and decorators" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -273,7 +258,6 @@ files = [ name = "certifi" version = "2023.7.22" description = "Python package for providing Mozilla's CA Bundle." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -285,7 +269,6 @@ files = [ name = "cffi" version = "1.15.1" description = "Foreign Function Interface for Python calling C code." -category = "main" optional = false python-versions = "*" files = [ @@ -362,7 +345,6 @@ pycparser = "*" name = "cfgv" version = "3.4.0" description = "Validate configuration and produce human readable error messages." -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -374,7 +356,6 @@ files = [ name = "chardet" version = "3.0.4" description = "Universal encoding detector for Python 2 and 3" -category = "main" optional = false python-versions = "*" files = [ @@ -386,7 +367,6 @@ files = [ name = "charset-normalizer" version = "3.2.0" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -471,7 +451,6 @@ files = [ name = "click" version = "8.1.7" description = "Composable command line interface toolkit" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -486,7 +465,6 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} name = "cliff" version = "4.3.0" description = "Command Line Interface Formulation Framework" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -506,7 +484,6 @@ stevedore = ">=2.0.1" name = "cloudpickle" version = "2.2.1" description = "Extended pickling support for Python objects" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -518,7 +495,6 @@ files = [ name = "cmd2" version = "2.4.3" description = "cmd2 - quickly build feature-rich and user-friendly interactive command line applications in Python" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -541,7 +517,6 @@ validate = ["flake8", "mypy", "types-pkg-resources"] name = "colorama" version = "0.4.4" description = "Cross-platform colored terminal text." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -553,7 +528,6 @@ files = [ name = "comtypes" version = "1.2.0" description = "Pure Python COM package" -category = "main" optional = false python-versions = "*" files = [ @@ -565,7 +539,6 @@ files = [ name = "convertdate" version = "2.4.0" description = "Converts between Gregorian dates and other calendar systems" -category = "main" optional = false python-versions = "<4,>=3.7" files = [ @@ -585,7 +558,6 @@ tests = ["coverage"] name = "cryptography" version = "41.0.4" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -631,7 +603,6 @@ test-randomorder = ["pytest-randomly"] name = "debtcollector" version = "2.5.0" description = "A collection of Python deprecation patterns and strategies that help you collect your technical debt in a non-destructive manner." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -646,7 +617,6 @@ wrapt = ">=1.7.0" name = "decorator" version = "5.1.1" description = "Decorators for Humans" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -658,7 +628,6 @@ files = [ name = "defusedxml" version = "0.7.1" description = "XML bomb protection for Python stdlib modules" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -670,7 +639,6 @@ files = [ name = "deprecated" version = "1.2.14" description = "Python @deprecated decorator to deprecate old python classes, functions or methods." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -688,7 +656,6 @@ dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "sphinx (<2)", "tox"] name = "distlib" version = "0.3.7" description = "Distribution utilities" -category = "main" optional = false python-versions = "*" files = [ @@ -700,7 +667,6 @@ files = [ name = "dnspython" version = "2.4.2" description = "DNS toolkit" -category = "main" optional = false python-versions = ">=3.8,<4.0" files = [ @@ -720,7 +686,6 @@ wmi = ["wmi (>=1.5.1,<2.0.0)"] name = "docstring-parser" version = "0.15" description = "Parse Python docstrings in reST, Google and Numpydoc format" -category = "main" optional = false python-versions = ">=3.6,<4.0" files = [ @@ -732,7 +697,6 @@ files = [ name = "docutils" version = "0.16" description = "Docutils -- Python Documentation Utilities" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -744,7 +708,6 @@ files = [ name = "dogpile-cache" version = "1.2.2" description = "A caching front-end based on the Dogpile lock." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -761,7 +724,6 @@ typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""} name = "escapism" version = "1.0.1" description = "Simple, generic API for escaping strings." -category = "main" optional = false python-versions = "*" files = [ @@ -773,7 +735,6 @@ files = [ name = "et-xmlfile" version = "1.1.0" description = "An implementation of lxml.xmlfile for the standard library" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -785,7 +746,6 @@ files = [ name = "exceptiongroup" version = "1.1.3" description = "Backport of PEP 654 (exception groups)" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -800,7 +760,6 @@ test = ["pytest (>=6)"] name = "exchangelib" version = "4.9.0" description = "Client for Microsoft Exchange Web Services (EWS)" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -832,7 +791,6 @@ sspi = ["requests-negotiate-sspi"] name = "executing" version = "1.2.0" description = "Get the currently executing AST node of a frame, and other information" -category = "main" optional = false python-versions = "*" files = [ @@ -847,7 +805,6 @@ tests = ["asttokens", "littleutils", "pytest", "rich"] name = "filelock" version = "3.12.4" description = "A platform independent file lock." -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -864,7 +821,6 @@ typing = ["typing-extensions (>=4.7.1)"] name = "fire" version = "0.4.0" description = "A library for automatically generating command line interfaces." -category = "main" optional = false python-versions = "*" files = [ @@ -879,7 +835,6 @@ termcolor = "*" name = "flake8" version = "6.1.0" description = "the modular source code checker: pep8 pyflakes and co" -category = "main" optional = false python-versions = ">=3.8.1" files = [ @@ -896,7 +851,6 @@ pyflakes = ">=3.1.0,<3.2.0" name = "fonttools" version = "4.42.1" description = "Tools to manipulate font files" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -954,7 +908,6 @@ woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] name = "fpdf2" version = "2.7.5" description = "Simple & fast PDF generation for Python" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -965,13 +918,12 @@ files = [ [package.dependencies] defusedxml = "*" fonttools = ">=4.34.0" -Pillow = ">=6.2.2,<9.2.0 || >=9.3.0" +Pillow = ">=6.2.2,<9.2.dev0 || >=9.3.dev0" [[package]] name = "furl" version = "2.1.3" description = "URL manipulation made simple." -category = "main" optional = false python-versions = "*" files = [ @@ -987,7 +939,6 @@ six = ">=1.8.0" name = "future" version = "0.18.3" description = "Clean single-source support for Python 3 and 2" -category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -998,7 +949,6 @@ files = [ name = "google-api-core" version = "2.12.0" description = "Google API client core library" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1021,7 +971,6 @@ grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"] name = "google-api-python-client" version = "1.12.11" description = "Google API Client Library for Python" -category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*" files = [ @@ -1041,7 +990,6 @@ uritemplate = ">=3.0.0,<4dev" name = "google-auth" version = "2.23.0" description = "Google Authentication Library" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1066,7 +1014,6 @@ requests = ["requests (>=2.20.0,<3.0.0.dev0)"] name = "google-auth-httplib2" version = "0.1.1" description = "Google Authentication Library: httplib2 transport" -category = "main" optional = false python-versions = "*" files = [ @@ -1082,7 +1029,6 @@ httplib2 = ">=0.19.0" name = "google-cloud-core" version = "2.3.3" description = "Google Cloud API client core library" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1091,7 +1037,7 @@ files = [ ] [package.dependencies] -google-api-core = ">=1.31.6,<2.0.0 || >2.3.0,<3.0.0dev" +google-api-core = ">=1.31.6,<2.0.dev0 || >2.3.0,<3.0.0dev" google-auth = ">=1.25.0,<3.0dev" [package.extras] @@ -1101,7 +1047,6 @@ grpc = ["grpcio (>=1.38.0,<2.0dev)"] name = "google-cloud-storage" version = "2.11.0" description = "Google Cloud Storage API client library" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1110,7 +1055,7 @@ files = [ ] [package.dependencies] -google-api-core = ">=1.31.5,<2.0.0 || >2.3.0,<3.0.0dev" +google-api-core = ">=1.31.5,<2.0.dev0 || >2.3.0,<3.0.0dev" google-auth = ">=1.25.0,<3.0dev" google-cloud-core = ">=2.3.0,<3.0dev" google-resumable-media = ">=2.6.0" @@ -1123,7 +1068,6 @@ protobuf = ["protobuf (<5.0.0dev)"] name = "google-crc32c" version = "1.5.0" description = "A python wrapper of the C library 'Google CRC32C'" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1204,7 +1148,6 @@ testing = ["pytest"] name = "google-resumable-media" version = "2.6.0" description = "Utilities for Google Media Downloads and Resumable Uploads" -category = "main" optional = false python-versions = ">= 3.7" files = [ @@ -1223,7 +1166,6 @@ requests = ["requests (>=2.18.0,<3.0.0dev)"] name = "googleapis-common-protos" version = "1.60.0" description = "Common protobufs used in Google APIs" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1241,7 +1183,6 @@ grpc = ["grpcio (>=1.44.0,<2.0.0.dev0)"] name = "graphviz" version = "0.13.2" description = "Simple Python interface for Graphviz" -category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" files = [ @@ -1258,7 +1199,6 @@ test = ["mock (>=2)", "pytest (>=3.4,!=3.10.0)", "pytest-cov", "pytest-mock (>=1 name = "h11" version = "0.14.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1270,7 +1210,6 @@ files = [ name = "hijri-converter" version = "2.3.1" description = "Accurate Hijri-Gregorian dates converter based on the Umm al-Qura calendar" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1282,7 +1221,6 @@ files = [ name = "holidays" version = "0.21.13" description = "Generate and work with holidays in Python" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1303,7 +1241,6 @@ tzdata = {version = "*", markers = "os_name == \"nt\""} name = "htmldocx" version = "0.0.6" description = "Convert html to docx" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1319,7 +1256,6 @@ python-docx = ">=0.8.10" name = "httplib2" version = "0.22.0" description = "A comprehensive HTTP client library." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1334,7 +1270,6 @@ pyparsing = {version = ">=2.4.2,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0 name = "hubspot-api-client" version = "4.0.6" description = "HubSpot API client" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1355,7 +1290,6 @@ dev = ["black", "pytest"] name = "identify" version = "2.5.29" description = "File identification library for Python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1370,7 +1304,6 @@ license = ["ukkonen"] name = "idna" version = "3.4" description = "Internationalized Domain Names in Applications (IDNA)" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1382,7 +1315,6 @@ files = [ name = "importlib-metadata" version = "4.13.0" description = "Read metadata from Python packages" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1402,7 +1334,6 @@ testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packag name = "importlib-resources" version = "6.1.0" description = "Read resources from Python packages" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1421,7 +1352,6 @@ testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", name = "iniconfig" version = "2.0.0" description = "brain-dead simple config-ini parsing" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1433,7 +1363,6 @@ files = [ name = "ipython" version = "8.4.0" description = "IPython: Productive Interactive Computing" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1473,7 +1402,6 @@ test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.19)", "pa name = "iso8601" version = "2.0.0" description = "Simple module to parse ISO 8601 dates" -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -1485,7 +1413,6 @@ files = [ name = "isodate" version = "0.6.1" description = "An ISO 8601 date/time/duration parser and formatter" -category = "main" optional = false python-versions = "*" files = [ @@ -1500,7 +1427,6 @@ six = "*" name = "java-access-bridge-wrapper" version = "1.0.0" description = "Python wrapper for the Windows Java Access Bridge" -category = "main" optional = false python-versions = ">=3.8.1,<4.0.0" files = [ @@ -1515,7 +1441,6 @@ pywin32 = {version = ">=300,<307", markers = "python_full_version != \"3.8.1\" a name = "jedi" version = "0.19.0" description = "An autocompletion tool for Python that can be used for text editors." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1535,7 +1460,6 @@ testing = ["Django (<3.1)", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] name = "jinja2" version = "3.1.2" description = "A very fast and expressive template engine." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1553,7 +1477,6 @@ i18n = ["Babel (>=2.7)"] name = "jmespath" version = "1.0.1" description = "JSON Matching Expressions" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1565,7 +1488,6 @@ files = [ name = "jsonpatch" version = "1.33" description = "Apply JSON-Patches (RFC 6902)" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" files = [ @@ -1580,7 +1502,6 @@ jsonpointer = ">=1.9" name = "jsonpath-ng" version = "1.6.0" description = "A final implementation of JSONPath for Python that aims to be standard compliant, including arithmetic and binary comparison operators and providing clear AST for metaprogramming." -category = "main" optional = false python-versions = "*" files = [ @@ -1595,7 +1516,6 @@ ply = "*" name = "jsonpointer" version = "2.4" description = "Identify specific nodes in a JSON document (RFC 6901)" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" files = [ @@ -1607,7 +1527,6 @@ files = [ name = "jsonschema" version = "4.19.1" description = "An implementation of JSON Schema validation for Python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1631,7 +1550,6 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- name = "jsonschema-specifications" version = "2023.7.1" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1647,7 +1565,6 @@ referencing = ">=0.28.0" name = "keystoneauth1" version = "5.3.0" description = "Authentication Library for OpenStack Identity" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1673,7 +1590,6 @@ test = ["PyYAML (>=3.12)", "bandit (>=1.1.0,<1.6.0)", "betamax (>=0.7.0)", "cove name = "kfp" version = "1.8.22" description = "KubeFlow Pipelines SDK" -category = "main" optional = false python-versions = ">=3.6.1" files = [ @@ -1687,7 +1603,7 @@ cloudpickle = ">=2.0.0,<3" Deprecated = ">=1.2.7,<2" docstring-parser = ">=0.7.3,<1" fire = ">=0.3.1,<1" -google-api-core = ">=1.31.5,<2.0.0 || >2.3.0,<3.0.0dev" +google-api-core = ">=1.31.5,<2.0.dev0 || >2.3.0,<3.0.0dev" google-api-python-client = ">=1.7.8,<2" google-auth = ">=1.6.1,<3" google-cloud-storage = ">=1.20.0,<3" @@ -1713,7 +1629,6 @@ all = ["docker"] name = "kfp-pipeline-spec" version = "0.1.16" description = "Kubeflow Pipelines pipeline spec" -category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -1727,7 +1642,6 @@ protobuf = ">=3.13.0,<4" name = "kfp-server-api" version = "1.8.5" description = "Kubeflow Pipelines API" -category = "main" optional = false python-versions = "*" files = [ @@ -1744,7 +1658,6 @@ urllib3 = ">=1.15" name = "kfp-tekton" version = "1.5.9" description = "Tekton Compiler for Kubeflow Pipelines" -category = "main" optional = false python-versions = ">=3.6.1" files = [ @@ -1759,7 +1672,6 @@ PyYAML = ">=6,<7" name = "korean-lunar-calendar" version = "0.3.1" description = "Korean Lunar Calendar" -category = "main" optional = false python-versions = "*" files = [ @@ -1771,7 +1683,6 @@ files = [ name = "kubernetes" version = "12.0.1" description = "Kubernetes python client" -category = "main" optional = false python-versions = "*" files = [ @@ -1789,7 +1700,7 @@ requests-oauthlib = "*" setuptools = ">=21.0.0" six = ">=1.9.0" urllib3 = ">=1.24.2" -websocket-client = ">=0.32.0,<0.40.0 || >0.40.0,<0.41.0 || >=0.43.0" +websocket-client = ">=0.32.0,<0.40.0 || >0.40.0,<0.41.dev0 || >=0.43.dev0" [package.extras] adal = ["adal (>=1.0.2)"] @@ -1798,7 +1709,6 @@ adal = ["adal (>=1.0.2)"] name = "lxml" version = "4.9.3" description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" files = [ @@ -1906,7 +1816,6 @@ source = ["Cython (>=0.29.35)"] name = "markdown-it-py" version = "3.0.0" description = "Python port of markdown-it. Markdown parsing, done right!" -category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1931,7 +1840,6 @@ testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] name = "markupsafe" version = "2.1.3" description = "Safely add untrusted strings to HTML/XML markup." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1955,6 +1863,16 @@ files = [ {file = "MarkupSafe-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:5bbe06f8eeafd38e5d0a4894ffec89378b6c6a625ff57e3028921f8ff59318ac"}, {file = "MarkupSafe-2.1.3-cp311-cp311-win32.whl", hash = "sha256:dd15ff04ffd7e05ffcb7fe79f1b98041b8ea30ae9234aed2a9168b5797c3effb"}, {file = "MarkupSafe-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:134da1eca9ec0ae528110ccc9e48041e0828d79f24121a1a146161103c76e686"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:f698de3fd0c4e6972b92290a45bd9b1536bffe8c6759c62471efaa8acb4c37bc"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:aa57bd9cf8ae831a362185ee444e15a93ecb2e344c8e52e4d721ea3ab6ef1823"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffcc3f7c66b5f5b7931a5aa68fc9cecc51e685ef90282f4a82f0f5e9b704ad11"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47d4f1c5f80fc62fdd7777d0d40a2e9dda0a05883ab11374334f6c4de38adffd"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1f67c7038d560d92149c060157d623c542173016c4babc0c1913cca0564b9939"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9aad3c1755095ce347e26488214ef77e0485a3c34a50c5a5e2471dff60b9dd9c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:14ff806850827afd6b07a5f32bd917fb7f45b046ba40c57abdb636674a8b559c"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8f9293864fe09b8149f0cc42ce56e3f0e54de883a9de90cd427f191c346eb2e1"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win32.whl", hash = "sha256:715d3562f79d540f251b99ebd6d8baa547118974341db04f5ad06d5ea3eb8007"}, + {file = "MarkupSafe-2.1.3-cp312-cp312-win_amd64.whl", hash = "sha256:1b8dd8c3fd14349433c79fa8abeb573a55fc0fdd769133baac1f5e07abf54aeb"}, {file = "MarkupSafe-2.1.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:8e254ae696c88d98da6555f5ace2279cf7cd5b3f52be2b5cf97feafe883b58d2"}, {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb0932dc158471523c9637e807d9bfb93e06a95cbf010f1a38b98623b929ef2b"}, {file = "MarkupSafe-2.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9402b03f1a1b4dc4c19845e5c749e3ab82d5078d16a2a4c2cd2df62d57bb0707"}, @@ -1991,7 +1909,6 @@ files = [ name = "matplotlib-inline" version = "0.1.6" description = "Inline Matplotlib backend for Jupyter" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -2006,7 +1923,6 @@ traitlets = "*" name = "mccabe" version = "0.7.0" description = "McCabe checker, plugin for flake8" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2018,7 +1934,6 @@ files = [ name = "mdurl" version = "0.1.2" description = "Markdown URL utilities" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2030,7 +1945,6 @@ files = [ name = "more-itertools" version = "10.1.0" description = "More routines for operating on iterables, beyond itertools" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2042,7 +1956,6 @@ files = [ name = "msgpack" version = "1.0.6" description = "MessagePack serializer" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2108,7 +2021,6 @@ files = [ name = "mss" version = "6.1.0" description = "An ultra fast cross-platform multiple screenshots module in pure python using ctypes." -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -2120,7 +2032,6 @@ files = [ name = "mypy" version = "1.5.1" description = "Optional static typing for Python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2167,7 +2078,6 @@ reports = ["lxml"] name = "mypy-extensions" version = "1.0.0" description = "Type system extensions for programs checked with the mypy type checker." -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -2179,7 +2089,6 @@ files = [ name = "netaddr" version = "0.9.0" description = "A network address manipulation library for Python" -category = "main" optional = false python-versions = "*" files = [ @@ -2191,7 +2100,6 @@ files = [ name = "netifaces" version = "0.11.0" description = "Portable network interface information." -category = "main" optional = false python-versions = "*" files = [ @@ -2231,7 +2139,6 @@ files = [ name = "netsuitesdk" version = "1.24.0" description = "Python SDK for accessing the NetSuite SOAP webservice" -category = "main" optional = false python-versions = "*" files = [ @@ -2246,7 +2153,6 @@ zeep = "*" name = "nodeenv" version = "1.8.0" description = "Node.js virtual environment builder" -category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" files = [ @@ -2261,7 +2167,6 @@ setuptools = "*" name = "notifiers" version = "1.3.3" description = "The easy way to send notifications" -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -2278,7 +2183,6 @@ requests = ">=2.27.1,<3.0.0" name = "o365" version = "2.0.26" description = "Microsoft Graph and Office 365 API made easy" -category = "main" optional = false python-versions = ">=3.4" files = [ @@ -2299,7 +2203,6 @@ tzlocal = ">=4.0" name = "oauthlib" version = "3.2.2" description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2316,7 +2219,6 @@ signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"] name = "openpyxl" version = "3.1.2" description = "A Python library to read/write Excel 2010 xlsx/xlsm files" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2331,7 +2233,6 @@ et-xmlfile = "*" name = "openshift" version = "0.12.1" description = "OpenShift python client" -category = "main" optional = false python-versions = "*" files = [ @@ -2349,7 +2250,6 @@ six = "*" name = "openstacksdk" version = "1.5.0" description = "An SDK for building applications to work with OpenStack" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2376,7 +2276,6 @@ requestsexceptions = ">=1.2.0" name = "orderedmultidict" version = "1.0.1" description = "Ordered Multivalue Dictionary" -category = "main" optional = false python-versions = "*" files = [ @@ -2391,7 +2290,6 @@ six = ">=1.8.0" name = "os-service-types" version = "1.7.0" description = "Python library for consuming OpenStack sevice-types-authority data" -category = "main" optional = false python-versions = "*" files = [ @@ -2406,7 +2304,6 @@ pbr = ">=2.0.0,<2.1.0 || >2.1.0" name = "osc-lib" version = "2.8.1" description = "OpenStackClient Library" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2428,7 +2325,6 @@ stevedore = ">=1.20.0" name = "oslo-config" version = "9.2.0" description = "Oslo Configuration API" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2453,7 +2349,6 @@ test = ["bandit (>=1.7.0,<1.8.0)", "coverage (>=4.0,!=4.4)", "fixtures (>=3.0.0) name = "oslo-i18n" version = "6.1.0" description = "Oslo i18n library" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2468,7 +2363,6 @@ pbr = ">=2.0.0,<2.1.0 || >2.1.0" name = "oslo-serialization" version = "5.2.0" description = "Oslo Serialization library" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2487,7 +2381,6 @@ tzdata = ">=2022.4" name = "oslo-utils" version = "6.2.1" description = "Oslo Utility library" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2510,7 +2403,6 @@ tzdata = ">=2022.4" name = "outcome" version = "1.2.0" description = "Capture the outcome of Python function calls." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2525,7 +2417,6 @@ attrs = ">=19.2.0" name = "packaging" version = "23.1" description = "Core utilities for Python packages" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2537,7 +2428,6 @@ files = [ name = "parso" version = "0.8.3" description = "A Python Parser" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2553,7 +2443,6 @@ testing = ["docopt", "pytest (<6.0.0)"] name = "pathspec" version = "0.11.2" description = "Utility library for gitignore style pattern matching of file paths." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2565,7 +2454,6 @@ files = [ name = "pbr" version = "5.11.1" description = "Python Build Reasonableness" -category = "main" optional = false python-versions = ">=2.6" files = [ @@ -2577,7 +2465,6 @@ files = [ name = "pdfminer-six" version = "20221105" description = "PDF parser and analyzer" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2598,7 +2485,6 @@ image = ["Pillow"] name = "pendulum" version = "2.1.2" description = "Python datetimes made easy" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -2633,7 +2519,6 @@ pytzdata = ">=2020.1" name = "pexpect" version = "4.8.0" description = "Pexpect allows easy control of interactive console applications." -category = "main" optional = false python-versions = "*" files = [ @@ -2648,7 +2533,6 @@ ptyprocess = ">=0.5" name = "pickleshare" version = "0.7.5" description = "Tiny 'shelve'-like database with concurrency support" -category = "main" optional = false python-versions = "*" files = [ @@ -2660,7 +2544,6 @@ files = [ name = "pillow" version = "9.5.0" description = "Python Imaging Library (Fork)" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2740,7 +2623,6 @@ tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "pa name = "pkgutil-resolve-name" version = "1.3.10" description = "Resolve a name to an object." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2752,7 +2634,6 @@ files = [ name = "platformdirs" version = "3.8.1" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2768,7 +2649,6 @@ test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.3.1)", "pytest- name = "pluggy" version = "1.3.0" description = "plugin and hook calling mechanisms for python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2784,7 +2664,6 @@ testing = ["pytest", "pytest-benchmark"] name = "ply" version = "3.11" description = "Python Lex & Yacc" -category = "main" optional = false python-versions = "*" files = [ @@ -2796,7 +2675,6 @@ files = [ name = "pre-commit" version = "3.4.0" description = "A framework for managing and maintaining multi-language pre-commit hooks." -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2815,7 +2693,6 @@ virtualenv = ">=20.10.0" name = "prettytable" version = "3.9.0" description = "A simple Python library for easily displaying tabular data in a visually appealing ASCII table format" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2833,9 +2710,8 @@ tests = ["pytest", "pytest-cov", "pytest-lazy-fixture"] name = "prompt-toolkit" version = "2.0.10" description = "Library for building powerful interactive command lines in Python" -category = "main" optional = false -python-versions = ">=2.6,<3.0.0 || >=3.3.0" +python-versions = ">=2.6,<3.0.dev0 || >=3.3.dev0" files = [ {file = "prompt_toolkit-2.0.10-py2-none-any.whl", hash = "sha256:e7f8af9e3d70f514373bf41aa51bc33af12a6db3f71461ea47fea985defb2c31"}, {file = "prompt_toolkit-2.0.10-py3-none-any.whl", hash = "sha256:46642344ce457641f28fc9d1c9ca939b63dadf8df128b86f1b9860e59c73a5e4"}, @@ -2850,7 +2726,6 @@ wcwidth = "*" name = "protobuf" version = "3.20.3" description = "Protocol Buffers" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2882,7 +2757,6 @@ files = [ name = "psutil" version = "5.9.5" description = "Cross-platform lib for process and system monitoring in Python." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -2909,7 +2783,6 @@ test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] name = "ptyprocess" version = "0.7.0" description = "Run a subprocess in a pseudo terminal" -category = "main" optional = false python-versions = "*" files = [ @@ -2921,7 +2794,6 @@ files = [ name = "pure-eval" version = "0.2.2" description = "Safely evaluate AST nodes without side effects" -category = "main" optional = false python-versions = "*" files = [ @@ -2936,7 +2808,6 @@ tests = ["pytest"] name = "pyasn1" version = "0.5.0" description = "Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)" -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" files = [ @@ -2948,7 +2819,6 @@ files = [ name = "pyasn1-modules" version = "0.3.0" description = "A collection of ASN.1-based protocols modules" -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" files = [ @@ -2963,7 +2833,6 @@ pyasn1 = ">=0.4.6,<0.6.0" name = "pycodestyle" version = "2.11.0" description = "Python style guide checker" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2975,7 +2844,6 @@ files = [ name = "pycparser" version = "2.21" description = "C parser in Python" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -2987,7 +2855,6 @@ files = [ name = "pydantic" version = "1.10.12" description = "Data validation and settings management using python type hints" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3040,7 +2907,6 @@ email = ["email-validator (>=1.0.3)"] name = "pyflakes" version = "3.1.0" description = "passive checker of Python programs" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3052,7 +2918,6 @@ files = [ name = "pygments" version = "2.16.1" description = "Pygments is a syntax highlighting package written in Python." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3067,7 +2932,6 @@ plugins = ["importlib-metadata"] name = "pyjwt" version = "2.8.0" description = "JSON Web Token implementation in Python" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3085,7 +2949,6 @@ tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"] name = "pymeeus" version = "0.5.12" description = "Python implementation of Jean Meeus astronomical routines" -category = "main" optional = false python-versions = "*" files = [ @@ -3096,7 +2959,6 @@ files = [ name = "pynput-robocorp-fork" version = "5.0.0" description = "Monitor and control user input devices" -category = "main" optional = false python-versions = "*" files = [ @@ -3115,7 +2977,6 @@ six = "*" name = "pyobjc-core" version = "9.2" description = "Python<->ObjC Interoperability Module" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3133,7 +2994,6 @@ files = [ name = "pyobjc-framework-applicationservices" version = "9.2" description = "Wrappers for the framework ApplicationServices on macOS" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3156,7 +3016,6 @@ pyobjc-framework-Quartz = ">=9.2" name = "pyobjc-framework-cocoa" version = "9.2" description = "Wrappers for the Cocoa frameworks on macOS" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3177,7 +3036,6 @@ pyobjc-core = ">=9.2" name = "pyobjc-framework-quartz" version = "9.2" description = "Wrappers for the Quartz frameworks on macOS" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3199,7 +3057,6 @@ pyobjc-framework-Cocoa = ">=9.2" name = "pyotp" version = "2.9.0" description = "Python One Time Password Library" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3214,7 +3071,6 @@ test = ["coverage", "mypy", "ruff", "wheel"] name = "pyparsing" version = "3.1.1" description = "pyparsing module - Classes and methods to define and execute parsing grammars" -category = "main" optional = false python-versions = ">=3.6.8" files = [ @@ -3229,7 +3085,6 @@ diagrams = ["jinja2", "railroad-diagrams"] name = "pypdf" version = "3.16.2" description = "A pure-python PDF library capable of splitting, merging, cropping, and transforming PDF files" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -3251,7 +3106,6 @@ image = ["Pillow (>=8.0.0)"] name = "pyperclip" version = "1.8.2" description = "A cross-platform clipboard module for Python. (Only handles plain text for now.)" -category = "main" optional = false python-versions = "*" files = [ @@ -3262,7 +3116,6 @@ files = [ name = "pyreadline3" version = "3.4.1" description = "A python implementation of GNU readline." -category = "main" optional = false python-versions = "*" files = [ @@ -3274,7 +3127,6 @@ files = [ name = "pysocks" version = "1.7.1" description = "A Python SOCKS client module. See https://github.com/Anorov/PySocks for more information." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -3287,7 +3139,6 @@ files = [ name = "pyspnego" version = "0.9.2" description = "Windows Negotiate Authentication Client and Server" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3318,7 +3169,6 @@ yaml = ["ruamel.yaml"] name = "pytest" version = "7.4.2" description = "pytest: simple powerful testing with Python" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3341,7 +3191,6 @@ testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "no name = "pytest-logger" version = "0.5.1" description = "Plugin configuring handlers for loggers from Python logging module." -category = "main" optional = false python-versions = "*" files = [ @@ -3357,7 +3206,6 @@ pytest = ">=3.2" name = "python-cinderclient" version = "9.4.0" description = "OpenStack Block Storage API Client Library" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3378,7 +3226,6 @@ stevedore = ">=3.3.0" name = "python-dateutil" version = "2.8.2" description = "Extensions to the standard Python datetime module" -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ @@ -3393,7 +3240,6 @@ six = ">=1.5" name = "python-docx" version = "0.8.11" description = "Create and update Microsoft Word .docx files." -category = "main" optional = false python-versions = "*" files = [ @@ -3407,7 +3253,6 @@ lxml = ">=2.3.2" name = "python-dotenv" version = "1.0.0" description = "Read key-value pairs from a .env file and set them as environment variables" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3422,7 +3267,6 @@ cli = ["click (>=5.0)"] name = "python-keystoneclient" version = "5.2.0" description = "Client Library for OpenStack Identity" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3447,7 +3291,6 @@ stevedore = ">=1.20.0" name = "python-novaclient" version = "18.4.0" description = "Client library for OpenStack Compute API" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3469,7 +3312,6 @@ stevedore = ">=2.0.1" name = "python-openstackclient" version = "6.3.0" description = "OpenStack Command-line Client" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3495,7 +3337,6 @@ stevedore = ">=2.0.1" name = "python-string-utils" version = "1.0.0" description = "Utility functions for strings validation and manipulation." -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -3507,7 +3348,6 @@ files = [ name = "python-xlib" version = "0.33" description = "Python X Library" -category = "main" optional = false python-versions = "*" files = [ @@ -3522,7 +3362,6 @@ six = ">=1.10.0" name = "pytz" version = "2023.3.post1" description = "World timezone definitions, modern and historical" -category = "main" optional = false python-versions = "*" files = [ @@ -3534,7 +3373,6 @@ files = [ name = "pytz-deprecation-shim" version = "0.1.0.post0" description = "Shims to make deprecation of pytz easier" -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" files = [ @@ -3550,7 +3388,6 @@ tzdata = {version = "*", markers = "python_version >= \"3.6\""} name = "pytzdata" version = "2020.1" description = "The Olson timezone database for Python." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -3562,7 +3399,6 @@ files = [ name = "pywin32" version = "303" description = "Python for Window Extensions" -category = "main" optional = false python-versions = "*" files = [ @@ -3584,7 +3420,6 @@ files = [ name = "pywinauto" version = "0.6.8" description = "A set of Python modules to automate the Microsoft Windows GUI" -category = "main" optional = false python-versions = "*" files = [ @@ -3601,7 +3436,6 @@ six = "*" name = "pyyaml" version = "6.0.1" description = "YAML parser and emitter for Python" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -3661,7 +3495,6 @@ files = [ name = "referencing" version = "0.30.2" description = "JSON Referencing + Python" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3677,7 +3510,6 @@ rpds-py = ">=0.7.0" name = "reportportal-client" version = "5.4.1" description = "Python client for ReportPortal v5." -category = "main" optional = false python-versions = "*" files = [ @@ -3694,7 +3526,6 @@ six = ">=1.16.0" name = "requests" version = "2.31.0" description = "Python HTTP for Humans." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3717,7 +3548,6 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] name = "requests-file" version = "1.5.1" description = "File transport adapter for Requests" -category = "main" optional = false python-versions = "*" files = [ @@ -3733,7 +3563,6 @@ six = "*" name = "requests-ntlm" version = "1.2.0" description = "This package allows for HTTP NTLM authentication using the requests library." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3750,7 +3579,6 @@ requests = ">=2.0.0" name = "requests-oauthlib" version = "1.3.1" description = "OAuthlib authentication support for Requests." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -3769,7 +3597,6 @@ rsa = ["oauthlib[signedtoken] (>=3.0.0)"] name = "requests-toolbelt" version = "0.10.1" description = "A utility belt for advanced users of python-requests" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -3784,7 +3611,6 @@ requests = ">=2.0.1,<3.0.0" name = "requestsexceptions" version = "1.4.0" description = "Import exceptions from potentially bundled packages in requests." -category = "main" optional = false python-versions = "*" files = [ @@ -3796,7 +3622,6 @@ files = [ name = "rfc3986" version = "2.0.0" description = "Validating URI References per RFC 3986" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3811,7 +3636,6 @@ idna2008 = ["idna"] name = "rich" version = "13.5.3" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" -category = "dev" optional = false python-versions = ">=3.7.0" files = [ @@ -3831,7 +3655,6 @@ jupyter = ["ipywidgets (>=7.5.1,<9)"] name = "rich-click" version = "1.6.1" description = "Format click help output nicely with rich" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3850,7 +3673,6 @@ dev = ["pre-commit"] name = "robocorp-storage" version = "1.0.0" description = "Robocorp Asset Storage library" -category = "main" optional = false python-versions = ">=3.7.2,<4.0.0" files = [ @@ -3866,7 +3688,6 @@ tenacity = ">=8.0.1,<9.0.0" name = "robotframework" version = "6.1.1" description = "Generic automation framework for acceptance testing and robotic process automation (RPA)" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -3878,7 +3699,6 @@ files = [ name = "robotframework-debuglibrary" version = "2.3.0" description = "RobotFramework debug library and an interactive shell" -category = "main" optional = false python-versions = "*" files = [ @@ -3894,7 +3714,6 @@ robotframework = ">=3.0" name = "robotframework-jupyterlibrary" version = "0.4.2" description = "A Robot Framework library for automating (testing of) Jupyter end-user applications and extensions" -category = "main" optional = false python-versions = "*" files = [ @@ -3910,7 +3729,6 @@ robotframework-seleniumlibrary = ">=4.5" name = "robotframework-lsp" version = "1.11.0" description = "Language Server Protocol implementation for Robot Framework" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3929,7 +3747,6 @@ test = ["mock", "pytest", "pytest-regressions (==1.0.6)", "pytest-timeout", "pyt name = "robotframework-openshift" version = "1.0.0" description = "" -category = "main" optional = false python-versions = "*" files = [] @@ -3965,7 +3782,6 @@ resolved_reference = "129734755d5c7ccea1788d4fb5ae1772a19132dd" name = "robotframework-pythonlibcore" version = "4.2.0" description = "Tools to ease creating larger test libraries for Robot Framework using Python." -category = "main" optional = false python-versions = ">=3.7, <4" files = [ @@ -3977,7 +3793,6 @@ files = [ name = "robotframework-requests" version = "0.9.5" description = "Robot Framework keyword library wrapper around requests" -category = "main" optional = false python-versions = "*" files = [ @@ -3996,7 +3811,6 @@ test = ["coverage", "flake8", "flask", "pytest", "robotframework (>=3.2.1)", "si name = "robotframework-robocop" version = "4.1.1" description = "Static code analysis tool (linter) for Robot Framework" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -4021,7 +3835,6 @@ doc = ["furo", "pygments", "sphinx", "sphinx-copybutton", "sphinx-design", "sphi name = "robotframework-sapguilibrary" version = "1.1" description = "A Robot Framework Library for automating the SAP GUI desktop client" -category = "main" optional = false python-versions = "*" files = [ @@ -4037,7 +3850,6 @@ robotframework = ">=2.9" name = "robotframework-seleniumlibrary" version = "6.1.2" description = "Web testing library for Robot Framework" -category = "main" optional = false python-versions = ">=3.6, <4" files = [ @@ -4054,7 +3866,6 @@ selenium = ">=4.3.0" name = "robotframework-seleniumtestability" version = "2.1.0" description = "SeleniumTestability library that helps speed up tests withasyncronous evens" -category = "main" optional = false python-versions = "*" files = [ @@ -4071,7 +3882,6 @@ wrapt = "*" name = "robotframework-tidy" version = "4.5.0" description = "Code autoformatter for Robot Framework" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -4080,13 +3890,13 @@ files = [ ] [package.dependencies] -click = ">=8.1.0,<8.2.0" +click = "==8.1.*" colorama = ">=0.4.3,<0.4.7" jinja2 = ">=3.0,<4.0" pathspec = ">=0.9.0,<0.11.3" rich-click = ">=1.4,<1.6.2" robotframework = ">=4.0" -tomli = ">=2.0.0,<2.1.0" +tomli = "==2.0.*" [package.extras] dev = ["coverage", "invoke", "jinja2", "packaging (>=21.0)", "pre-commit", "pyflakes (>=2.4,<3.2)", "pylama", "pytest"] @@ -4096,7 +3906,6 @@ doc = ["furo", "sphinx", "sphinx-copybutton (==0.5.2)", "sphinx-design"] name = "rpaframework" version = "27.2.0" description = "A collection of tools and libraries for RPA" -category = "main" optional = false python-versions = ">=3.8.1,<4.0.0" files = [ @@ -4163,7 +3972,6 @@ xlwt = ">=1.3.0,<2.0.0" name = "rpaframework-core" version = "11.2.0" description = "Core utilities used by RPA Framework" -category = "main" optional = false python-versions = ">=3.8,<4.0" files = [ @@ -4184,7 +3992,6 @@ webdriver-manager = "4.0.0" name = "rpaframework-pdf" version = "7.2.0" description = "PDF library of RPA Framework" -category = "main" optional = false python-versions = ">=3.8,<4.0" files = [ @@ -4204,7 +4011,6 @@ rpaframework-core = ">=11.0.0,<12.0.0" name = "rpaframework-windows" version = "7.4.0" description = "Windows library for RPA Framework" -category = "main" optional = false python-versions = ">=3.8,<4.0" files = [ @@ -4227,7 +4033,6 @@ uiautomation = ">=2.0.15,<3.0.0" name = "rpds-py" version = "0.10.3" description = "Python bindings to Rust's persistent data structures (rpds)" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4334,7 +4139,6 @@ files = [ name = "rsa" version = "4.7.2" description = "Pure-Python RSA implementation" -category = "main" optional = false python-versions = ">=3.5, <4" files = [ @@ -4349,7 +4153,6 @@ pyasn1 = ">=0.1.3" name = "ruamel-yaml" version = "0.17.32" description = "ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order" -category = "main" optional = false python-versions = ">=3" files = [ @@ -4368,7 +4171,6 @@ jinja2 = ["ruamel.yaml.jinja2 (>=0.2)"] name = "ruamel-yaml-clib" version = "0.2.7" description = "C version of reader, parser and emitter for ruamel.yaml derived from libyaml" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -4411,11 +4213,36 @@ files = [ {file = "ruamel.yaml.clib-0.2.7.tar.gz", hash = "sha256:1f08fd5a2bea9c4180db71678e850b995d2a5f4537be0e94557668cf0f5f9497"}, ] +[[package]] +name = "ruff" +version = "0.1.11" +description = "An extremely fast Python linter and code formatter, written in Rust." +optional = false +python-versions = ">=3.7" +files = [ + {file = "ruff-0.1.11-py3-none-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:a7f772696b4cdc0a3b2e527fc3c7ccc41cdcb98f5c80fdd4f2b8c50eb1458196"}, + {file = "ruff-0.1.11-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:934832f6ed9b34a7d5feea58972635c2039c7a3b434fe5ba2ce015064cb6e955"}, + {file = "ruff-0.1.11-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea0d3e950e394c4b332bcdd112aa566010a9f9c95814844a7468325290aabfd9"}, + {file = "ruff-0.1.11-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9bd4025b9c5b429a48280785a2b71d479798a69f5c2919e7d274c5f4b32c3607"}, + {file = "ruff-0.1.11-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e1ad00662305dcb1e987f5ec214d31f7d6a062cae3e74c1cbccef15afd96611d"}, + {file = "ruff-0.1.11-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:4b077ce83f47dd6bea1991af08b140e8b8339f0ba8cb9b7a484c30ebab18a23f"}, + {file = "ruff-0.1.11-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4a88efecec23c37b11076fe676e15c6cdb1271a38f2b415e381e87fe4517f18"}, + {file = "ruff-0.1.11-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5b25093dad3b055667730a9b491129c42d45e11cdb7043b702e97125bcec48a1"}, + {file = "ruff-0.1.11-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:231d8fb11b2cc7c0366a326a66dafc6ad449d7fcdbc268497ee47e1334f66f77"}, + {file = "ruff-0.1.11-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:09c415716884950080921dd6237767e52e227e397e2008e2bed410117679975b"}, + {file = "ruff-0.1.11-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:0f58948c6d212a6b8d41cd59e349751018797ce1727f961c2fa755ad6208ba45"}, + {file = "ruff-0.1.11-py3-none-musllinux_1_2_i686.whl", hash = "sha256:190a566c8f766c37074d99640cd9ca3da11d8deae2deae7c9505e68a4a30f740"}, + {file = "ruff-0.1.11-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:6464289bd67b2344d2a5d9158d5eb81025258f169e69a46b741b396ffb0cda95"}, + {file = "ruff-0.1.11-py3-none-win32.whl", hash = "sha256:9b8f397902f92bc2e70fb6bebfa2139008dc72ae5177e66c383fa5426cb0bf2c"}, + {file = "ruff-0.1.11-py3-none-win_amd64.whl", hash = "sha256:eb85ee287b11f901037a6683b2374bb0ec82928c5cbc984f575d0437979c521a"}, + {file = "ruff-0.1.11-py3-none-win_arm64.whl", hash = "sha256:97ce4d752f964ba559c7023a86e5f8e97f026d511e48013987623915431c7ea9"}, + {file = "ruff-0.1.11.tar.gz", hash = "sha256:f9d4d88cb6eeb4dfe20f9f0519bd2eaba8119bde87c3d5065c541dbae2b5a2cb"}, +] + [[package]] name = "s3transfer" version = "0.6.2" description = "An Amazon S3 Transfer Manager" -category = "main" optional = false python-versions = ">= 3.7" files = [ @@ -4433,7 +4260,6 @@ crt = ["botocore[crt] (>=1.20.29,<2.0a.0)"] name = "selenium" version = "4.13.0" description = "" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4451,7 +4277,6 @@ urllib3 = {version = ">=1.26,<3", extras = ["socks"]} name = "semver" version = "2.13.0" description = "Python helper for Semantic Versioning (http://semver.org/)" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -4463,7 +4288,6 @@ files = [ name = "setuptools" version = "68.2.2" description = "Easily download, build, install, upgrade, and uninstall Python packages" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4480,7 +4304,6 @@ testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jar name = "simple-salesforce" version = "1.12.5" description = "A basic Salesforce.com REST API client." -category = "main" optional = false python-versions = "*" files = [ @@ -4500,7 +4323,6 @@ zeep = "*" name = "simplejson" version = "3.19.1" description = "Simple, fast, extensible JSON encoder/decoder for Python" -category = "main" optional = false python-versions = ">=2.5, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -4595,7 +4417,6 @@ files = [ name = "six" version = "1.16.0" description = "Python 2 and 3 compatibility utilities" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -4607,7 +4428,6 @@ files = [ name = "smartsheet-python-sdk" version = "3.0.2" description = "Library that uses Python to connect to Smartsheet services (using API 2.0)." -category = "main" optional = false python-versions = "*" files = [ @@ -4630,7 +4450,6 @@ test = ["coverage", "coveralls", "pytest"] name = "sniffio" version = "1.3.0" description = "Sniff out which async library your code is running under" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4642,7 +4461,6 @@ files = [ name = "sortedcontainers" version = "2.4.0" description = "Sorted Containers -- Sorted List, Sorted Dict, Sorted Set" -category = "main" optional = false python-versions = "*" files = [ @@ -4654,7 +4472,6 @@ files = [ name = "soupsieve" version = "2.5" description = "A modern CSS selector implementation for Beautiful Soup." -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4666,7 +4483,6 @@ files = [ name = "stack-data" version = "0.6.2" description = "Extract data from python stack frames and tracebacks for informative displays" -category = "main" optional = false python-versions = "*" files = [ @@ -4686,7 +4502,6 @@ tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] name = "stevedore" version = "5.1.0" description = "Manage dynamic plugins for Python applications" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4701,7 +4516,6 @@ pbr = ">=2.0.0,<2.1.0 || >2.1.0" name = "stringcase" version = "1.2.0" description = "String case converter." -category = "main" optional = false python-versions = "*" files = [ @@ -4712,7 +4526,6 @@ files = [ name = "strip-hints" version = "0.1.10" description = "Function and command-line program to strip Python type hints." -category = "main" optional = false python-versions = "*" files = [ @@ -4726,7 +4539,6 @@ wheel = "*" name = "tabulate" version = "0.9.0" description = "Pretty-print tabular data" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4741,7 +4553,6 @@ widechars = ["wcwidth"] name = "tenacity" version = "8.2.3" description = "Retry code until it succeeds" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4756,7 +4567,6 @@ doc = ["reno", "sphinx", "tornado (>=4.5)"] name = "termcolor" version = "2.3.0" description = "ANSI color formatting for output in terminal" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4771,7 +4581,6 @@ tests = ["pytest", "pytest-cov"] name = "tomli" version = "2.0.1" description = "A lil' TOML parser" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4783,7 +4592,6 @@ files = [ name = "traitlets" version = "5.10.1" description = "Traitlets Python configuration system" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4799,7 +4607,6 @@ test = ["argcomplete (>=3.0.3)", "mypy (>=1.5.1)", "pre-commit", "pytest (>=7.0, name = "trio" version = "0.22.2" description = "A friendly Python library for async concurrency and I/O" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4820,7 +4627,6 @@ sortedcontainers = "*" name = "trio-websocket" version = "0.10.4" description = "WebSocket library for Trio" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4837,7 +4643,6 @@ wsproto = ">=0.14" name = "tweepy" version = "3.10.0" description = "Twitter library for Python" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -4858,7 +4663,6 @@ test = ["mock (>=1.0.1)", "nose (>=1.3.3)", "vcrpy (>=1.10.3)"] name = "typer" version = "0.9.0" description = "Typer, build great CLIs. Easy to code. Based on Python type hints." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -4880,7 +4684,6 @@ test = ["black (>=22.3.0,<23.0.0)", "coverage (>=6.2,<7.0)", "isort (>=5.0.6,<6. name = "typing-extensions" version = "4.8.0" description = "Backported and Experimental Type Hints for Python 3.8+" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4892,7 +4695,6 @@ files = [ name = "tzdata" version = "2023.3" description = "Provider of IANA time zone data" -category = "main" optional = false python-versions = ">=2" files = [ @@ -4904,7 +4706,6 @@ files = [ name = "tzlocal" version = "4.3.1" description = "tzinfo object for the local timezone" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -4924,11 +4725,11 @@ devenv = ["black", "check-manifest", "flake8", "pyroma", "pytest (>=4.3)", "pyte name = "uiautomation" version = "2.0.18" description = "Python UIAutomation for Windows" -category = "main" optional = false python-versions = "*" files = [ {file = "uiautomation-2.0.18-py3-none-any.whl", hash = "sha256:19b2e03d7f94acf89c2f4dedf29d88e0befb2cb3ce9862039f7c548cb0a4de43"}, + {file = "uiautomation-2.0.18.tar.gz", hash = "sha256:1e891d7a1d3e913e25b3cfed9d03f0a4f91ed2e80b827d9ea85141a679ef9ada"}, ] [package.dependencies] @@ -4938,7 +4739,6 @@ comtypes = ">=1.1.10" name = "uritemplate" version = "3.0.1" description = "URI templates" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -4950,7 +4750,6 @@ files = [ name = "urllib3" version = "1.26.16" description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ @@ -4970,7 +4769,6 @@ socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] name = "validators" version = "0.20.0" description = "Python Data Validation for Humans™." -category = "main" optional = false python-versions = ">=3.4" files = [ @@ -4987,7 +4785,6 @@ test = ["flake8 (>=2.4.0)", "isort (>=4.2.2)", "pytest (>=2.2.3)"] name = "virtualenv" version = "20.24.1" description = "Virtual Python Environment builder" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -5008,7 +4805,6 @@ test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess name = "wcwidth" version = "0.2.6" description = "Measures the displayed width of unicode strings in a terminal" -category = "main" optional = false python-versions = "*" files = [ @@ -5020,7 +4816,6 @@ files = [ name = "webdriver-manager" version = "4.0.0" description = "Library provides the way to automatically manage drivers for different browsers" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -5037,7 +4832,6 @@ requests = "*" name = "websocket-client" version = "1.6.3" description = "WebSocket client for Python with low level API options" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -5054,7 +4848,6 @@ test = ["websockets"] name = "wheel" version = "0.41.2" description = "A built-package format for Python" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -5069,7 +4862,6 @@ test = ["pytest (>=6.0.0)", "setuptools (>=65)"] name = "wrapt" version = "1.15.0" description = "Module for decorators, wrappers and monkey patching." -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" files = [ @@ -5154,7 +4946,6 @@ files = [ name = "wsproto" version = "1.2.0" description = "WebSockets state-machine based protocol implementation" -category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -5169,7 +4960,6 @@ h11 = ">=0.9.0,<1" name = "xlrd" version = "2.0.1" description = "Library for developers to extract data from Microsoft Excel (tm) .xls spreadsheet files" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ @@ -5186,7 +4976,6 @@ test = ["pytest", "pytest-cov"] name = "xlutils" version = "2.0.0" description = "Utilities for working with Excel files that require both xlrd and xlwt" -category = "main" optional = false python-versions = "*" files = [ @@ -5206,7 +4995,6 @@ test = ["coveralls", "errorhandler", "manuel", "mock", "nose", "nose-cov", "nose name = "xlwt" version = "1.3.0" description = "Library to create spreadsheet files compatible with MS Excel 97/2000/XP/2003 XLS files, on any platform, with Python 2.6, 2.7, 3.3+" -category = "main" optional = false python-versions = "*" files = [ @@ -5218,7 +5006,6 @@ files = [ name = "zeep" version = "4.2.1" description = "A Python SOAP client" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -5246,7 +5033,6 @@ xmlsec = ["xmlsec (>=0.6.1)"] name = "zipp" version = "3.17.0" description = "Backport of pathlib-compatible object wrapper for zip files" -category = "main" optional = false python-versions = ">=3.8" files = [ @@ -5261,4 +5047,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = "^3.8.1" -content-hash = "c02246c966ef5dd35eeea923e456a07c07c656f3b0bdbb0d2c090696e1c3fc87" +content-hash = "137a7000354cc3d046532c81896fecb73820acd4b55a82f0f48c6980eece8111" diff --git a/pyproject.toml b/pyproject.toml index cf7ce1976..c6b249440 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -35,7 +35,129 @@ robotframework-lsp = ">=1.11.0" robotframework-robocop = "^4.1.0" robotframework-tidy = "^4.5.0" black = ">20.0.0" +ruff = "0.1.11" [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" + +[tool.ruff] +target-version = "py38" + +# https://docs.astral.sh/ruff/rules +[tool.ruff.lint] +preview = true +select = [ + "B", # flake8-bugbear + "C4", # flake8-comprehensions + "COM", # flake8-commas + "E", "W", # pycodestyle errors/warnings + "F", # Pyflakes + "FA", # flake8-future-annotations + "FLY", # flynt + "G", # flake8-logging-format + "I", # isort + "INP", # flake8-no-pep420 + "INT", # flake8-gettext + "ISC", # flake8-implicit-str-concat + "ISC", # implicit string concatenation + "N", # pep8-naming + "NPY002", # numpy-legacy-random + "PERF", # Perflint + "PGH", # pygrep-hooks + "PIE", # misc lints + "PL", # pylint + "PL", # pylint + "PYI", # flake8-pyi + "Q", # flake8-quotes + "RET", # flake8-return + "RUF", # Ruff-specific + "S102", # flake8-bandit: exec-builtin + "T10", # flake8-debugger + "TCH", # type-checking imports + "TID", # flake8-tidy-imports + "UP", # pyupgrade + "YTT", # flake8-2020 +] +ignore = [ + # intentionally disabled + "E203", # space before : (needed for how black formats slicing) + # various limits and unimportant warnings + "E501", # Line too long + "E741", # Ambiguous variable name: `l` + "PLR0904", # Too many public methods (56 > 20) + "PLR0912", # Too many branches + "PLR0913", # Too many arguments in function definition (6 > 5) + "PLR0915", # Too many statements + "PLR0917", # Too many positional arguments (10/5) + "PLR0917", # Too many positional arguments (7/5) + "PLR2004", # Magic value used in comparison + # "W503", # not yet implemented; line break before binary operator + # "W504", # not yet implemented; line break after binary operator + # TODO + "B006", # Do not use mutable data structures for argument defaults + "B007", # Loop control variable `retry` not used within loop body + "COM812", # Trailing comma missing + "F841", # Local variable `response` is assigned to but never used + "FA100", # Missing `from __future__ import annotations`, but uses `typing.Optional` + "I001", # Import block is un-sorted or un-formatted + "INP001", # File `ods_ci/tests/Resources/Page/ODH/JupyterHub/jupyter-helper.py` is part of an implicit namespace package. Add an `__init__.py`. + "ISC001", # Implicitly concatenated string literals on one line + "N806", # Variable `outputText` in function should be lowercase + "N813", # Camelcase `ElementTree` imported as lowercase `et` + "N816", # Variable `rotatingHandler` in global scope should not be mixedCase + "N999", # Invalid module name: 'createPolarionTestRun' + "PERF401", # Use a list comprehension to create a transformed list + "PLC0415", # `import` should be at the top-level of a file + "PLC1901", # `filter_value != ""` can be simplified to `filter_value` as an empty string is falsey + "PLR5501", # Use `elif` instead of `else` then `if`, to reduce indentation + "PLR6201", # Use a `set` literal when testing for membership + "PLR6301", # Method `_render_template` could be a function, class method, or static method + "PLW1514", # `codecs.open` in text mode without explicit `encoding` argument + "PLW2901", # `for` loop variable `tag_it` overwritten by assignment target + "Q000", # Single quotes found but double quotes preferred + "RET501", # Do not explicitly `return None` in function if it is the only possible return value + "RET503", # Missing explicit `return` at the end of function able to return non-`None` value + "RET504", # Unnecessary assignment to `names` before `return` statement + "RET505", # Unnecessary `else` after `return` statement + "UP015", # Unnecessary open mode parameters + "UP031", # format specifiers instead of percent format + "UP032", # Use f-string instead of `format` call + "UP034", # Avoid extraneous parentheses + "W605", # Invalid escape sequence: `\d` + # TODO(jdanek) + "C416", # Unnecessary `list` comprehension (rewrite using `list()`) + "E117", # Over-indented + "E231", # Missing whitespace after ',' + "E401", # Multiple imports on one line + "E402", # Module level import not at top of file + "E711", # Comparison to `None` should be `cond is not None` + "E712", # Comparison to `True` should be `cond is True` or `if cond:` + "E721", # Use `is` and `is not` for type comparisons, or `isinstance()` for isinstance checks + "E722", # Do not use bare `except` + "F401", # `re` imported but unused + "F403", # `from python_terraform import *` used; unable to detect undefined names + "F405", # `IsNotFlagged` may be undefined, or defined from star imports + "F541", # f-string without any placeholders + "F811", # Redefinition of unused `hide_values_in_op_json` from line 565 + "F821", # Undefined name `os` + "PIE790", # Unnecessary `pass` statement + "PLR1714", # Consider merging multiple comparisons. Use a `set` if the elements are hashable. + "Q004", # Unnecessary escape on inner quote character + "RET507", # Unnecessary `else` after `continue` statement + "RET508", # Unnecessary `elif` after `break` statement + "W292", # No newline at end of file + "W293", # Blank line contains whitespace +] + +# Allow unused variables when underscore-prefixed. +dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$" + +[tool.ruff.format] +line-ending = "lf" +quote-style = "double" +indent-style = "space" +skip-magic-trailing-comma = false + +docstring-code-format = true +docstring-code-line-length = "dynamic"