style: Auto-format 48 files with ruff format

- Fixed formatting to comply with ruff standards
- No functional changes, only formatting/style
- Completes CI/CD pipeline formatting requirements
This commit is contained in:
yusyus
2026-02-15 20:24:32 +03:00
parent 83b03d9f9f
commit 57061b7daf
48 changed files with 626 additions and 548 deletions

View File

@@ -16,6 +16,7 @@ from skill_seekers.cli.arguments.create import (
logger = logging.getLogger(__name__)
class CreateCommand:
"""Unified create command implementation."""
@@ -74,7 +75,7 @@ class CreateCommand:
continue
# Skip internal arguments
if arg_name in ['source', 'func', 'subcommand']:
if arg_name in ["source", "func", "subcommand"]:
continue
# Warn about incompatible argument
@@ -104,10 +105,10 @@ class CreateCommand:
# Check against common defaults
defaults = {
'max_issues': 100,
'chunk_size': 512,
'chunk_overlap': 50,
'output': None,
"max_issues": 100,
"chunk_size": 512,
"chunk_overlap": 50,
"output": None,
}
if arg_name in defaults:
@@ -122,15 +123,15 @@ class CreateCommand:
Returns:
Exit code from scraper
"""
if self.source_info.type == 'web':
if self.source_info.type == "web":
return self._route_web()
elif self.source_info.type == 'github':
elif self.source_info.type == "github":
return self._route_github()
elif self.source_info.type == 'local':
elif self.source_info.type == "local":
return self._route_local()
elif self.source_info.type == 'pdf':
elif self.source_info.type == "pdf":
return self._route_pdf()
elif self.source_info.type == 'config':
elif self.source_info.type == "config":
return self._route_config()
else:
logger.error(f"Unknown source type: {self.source_info.type}")
@@ -141,10 +142,10 @@ class CreateCommand:
from skill_seekers.cli import doc_scraper
# Reconstruct argv for doc_scraper
argv = ['doc_scraper']
argv = ["doc_scraper"]
# Add URL
url = self.source_info.parsed['url']
url = self.source_info.parsed["url"]
argv.append(url)
# Add universal arguments
@@ -152,21 +153,21 @@ class CreateCommand:
# Add web-specific arguments
if self.args.max_pages:
argv.extend(['--max-pages', str(self.args.max_pages)])
if getattr(self.args, 'skip_scrape', False):
argv.append('--skip-scrape')
if getattr(self.args, 'resume', False):
argv.append('--resume')
if getattr(self.args, 'fresh', False):
argv.append('--fresh')
if getattr(self.args, 'rate_limit', None):
argv.extend(['--rate-limit', str(self.args.rate_limit)])
if getattr(self.args, 'workers', None):
argv.extend(['--workers', str(self.args.workers)])
if getattr(self.args, 'async_mode', False):
argv.append('--async')
if getattr(self.args, 'no_rate_limit', False):
argv.append('--no-rate-limit')
argv.extend(["--max-pages", str(self.args.max_pages)])
if getattr(self.args, "skip_scrape", False):
argv.append("--skip-scrape")
if getattr(self.args, "resume", False):
argv.append("--resume")
if getattr(self.args, "fresh", False):
argv.append("--fresh")
if getattr(self.args, "rate_limit", None):
argv.extend(["--rate-limit", str(self.args.rate_limit)])
if getattr(self.args, "workers", None):
argv.extend(["--workers", str(self.args.workers)])
if getattr(self.args, "async_mode", False):
argv.append("--async")
if getattr(self.args, "no_rate_limit", False):
argv.append("--no-rate-limit")
# Call doc_scraper with modified argv
logger.debug(f"Calling doc_scraper with argv: {argv}")
@@ -182,32 +183,32 @@ class CreateCommand:
from skill_seekers.cli import github_scraper
# Reconstruct argv for github_scraper
argv = ['github_scraper']
argv = ["github_scraper"]
# Add repo
repo = self.source_info.parsed['repo']
argv.extend(['--repo', repo])
repo = self.source_info.parsed["repo"]
argv.extend(["--repo", repo])
# Add universal arguments
self._add_common_args(argv)
# Add GitHub-specific arguments
if getattr(self.args, 'token', None):
argv.extend(['--token', self.args.token])
if getattr(self.args, 'profile', None):
argv.extend(['--profile', self.args.profile])
if getattr(self.args, 'non_interactive', False):
argv.append('--non-interactive')
if getattr(self.args, 'no_issues', False):
argv.append('--no-issues')
if getattr(self.args, 'no_changelog', False):
argv.append('--no-changelog')
if getattr(self.args, 'no_releases', False):
argv.append('--no-releases')
if getattr(self.args, 'max_issues', None) and self.args.max_issues != 100:
argv.extend(['--max-issues', str(self.args.max_issues)])
if getattr(self.args, 'scrape_only', False):
argv.append('--scrape-only')
if getattr(self.args, "token", None):
argv.extend(["--token", self.args.token])
if getattr(self.args, "profile", None):
argv.extend(["--profile", self.args.profile])
if getattr(self.args, "non_interactive", False):
argv.append("--non-interactive")
if getattr(self.args, "no_issues", False):
argv.append("--no-issues")
if getattr(self.args, "no_changelog", False):
argv.append("--no-changelog")
if getattr(self.args, "no_releases", False):
argv.append("--no-releases")
if getattr(self.args, "max_issues", None) and self.args.max_issues != 100:
argv.extend(["--max-issues", str(self.args.max_issues)])
if getattr(self.args, "scrape_only", False):
argv.append("--scrape-only")
# Call github_scraper with modified argv
logger.debug(f"Calling github_scraper with argv: {argv}")
@@ -223,30 +224,30 @@ class CreateCommand:
from skill_seekers.cli import codebase_scraper
# Reconstruct argv for codebase_scraper
argv = ['codebase_scraper']
argv = ["codebase_scraper"]
# Add directory
directory = self.source_info.parsed['directory']
argv.extend(['--directory', directory])
directory = self.source_info.parsed["directory"]
argv.extend(["--directory", directory])
# Add universal arguments
self._add_common_args(argv)
# Add local-specific arguments
if getattr(self.args, 'languages', None):
argv.extend(['--languages', self.args.languages])
if getattr(self.args, 'file_patterns', None):
argv.extend(['--file-patterns', self.args.file_patterns])
if getattr(self.args, 'skip_patterns', False):
argv.append('--skip-patterns')
if getattr(self.args, 'skip_test_examples', False):
argv.append('--skip-test-examples')
if getattr(self.args, 'skip_how_to_guides', False):
argv.append('--skip-how-to-guides')
if getattr(self.args, 'skip_config', False):
argv.append('--skip-config')
if getattr(self.args, 'skip_docs', False):
argv.append('--skip-docs')
if getattr(self.args, "languages", None):
argv.extend(["--languages", self.args.languages])
if getattr(self.args, "file_patterns", None):
argv.extend(["--file-patterns", self.args.file_patterns])
if getattr(self.args, "skip_patterns", False):
argv.append("--skip-patterns")
if getattr(self.args, "skip_test_examples", False):
argv.append("--skip-test-examples")
if getattr(self.args, "skip_how_to_guides", False):
argv.append("--skip-how-to-guides")
if getattr(self.args, "skip_config", False):
argv.append("--skip-config")
if getattr(self.args, "skip_docs", False):
argv.append("--skip-docs")
# Call codebase_scraper with modified argv
logger.debug(f"Calling codebase_scraper with argv: {argv}")
@@ -262,20 +263,20 @@ class CreateCommand:
from skill_seekers.cli import pdf_scraper
# Reconstruct argv for pdf_scraper
argv = ['pdf_scraper']
argv = ["pdf_scraper"]
# Add PDF file
file_path = self.source_info.parsed['file_path']
argv.extend(['--pdf', file_path])
file_path = self.source_info.parsed["file_path"]
argv.extend(["--pdf", file_path])
# Add universal arguments
self._add_common_args(argv)
# Add PDF-specific arguments
if getattr(self.args, 'ocr', False):
argv.append('--ocr')
if getattr(self.args, 'pages', None):
argv.extend(['--pages', self.args.pages])
if getattr(self.args, "ocr", False):
argv.append("--ocr")
if getattr(self.args, "pages", None):
argv.extend(["--pages", self.args.pages])
# Call pdf_scraper with modified argv
logger.debug(f"Calling pdf_scraper with argv: {argv}")
@@ -291,11 +292,11 @@ class CreateCommand:
from skill_seekers.cli import unified_scraper
# Reconstruct argv for unified_scraper
argv = ['unified_scraper']
argv = ["unified_scraper"]
# Add config file
config_path = self.source_info.parsed['config_path']
argv.extend(['--config', config_path])
config_path = self.source_info.parsed["config_path"]
argv.extend(["--config", config_path])
# Add universal arguments (unified scraper supports most)
self._add_common_args(argv)
@@ -317,53 +318,54 @@ class CreateCommand:
"""
# Identity arguments
if self.args.name:
argv.extend(['--name', self.args.name])
elif hasattr(self, 'source_info') and self.source_info:
argv.extend(["--name", self.args.name])
elif hasattr(self, "source_info") and self.source_info:
# Use suggested name from source detection
argv.extend(['--name', self.source_info.suggested_name])
argv.extend(["--name", self.source_info.suggested_name])
if self.args.description:
argv.extend(['--description', self.args.description])
argv.extend(["--description", self.args.description])
if self.args.output:
argv.extend(['--output', self.args.output])
argv.extend(["--output", self.args.output])
# Enhancement arguments (consolidated to --enhance-level only)
if self.args.enhance_level > 0:
argv.extend(['--enhance-level', str(self.args.enhance_level)])
argv.extend(["--enhance-level", str(self.args.enhance_level)])
if self.args.api_key:
argv.extend(['--api-key', self.args.api_key])
argv.extend(["--api-key", self.args.api_key])
# Behavior arguments
if self.args.dry_run:
argv.append('--dry-run')
argv.append("--dry-run")
if self.args.verbose:
argv.append('--verbose')
argv.append("--verbose")
if self.args.quiet:
argv.append('--quiet')
argv.append("--quiet")
# RAG arguments (NEW - universal!)
if getattr(self.args, 'chunk_for_rag', False):
argv.append('--chunk-for-rag')
if getattr(self.args, 'chunk_size', None) and self.args.chunk_size != 512:
argv.extend(['--chunk-size', str(self.args.chunk_size)])
if getattr(self.args, 'chunk_overlap', None) and self.args.chunk_overlap != 50:
argv.extend(['--chunk-overlap', str(self.args.chunk_overlap)])
if getattr(self.args, "chunk_for_rag", False):
argv.append("--chunk-for-rag")
if getattr(self.args, "chunk_size", None) and self.args.chunk_size != 512:
argv.extend(["--chunk-size", str(self.args.chunk_size)])
if getattr(self.args, "chunk_overlap", None) and self.args.chunk_overlap != 50:
argv.extend(["--chunk-overlap", str(self.args.chunk_overlap)])
# Preset argument
if getattr(self.args, 'preset', None):
argv.extend(['--preset', self.args.preset])
if getattr(self.args, "preset", None):
argv.extend(["--preset", self.args.preset])
# Config file
if self.args.config:
argv.extend(['--config', self.args.config])
argv.extend(["--config", self.args.config])
# Advanced arguments
if getattr(self.args, 'no_preserve_code_blocks', False):
argv.append('--no-preserve-code-blocks')
if getattr(self.args, 'no_preserve_paragraphs', False):
argv.append('--no-preserve-paragraphs')
if getattr(self.args, 'interactive_enhancement', False):
argv.append('--interactive-enhancement')
if getattr(self.args, "no_preserve_code_blocks", False):
argv.append("--no-preserve-code-blocks")
if getattr(self.args, "no_preserve_paragraphs", False):
argv.append("--no-preserve-paragraphs")
if getattr(self.args, "interactive_enhancement", False):
argv.append("--interactive-enhancement")
def main() -> int:
"""Entry point for create command.
@@ -381,8 +383,8 @@ def main() -> int:
return text.splitlines()
parser = argparse.ArgumentParser(
prog='skill-seekers create',
description='Create skill from any source (auto-detects type)',
prog="skill-seekers create",
description="Create skill from any source (auto-detects type)",
formatter_class=NoWrapFormatter,
epilog=textwrap.dedent("""\
Examples:
@@ -416,19 +418,25 @@ Common Workflows:
skill-seekers create <source> -p quick
skill-seekers create <source> -p standard --enhance-level 2
skill-seekers create <source> --chunk-for-rag
""")
"""),
)
# Add arguments in default mode (universal only)
add_create_arguments(parser, mode='default')
add_create_arguments(parser, mode="default")
# Add hidden help mode flags (use underscore prefix to match CreateParser)
parser.add_argument('--help-web', action='store_true', help=argparse.SUPPRESS, dest='_help_web')
parser.add_argument('--help-github', action='store_true', help=argparse.SUPPRESS, dest='_help_github')
parser.add_argument('--help-local', action='store_true', help=argparse.SUPPRESS, dest='_help_local')
parser.add_argument('--help-pdf', action='store_true', help=argparse.SUPPRESS, dest='_help_pdf')
parser.add_argument('--help-advanced', action='store_true', help=argparse.SUPPRESS, dest='_help_advanced')
parser.add_argument('--help-all', action='store_true', help=argparse.SUPPRESS, dest='_help_all')
parser.add_argument("--help-web", action="store_true", help=argparse.SUPPRESS, dest="_help_web")
parser.add_argument(
"--help-github", action="store_true", help=argparse.SUPPRESS, dest="_help_github"
)
parser.add_argument(
"--help-local", action="store_true", help=argparse.SUPPRESS, dest="_help_local"
)
parser.add_argument("--help-pdf", action="store_true", help=argparse.SUPPRESS, dest="_help_pdf")
parser.add_argument(
"--help-advanced", action="store_true", help=argparse.SUPPRESS, dest="_help_advanced"
)
parser.add_argument("--help-all", action="store_true", help=argparse.SUPPRESS, dest="_help_all")
# Parse arguments
args = parser.parse_args()
@@ -437,67 +445,62 @@ Common Workflows:
if args._help_web:
# Recreate parser with web-specific arguments
parser_web = argparse.ArgumentParser(
prog='skill-seekers create',
description='Create skill from web documentation',
formatter_class=argparse.RawDescriptionHelpFormatter
prog="skill-seekers create",
description="Create skill from web documentation",
formatter_class=argparse.RawDescriptionHelpFormatter,
)
add_create_arguments(parser_web, mode='web')
add_create_arguments(parser_web, mode="web")
parser_web.print_help()
return 0
elif args._help_github:
parser_github = argparse.ArgumentParser(
prog='skill-seekers create',
description='Create skill from GitHub repository',
formatter_class=argparse.RawDescriptionHelpFormatter
prog="skill-seekers create",
description="Create skill from GitHub repository",
formatter_class=argparse.RawDescriptionHelpFormatter,
)
add_create_arguments(parser_github, mode='github')
add_create_arguments(parser_github, mode="github")
parser_github.print_help()
return 0
elif args._help_local:
parser_local = argparse.ArgumentParser(
prog='skill-seekers create',
description='Create skill from local codebase',
formatter_class=argparse.RawDescriptionHelpFormatter
prog="skill-seekers create",
description="Create skill from local codebase",
formatter_class=argparse.RawDescriptionHelpFormatter,
)
add_create_arguments(parser_local, mode='local')
add_create_arguments(parser_local, mode="local")
parser_local.print_help()
return 0
elif args._help_pdf:
parser_pdf = argparse.ArgumentParser(
prog='skill-seekers create',
description='Create skill from PDF file',
formatter_class=argparse.RawDescriptionHelpFormatter
prog="skill-seekers create",
description="Create skill from PDF file",
formatter_class=argparse.RawDescriptionHelpFormatter,
)
add_create_arguments(parser_pdf, mode='pdf')
add_create_arguments(parser_pdf, mode="pdf")
parser_pdf.print_help()
return 0
elif args._help_advanced:
parser_advanced = argparse.ArgumentParser(
prog='skill-seekers create',
description='Create skill - advanced options',
formatter_class=argparse.RawDescriptionHelpFormatter
prog="skill-seekers create",
description="Create skill - advanced options",
formatter_class=argparse.RawDescriptionHelpFormatter,
)
add_create_arguments(parser_advanced, mode='advanced')
add_create_arguments(parser_advanced, mode="advanced")
parser_advanced.print_help()
return 0
elif args._help_all:
parser_all = argparse.ArgumentParser(
prog='skill-seekers create',
description='Create skill - all options',
formatter_class=argparse.RawDescriptionHelpFormatter
prog="skill-seekers create",
description="Create skill - all options",
formatter_class=argparse.RawDescriptionHelpFormatter,
)
add_create_arguments(parser_all, mode='all')
add_create_arguments(parser_all, mode="all")
parser_all.print_help()
return 0
# Setup logging
log_level = logging.DEBUG if args.verbose else (
logging.WARNING if args.quiet else logging.INFO
)
logging.basicConfig(
level=log_level,
format='%(levelname)s: %(message)s'
)
log_level = logging.DEBUG if args.verbose else (logging.WARNING if args.quiet else logging.INFO)
logging.basicConfig(level=log_level, format="%(levelname)s: %(message)s")
# Validate source provided
if not args.source:
@@ -507,5 +510,6 @@ Common Workflows:
command = CreateCommand(args)
return command.execute()
if __name__ == '__main__':
if __name__ == "__main__":
sys.exit(main())