Repository navigation
Main dev - #1
Merged
Merged
Main dev#1
Conversation
- Add pyproject.toml for isage-examples (v0.1.0) - Update sage-apps to v0.2.4 with enhanced packaging - Add build.sh automation script for package building and publishing - Add quickstart.sh for easy installation - Add comprehensive PyPI release documentation - Add .gitignore for Python projects - Add MANIFEST.in for both packages - Add test_apps.py for application testing - Successfully published isage-examples to PyPI
🏗️ Major Structural Changes: - Renamed apps/ → examples/ (clearer purpose as application examples) - Moved tutorials/ → SAGE/tutorials/ (tutorials belong in main framework repo) - Created docs/ directory for centralized documentation 📚 Documentation: - Created sage-examples.chatmode.md (Custom Copilot chat mode) - Updated copilot-instructions.md with comprehensive SAGE knowledge - Moved PYPI_*.md files to docs/ - Created DEVELOPMENT.md and REFACTORING_SUMMARY.md - Simplified README.md (removed excessive migration notices) 🔧 Development Tools: - Added .pre-commit-config.yaml (11 hooks: ruff, mypy, shellcheck, mdformat, etc.) - Created quality.yml and tests.yml workflows - Aligned with SAGE main repository standards ✨ Breaking Changes: - apps/ → examples/ (update imports and paths) - tutorials/ removed from sage-examples (now in SAGE repo) - Removed backward compatibility aliases in pyproject.toml 📦 Dependencies: - Simplified pyproject.toml descriptions - Removed tutorial-related dependencies - Focused on application examples only 🎯 Purpose: This refactoring makes sage-examples a focused repository for production application examples, while tutorials are integrated into the SAGE main repository for better discoverability and maintenance. See docs/REFACTORING_SUMMARY.md for complete details.
🧹 Cleanup: - Remove broken symlink 'data' (pointed to deleted tutorials/agents/data) - Remove tutorials/ references from README.md and copilot-instructions.md - Update DEVELOPMENT.md with current structure (no tutorials/, no data/) - Add MIGRATION_COMPLETE.md documenting the tutorials migration 📝 Documentation Updates: - Update README.md: removed 'data/' from structure, fixed test commands - Update copilot-instructions.md: - Tutorials now in SAGE repo (SAGE/tutorials/) - Examples data in sage-apps packages - Removed outdated tutorial running commands - Update DEVELOPMENT.md: reflect current directory structure All references to tutorials/ now correctly point to SAGE/tutorials/.
🔧 Configuration: - Create tools/config/ruff.toml (centralized ruff config) - Update .pre-commit-config.yaml to use unified config - Update pyproject.toml to extend tools/config/ruff.toml - Update sage-apps/pyproject.toml path: tools/ruff.toml → tools/config/ruff.toml 🐛 Bug Fixes: - Fix undefined 'project_root' in examples/run_medical_diagnosis.py - Fix undefined 'project_root' in sage-apps medical_diagnosis/scripts/prepare_data.py - Remove unused 'Path' imports in examples/ - Add strict=True to zip() calls in video operators (B905) ✅ Verification: - ruff check . --config tools/config/ruff.toml ✅ All checks passed - ruff format . --config tools/config/ruff.toml ✅ Formatted 1 file - pre-commit run ruff --all-files ✅ Passed - pre-commit run ruff-format --all-files ✅ Passed This fixes the CI error: Cause: Failed to load extended configuration '/home/runner/work/sage-examples/tools/ruff.toml' Now sage-examples follows SAGE repository's pre-commit hooks pattern.
- Update reference to sage-tutorials (now independent repository) - Update reference to sage-benchmark (migrated to independent repository) - Fix formatting and numbering
- Distinguish between 404 (package not found) and network errors - 404 returns exit 1 (normal for first publish) instead of exit 2 - Update error message from 'network unavailable' to 'network/timeout issue' - Add detailed comments for exit codes (0=exists, 1=not found, 2=error)
- Inline ruff configuration instead of extending tools/config/ruff.toml - Fixes PyPI publish failure: bytecode compiler can't find external config in temp dir - Error was: 'Illegal character at line 133' after pyproject.toml modification
- Bytecode compiler cannot parse TOML arrays with inline comments - Simplified package-data configuration - Successfully published to TestPyPI
- 移除所有额外的可选依赖组(examples, video, medical 等) - 所有应用依赖移至核心 dependencies(默认安装) - 只保留 dev 可选依赖(pytest, ruff, mypy) - sage-apps 自动安装为核心依赖 - 简化 quickstart.sh,移除 C++ 构建步骤 - 更新 README.md 安装说明 - 修复测试警告(使用 assert 而非 return) - 修复 E402 导入位置警告 遵循 SAGE 原则:只允许默认和 dev 两种依赖模式。 用户运行 `pip install -e .` 即可获得完整功能,无需额外标志。
- 目录 sage-apps/ → apps/ (避免与仓库名混淆) - PyPI 包名保持 isage-apps 不变 - 更新所有脚本和文档中的引用 - 删除废弃的 requirements.txt (所有依赖已在 pyproject.toml) 符合 SAGE 原则:清晰的目录结构,避免命名混淆。
- testpaths: sage-apps/tests → apps/tests - exclude: sage-apps* → apps* 修复重命名后的测试路径,确保 pytest 能找到所有测试。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.