Reworked the Python dependency installation step in the `.forgejo/workflows/pdoc.yml` workflow file to install from the current directory (`.`) instead of specifying packages directly. This adjustment ensures that local package dependencies are correctly resolved and installed, aligning with best practices for Python projects. Additionally, streamlined the documentation generation process by modifying the `pdoc` execution command to use the package's dot notation, improving clarity and consistency in how the `pdoc` tool is invoked for generating Markdown documentation.
This change enhances the maintainability of our documentation workflow and ensures that our environment mirrors production more closely, potentially reducing the occurrence of "works on my machine" issues.
Simplified the Python dependency installation process within the pdoc workflow by combining multiple pip install commands into a single instruction. This reduces the number of steps and makes the workflow more efficient. The update also includes the removal of unnecessary comments and unused dependency installation commands, making the YAML file cleaner and easier to understand. This change could potentially speed up the documentation generation process by reducing the overall runtime of the workflow.
Restructured the entire project directory, making `plankapy` pip-installable, enhancing its modularity and maintainability. This involved moving and renaming Python source files and tests into a dedicated `src/plankapy` structure, introducing a `pyproject.toml` for modern packaging standards, and removing obsolete `setup.py` and `__init__.py` files. Updated CI/CD pipelines to accommodate the new structure, ensuring continued automation efficiency. Added a `test_config.py` for centralized test configuration, improving test reliability and ease of modification.
- Migrated project documentation and workflow under new `.forgejo` directory for consistency with Forgejo platform requirements.
- Enhanced Docker containerization in CI builds by specifying a node-based container, streamlining the environment setup process.
- Expanded `.gitignore` to include `venv/`, promoting local development best practices.
- Introduced a comprehensive README update, clarifying the project's forked nature and pip-installation goal, fostering better community understanding and contribution suitability.