From 2ebf6c8cee8efce390afbe08482b0296f4d0297f Mon Sep 17 00:00:00 2001 From: yusyus Date: Thu, 1 Jan 2026 18:57:21 +0300 Subject: [PATCH] chore: Bump version to v2.5.2 - Package Configuration Improvement MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Switch from manual package listing to automatic discovery - Improves maintainability and prevents missing module bugs - All tests passing (700+ tests) - Package contents verified identical to v2.5.1 Fixes #226 Merges #227 Thanks to @iamKhan79690 for the contribution! 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 Co-Authored-By: Anas Ur Rehman (@iamKhan79690) --- CHANGELOG.md | 35 +++++++++++++++++++++++++ pyproject.toml | 10 ++++--- src/skill_seekers/__init__.py | 2 +- src/skill_seekers/cli/__init__.py | 2 +- src/skill_seekers/mcp/__init__.py | 2 +- src/skill_seekers/mcp/tools/__init__.py | 2 +- tests/test_package_structure.py | 8 +++--- 7 files changed, 49 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2acef8f..b15b47c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,41 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 --- +## [2.5.2] - 2025-12-31 + +### 🔧 Package Configuration Improvement + +This **patch release** improves the packaging configuration by switching from manual package listing to automatic package discovery, preventing similar issues in the future. + +### Changed + +- **Package Discovery**: Switched from manual package listing to automatic discovery in pyproject.toml ([#227](https://github.com/yusufkaraaslan/Skill_Seekers/pull/227)) + - **Before**: Manually listed 5 packages (error-prone when adding new modules) + - **After**: Automatic discovery using `[tool.setuptools.packages.find]` + - **Benefits**: Future-proof, prevents missing module bugs, follows Python packaging best practices + - **Impact**: No functional changes, same packages included + - **Credit**: Thanks to [@iamKhan79690](https://github.com/iamKhan79690) for the improvement! + +### Package Structure + +No changes to package contents - all modules from v2.5.1 are still included: +- ✅ `skill_seekers` (core) +- ✅ `skill_seekers.cli` (CLI tools) +- ✅ `skill_seekers.cli.adaptors` (platform adaptors) +- ✅ `skill_seekers.mcp` (MCP server) +- ✅ `skill_seekers.mcp.tools` (MCP tools) + +### Related Issues + +- Closes #226 - MCP server package_skill tool fails (already fixed in v2.5.1, improved by this release) +- Merges #227 - Update setuptools configuration to include adaptors module + +### Contributors + +- [@iamKhan79690](https://github.com/iamKhan79690) - Automatic package discovery implementation + +--- + ## [2.5.1] - 2025-12-30 ### 🐛 Critical Bug Fix - PyPI Package Broken diff --git a/pyproject.toml b/pyproject.toml index a43bfdc..f1ee2df 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "skill-seekers" -version = "2.5.1" +version = "2.5.2" description = "Convert documentation websites, GitHub repositories, and PDFs into Claude AI skills" readme = "README.md" requires-python = ">=3.10" @@ -132,10 +132,12 @@ skill-seekers-install = "skill_seekers.cli.install_skill:main" skill-seekers-install-agent = "skill_seekers.cli.install_agent:main" [tool.setuptools] -packages = ["skill_seekers", "skill_seekers.cli", "skill_seekers.cli.adaptors", "skill_seekers.mcp", "skill_seekers.mcp.tools"] +package-dir = {"" = "src"} -[tool.setuptools.package-dir] -"" = "src" +[tool.setuptools.packages.find] +where = ["src"] +include = ["skill_seekers*"] +namespaces = false [tool.setuptools.package-data] skill_seekers = ["py.typed"] diff --git a/src/skill_seekers/__init__.py b/src/skill_seekers/__init__.py index 122002f..43f99e8 100644 --- a/src/skill_seekers/__init__.py +++ b/src/skill_seekers/__init__.py @@ -5,7 +5,7 @@ This package provides tools for automatically scraping, organizing, and packagin documentation from various sources into uploadable Claude AI skills. """ -__version__ = "2.5.1" +__version__ = "2.5.2" __author__ = "Yusuf Karaaslan" __license__ = "MIT" diff --git a/src/skill_seekers/cli/__init__.py b/src/skill_seekers/cli/__init__.py index 1f50e9b..4928548 100644 --- a/src/skill_seekers/cli/__init__.py +++ b/src/skill_seekers/cli/__init__.py @@ -28,7 +28,7 @@ except ImportError: open_folder = None read_reference_files = None -__version__ = "2.5.1" +__version__ = "2.5.2" __all__ = [ "LlmsTxtDetector", diff --git a/src/skill_seekers/mcp/__init__.py b/src/skill_seekers/mcp/__init__.py index 56387a0..7dc870a 100644 --- a/src/skill_seekers/mcp/__init__.py +++ b/src/skill_seekers/mcp/__init__.py @@ -28,6 +28,6 @@ Usage: in ~/.config/claude-code/mcp.json """ -__version__ = "2.5.1" +__version__ = "2.5.2" __all__ = ["agent_detector"] diff --git a/src/skill_seekers/mcp/tools/__init__.py b/src/skill_seekers/mcp/tools/__init__.py index c07a975..926f80c 100644 --- a/src/skill_seekers/mcp/tools/__init__.py +++ b/src/skill_seekers/mcp/tools/__init__.py @@ -11,7 +11,7 @@ Tools are organized by functionality: - source_tools: Config source management (fetch, submit, add/remove sources) """ -__version__ = "2.5.1" +__version__ = "2.5.2" from .config_tools import ( generate_config as generate_config_impl, diff --git a/tests/test_package_structure.py b/tests/test_package_structure.py index 0af6248..055a272 100644 --- a/tests/test_package_structure.py +++ b/tests/test_package_structure.py @@ -21,7 +21,7 @@ class TestCliPackage: """Test that skill_seekers.cli package has __version__.""" import skill_seekers.cli assert hasattr(skill_seekers.cli, '__version__') - assert skill_seekers.cli.__version__ == '2.5.1' + assert skill_seekers.cli.__version__ == '2.5.2' def test_cli_has_all(self): """Test that skill_seekers.cli package has __all__ export list.""" @@ -77,7 +77,7 @@ class TestMcpPackage: """Test that skill_seekers.mcp package has __version__.""" import skill_seekers.mcp assert hasattr(skill_seekers.mcp, '__version__') - assert skill_seekers.mcp.__version__ == '2.5.1' + assert skill_seekers.mcp.__version__ == '2.5.2' def test_mcp_has_all(self): """Test that skill_seekers.mcp package has __all__ export list.""" @@ -94,7 +94,7 @@ class TestMcpPackage: """Test that skill_seekers.mcp.tools has __version__.""" import skill_seekers.mcp.tools assert hasattr(skill_seekers.mcp.tools, '__version__') - assert skill_seekers.mcp.tools.__version__ == '2.5.1' + assert skill_seekers.mcp.tools.__version__ == '2.5.2' class TestPackageStructure: @@ -194,7 +194,7 @@ class TestRootPackage: """Test that skill_seekers root package has __version__.""" import skill_seekers assert hasattr(skill_seekers, '__version__') - assert skill_seekers.__version__ == '2.5.1' + assert skill_seekers.__version__ == '2.5.2' def test_root_has_metadata(self): """Test that skill_seekers root package has metadata."""