From ab741f3794d1434051a1d9971a726e3ad59a0a77 Mon Sep 17 00:00:00 2001 From: Roland Walker Date: Tue, 30 Dec 2025 12:31:10 -0500 Subject: [PATCH] update ruff to v0.14.10, lint target to py310 * Set ruff linter to v0.14.10 in pyproject.toml, using "~=" operator for greater predictability. * Update target linting version to py310 since Python 3.9 is no longer supported. * Add "strict" argument to uses of zip() to satisfy py310 lint. --- changelog.md | 1 + mycli/packages/special/llm.py | 2 +- pyproject.toml | 4 ++-- test/test_special_iocommands.py | 6 +++--- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/changelog.md b/changelog.md index 251718de..bf61c720 100644 --- a/changelog.md +++ b/changelog.md @@ -16,6 +16,7 @@ Bug Fixes Internal -------- * Refine documentation for Windows. +* Target Python 3.10 for linting. 1.42.0 (2025/12/20) diff --git a/mycli/packages/special/llm.py b/mycli/packages/special/llm.py index d19b8c41..e6023e1d 100644 --- a/mycli/packages/special/llm.py +++ b/mycli/packages/special/llm.py @@ -304,7 +304,7 @@ def sql_using_llm( row = cur.fetchone() if row is None: continue - sample_data[table_name] = list(zip(cols, row)) + sample_data[table_name] = list(zip(cols, row, strict=True)) args = [ "--template", LLM_TEMPLATE_NAME, diff --git a/pyproject.toml b/pyproject.toml index 11b98be3..f6d13cff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -55,7 +55,7 @@ dev = [ "llm>=0.19.0", "setuptools", # Required by llm commands to install models "pip", - "ruff>=0.14.6", + "ruff~=0.14.10", ] [project.scripts] @@ -68,7 +68,7 @@ mycli = ["myclirc", "AUTHORS", "SPONSORS"] include = ["mycli*"] [tool.ruff] -target-version = 'py39' +target-version = 'py310' line-length = 140 [tool.ruff.lint] diff --git a/test/test_special_iocommands.py b/test/test_special_iocommands.py index bf1d7642..1a738484 100644 --- a/test/test_special_iocommands.py +++ b/test/test_special_iocommands.py @@ -291,15 +291,15 @@ def test_split_sql_by_delimiter(): mycli.packages.special.set_delimiter(delimiter_str) sql_input = f"select 1{delimiter_str} select \ufffc2" queries = ("select 1", "select \ufffc2") - for query, parsed_query in zip(queries, mycli.packages.special.split_queries(sql_input)): + for query, parsed_query in zip(queries, mycli.packages.special.split_queries(sql_input), strict=True): assert query == parsed_query def test_switch_delimiter_within_query(): mycli.packages.special.set_delimiter(";") sql_input = "select 1; delimiter $$ select 2 $$ select 3 $$" - queries = ("select 1", "delimiter $$ select 2 $$ select 3 $$", "select 2", "select 3") - for query, parsed_query in zip(queries, mycli.packages.special.split_queries(sql_input)): + queries = ("select 1", "delimiter $$ select 2 $$ select 3 $$") + for query, parsed_query in zip(queries, mycli.packages.special.split_queries(sql_input), strict=True): assert query == parsed_query