15
0

Compare commits

5 Commits

Author SHA256 Message Date
b566e73afe Accepting request 1303701 from devel:languages:python
- update to 25.5.0
  * Introduce Y067: Don't use Incomplete | None = None.
  * Introduce Y091: Protocol method parameters should not be
    positional-or-keyword.
  * Y011/Y015 will now allow all defaults that include an attribute
    access, for example math.inf or enum members.
  * Development-only dependencies are now declared using dependency
    groups rather than optional dependencies.
  * The plugin now exists as a flake8_pyi package rather than a
    single pyi.py file.
  * Declare support for Python 3.14
- Add fix-tests.patch cleaning up the code for old detritus,
  which broke tests.

OBS-URL: https://build.opensuse.org/request/show/1303701
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-flake8-pyi?expand=0&rev=18
2025-09-11 12:39:55 +00:00
74ca69d076 - Add fix-tests.patch cleaning up the code for old detritus,
which broke tests.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-flake8-pyi?expand=0&rev=36
2025-09-10 19:13:32 +00:00
579fa50bc3 - update to 25.5.0
* Introduce Y067: Don't use Incomplete | None = None.
  * Introduce Y091: Protocol method parameters should not be
    positional-or-keyword.
  * Y011/Y015 will now allow all defaults that include an attribute
    access, for example math.inf or enum members.
  * Development-only dependencies are now declared using dependency
    groups rather than optional dependencies.
  * The plugin now exists as a flake8_pyi package rather than a
    single pyi.py file.
  * Declare support for Python 3.14

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-flake8-pyi?expand=0&rev=35
2025-09-08 10:16:13 +00:00
4608eea2b1 Accepting request 1219188 from devel:languages:python
- update to 24.9.0:
  * Don't emit Y053 for long strings inside `Literal` slices or
  * metadata strings inside `Annotated` slices.
  * `flake8-pyi` no longer supports being run using Python 3.8.
    As a result, it not longer depends on the third-party
   `ast_decompiler` package.

OBS-URL: https://build.opensuse.org/request/show/1219188
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-flake8-pyi?expand=0&rev=17
2024-10-30 16:36:26 +00:00
94197e409a - update to 24.9.0:
* Don't emit Y053 for long strings inside `Literal` slices or
  * metadata strings inside `Annotated` slices.
  * `flake8-pyi` no longer supports being run using Python 3.8.
    As a result, it not longer depends on the third-party
   `ast_decompiler` package.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-flake8-pyi?expand=0&rev=33
2024-10-29 21:16:10 +00:00
6 changed files with 79 additions and 18 deletions

38
fix-tests.patch Normal file
View File

@@ -0,0 +1,38 @@
From 0197415ebccb6558350822e15f4bb9a0f9b758bb Mon Sep 17 00:00:00 2001
From: Sebastian Rittau <srittau@rittau.biz>
Date: Sun, 31 Aug 2025 03:56:30 +0200
Subject: [PATCH] Fix tests to reflect the current state (#526)
---
tests/forward_refs_annassign.pyi | 4 ++--
tests/vanilla_flake8_not_clean_forward_refs.pyi | 4 +++-
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/tests/forward_refs_annassign.pyi b/tests/forward_refs_annassign.pyi
index 51f94791..41887e4e 100644
--- a/tests/forward_refs_annassign.pyi
+++ b/tests/forward_refs_annassign.pyi
@@ -50,7 +50,7 @@ class Child(Parent): ...
class MyClass:
foo: int
- bar = foo
+ bar = foo # F821 undefined name 'foo'
baz: MyClass
-eggs = baz
+eggs = baz # F821 undefined name 'baz'
diff --git a/tests/vanilla_flake8_not_clean_forward_refs.pyi b/tests/vanilla_flake8_not_clean_forward_refs.pyi
index 98ec183f..6c9d5208 100644
--- a/tests/vanilla_flake8_not_clean_forward_refs.pyi
+++ b/tests/vanilla_flake8_not_clean_forward_refs.pyi
@@ -3,6 +3,8 @@ from typing import TypeAlias, Union
ManyStr: TypeAlias = list[EitherStr] # F821 undefined name 'EitherStr'
EitherStr: TypeAlias = Union[str, bytes]
-def function(accepts: EitherStr) -> None: ...
+# The following line reports "F821 undefined name 'EitherStr'" on Python 3.14+
+# but not on earlier versions.
+# def function(accepts: EitherStr) -> None: ... # F821 undefined name 'EitherStr'
del EitherStr # private name, not exported

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:74847fe88dba8dc3ccd27091dc5dcbe8993d7616214e4084f33afe469a675b14
size 61912

3
flake8_pyi-25.5.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dde18e5b20e6e17433767db97960164a4b4bbe0814a174a9e5ac552d8c73982a
size 63225

View File

@@ -1,3 +1,30 @@
-------------------------------------------------------------------
Fri Sep 5 15:02:05 UTC 2025 - Markéta Machová <mmachova@suse.com>
- update to 25.5.0
* Introduce Y067: Don't use Incomplete | None = None.
* Introduce Y091: Protocol method parameters should not be
positional-or-keyword.
* Y011/Y015 will now allow all defaults that include an attribute
access, for example math.inf or enum members.
* Development-only dependencies are now declared using dependency
groups rather than optional dependencies.
* The plugin now exists as a flake8_pyi package rather than a
single pyi.py file.
* Declare support for Python 3.14
- Add fix-tests.patch cleaning up the code for old detritus,
which broke tests.
-------------------------------------------------------------------
Tue Oct 29 21:15:28 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 24.9.0:
* Don't emit Y053 for long strings inside `Literal` slices or
* metadata strings inside `Annotated` slices.
* `flake8-pyi` no longer supports being run using Python 3.8.
As a result, it not longer depends on the third-party
`ast_decompiler` package.
-------------------------------------------------------------------
Sat Jun 15 15:36:11 UTC 2024 - Dirk Müller <dmueller@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-flake8-pyi
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-flake8-pyi
Version: 24.6.0
Version: 25.5.0
Release: 0
Summary: A plugin for flake8 to enable linting .pyi files
License: MIT
@@ -28,7 +28,8 @@ Source: https://files.pythonhosted.org/packages/source/f/flake8-pyi/flak
# PATCH-FIX-OPENSUSE set-tests-python-path.patch, patch to fix
# PYTHONPATH resolution for tests running inside osc
Patch0: set-tests-python-path.patch
BuildRequires: %{python_module ast-decompiler}
# PATCH-FIX-UPSTREAM https://github.com/PyCQA/flake8-pyi/pull/526 Fix tests to reflect the current state
Patch1: fix-tests.patch
BuildRequires: %{python_module base >= 3.8.0}
BuildRequires: %{python_module hatch_vcs}
BuildRequires: %{python_module hatchling}
@@ -36,7 +37,6 @@ BuildRequires: %{python_module pip}
BuildRequires: %{python_module wheel}
BuildRequires: python-rpm-macros
# SECTION test requirements
BuildRequires: %{python_module attrs}
BuildRequires: %{python_module flake8 >= 6.0.0}
BuildRequires: %{python_module pyflakes >= 2.1.1}
# Use pytest directly to bypass setup.py test dependencies
@@ -44,14 +44,11 @@ BuildRequires: %{python_module pytest}
BuildRequires: %{python_module black}
BuildRequires: %{python_module flake8-bugbear}
BuildRequires: %{python_module pytest-xdist}
BuildRequires: %{python_module typing}
# /SECTION
BuildRequires: fdupes
Requires: python-attrs
Requires: python-base >= 3.8.0
Requires: python-flake8 >= 6.0.0
Requires: python-pyflakes >= 2.1.1
Requires: python-typing
BuildArch: noarch
%python_subpackages
@@ -62,7 +59,7 @@ files. Especially interesting for linting typeshed.
%prep
%autosetup -p1 -n flake8_pyi-%{version}
sed -i '1{\,^#!%{_bindir}/env python,d}' pyi.py
sed -i '1{\,^#!%{_bindir}/env python,d}' flake8_pyi/visitor.py
%build
%pyproject_wheel
@@ -77,8 +74,7 @@ sed -i '1{\,^#!%{_bindir}/env python,d}' pyi.py
%files %{python_files}
%license LICENSE
%doc README.md
%{python_sitelib}/pyi.py*
%{pycache_only %{python_sitelib}/__pycache__/pyi.*.py*}
%{python_sitelib}/flake8_pyi
%{python_sitelib}/flake8_pyi-%{version}*-info
%changelog

View File

@@ -1,7 +1,7 @@
Index: flake8_pyi-23.11.0/tests/test_pyi_files.py
Index: flake8_pyi-25.5.0/tests/test_pyi_files.py
===================================================================
--- flake8_pyi-23.11.0.orig/tests/test_pyi_files.py
+++ flake8_pyi-23.11.0/tests/test_pyi_files.py
--- flake8_pyi-25.5.0.orig/tests/test_pyi_files.py
+++ flake8_pyi-25.5.0/tests/test_pyi_files.py
@@ -43,6 +43,9 @@ def test_pyi_file(path: str) -> None:
option = flag.split("=")[0]
assert option not in {"--ignore", "--select"}, bad_flag_msg(option[2:])
@@ -14,10 +14,10 @@ Index: flake8_pyi-23.11.0/tests/test_pyi_files.py
# For DeprecationWarnings coming from flake8-pyi itself,
@@ -51,6 +54,8 @@ def test_pyi_file(path: str) -> None:
# but the test failure report that pytest gives is much easier to read
# if we use `-Wdefault:::pyi`
# if we use `-Wdefault:::flake8_pyi`
flake8_invocation = [
+ "env",
+ pythonpath,
sys.executable,
"-Wignore",
"-Wdefault:::pyi",
"-Wdefault:::flake8_pyi",