Skip to content

Conversation

@quinneden
Copy link
Owner

This pull request introduces significant updates to the acmsg project, focusing on improving automation, restructuring the codebase, enhancing dependency management, and refining the CLI functionality. Key changes include the addition of a GitHub Actions workflow for testing, restructuring of the source code, and updates to project configuration files.

CI/CD and Testing Enhancements:

  • Added a GitHub Actions workflow (.github/workflows/test.yaml) to automate testing, type checking, and code coverage reporting for the main branch. This includes steps for setting up Python, syncing dependencies, running tests with pytest, and uploading coverage reports to Codecov.
  • Introduced a pytest.ini configuration file to standardize test discovery and coverage reporting.

Codebase Restructuring:

  • Refactored the src/acmsg package to modularize functionality, including the addition of __init__.py files for better package management and re-exports of key components. [1] [2]
  • Simplified the CLI entry point (src/acmsg/__main__.py) by delegating command handling to dedicated modules and removing redundant code for improved maintainability.

Dependency and Build Management:

  • Updated pyproject.toml to include type stubs for dependencies (types-colorama, types-pyyaml, types-requests) and restructured package discovery using tool.setuptools.packages.find. [1] [2]
  • Added a justfile with common project tasks such as build, test, sync, and bump-version to streamline development workflows.

Asset and File Management:

  • Updated MANIFEST.in to include Python files and moved asset paths from src/acmsg/assets to src/acmsg/templates/assets.

Documentation and Cleanup:

  • Removed outdated TODO items from TODO.md to reflect the current state of the project.

quinneden added 3 commits May 9, 2025 18:15
Set up project testing infrastructure with pytest, GitHub Actions CI,
and comprehensive test suite. Reorganize code into a more modular
package structure with proper API boundaries, improve type safety with
mypy annotations, and add utility scripts for development workflows.
The refactoring preserves all existing functionality while making the
codebase more maintainable.
@quinneden quinneden merged commit 879c2db into main May 10, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant