pyneat-cli 2.4.1__tar.gz → 2.4.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/PKG-INFO +1 -1
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/__init__.py +1 -1
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/cli.py +4 -4
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat_cli.egg-info/PKG-INFO +1 -1
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyproject.toml +1 -1
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/LICENSE +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/README.md +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/__main__.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/benchmark.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/config.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/__init__.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/atomic.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/engine.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/manifest.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/marker_cleanup.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/scope_guard.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/semantic_guard.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/type_shield.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/core/types.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/pre_commit.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/__init__.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/ai_bugs.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/base.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/comments.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/conservative.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/dataclass.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/deadcode.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/debug.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/destructive.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/duplication.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/fstring.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/imports.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/init_protection.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/is_not_none.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/isolated.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/magic_numbers.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/match_case.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/naming.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/performance.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/quality.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/range_len_pattern.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/redundant.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/refactoring.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/safe.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security_pack/__init__.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security_pack/critical.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security_pack/high.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security_pack/info.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security_pack/low.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security_pack/medium.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/security_registry.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/typing.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/rules/unused.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/scanner/rust_scanner.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/__init__.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/github_fuzz/__init__.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/github_fuzz/__main__.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/github_fuzz/debug_logger.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/github_fuzz/fuzz_runner.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/github_fuzz/github_client.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/security/advisory_db.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/tools/security/dependency_scanner.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat/utils/naming.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat_cli.egg-info/SOURCES.txt +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat_cli.egg-info/dependency_links.txt +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat_cli.egg-info/entry_points.txt +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat_cli.egg-info/requires.txt +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/pyneat_cli.egg-info/top_level.txt +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/setup.cfg +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/setup.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_engine.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_fuzz.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_fuzz_github.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_integration.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_layers.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_rust_scanner.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_semantic_integrity.py +0 -0
- {pyneat_cli-2.4.1 → pyneat_cli-2.4.2}/tests/test_smoke.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyneat-cli
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.2
|
|
4
4
|
Summary: Neat Python AI Code Cleaner — removes AI-generated code artifacts, dead code, and security vulnerabilities
|
|
5
5
|
License: GNU AGPL-3.0-or-later
|
|
6
6
|
Keywords: ai,code-cleaner,python,linter,formatter,security,dead-code,refactoring,ast,auto-fix
|
|
@@ -1468,13 +1468,13 @@ def show_feature_menu(last_command: str = "", context: str = "") -> None:
|
|
|
1468
1468
|
click.echo(" ────────────────────────────────────────────────────────────")
|
|
1469
1469
|
click.echo("")
|
|
1470
1470
|
|
|
1471
|
-
# Chờ input
|
|
1471
|
+
# Chờ input - giữ nguyên hoa/thường vì dùng phím A, B, C, D
|
|
1472
1472
|
try:
|
|
1473
|
-
choice = input(" Select option (Enter to exit): ").strip().
|
|
1473
|
+
choice = input(" Select option (Enter to exit): ").strip().upper()
|
|
1474
1474
|
except (EOFError, KeyboardInterrupt):
|
|
1475
|
-
choice = '
|
|
1475
|
+
choice = 'Q'
|
|
1476
1476
|
|
|
1477
|
-
if choice in ('
|
|
1477
|
+
if choice in ('Q', 'QUIT', 'EXIT', ''):
|
|
1478
1478
|
return
|
|
1479
1479
|
|
|
1480
1480
|
# Xử lý lựa chọn
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyneat-cli
|
|
3
|
-
Version: 2.4.
|
|
3
|
+
Version: 2.4.2
|
|
4
4
|
Summary: Neat Python AI Code Cleaner — removes AI-generated code artifacts, dead code, and security vulnerabilities
|
|
5
5
|
License: GNU AGPL-3.0-or-later
|
|
6
6
|
Keywords: ai,code-cleaner,python,linter,formatter,security,dead-code,refactoring,ast,auto-fix
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "pyneat-cli"
|
|
7
|
-
version = "2.4.
|
|
7
|
+
version = "2.4.2"
|
|
8
8
|
description = "Neat Python AI Code Cleaner — removes AI-generated code artifacts, dead code, and security vulnerabilities"
|
|
9
9
|
license = {text = "GNU AGPL-3.0-or-later"}
|
|
10
10
|
readme = "README.md"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|