Skip to content

Latest commit

 

History

History
48 lines (30 loc) · 3.59 KB

File metadata and controls

48 lines (30 loc) · 3.59 KB
graph LR
    Plugin_Entrypoint_CLI["Plugin Entrypoint & CLI"]
    Project_Workflow_Orchestrator["Project Workflow Orchestrator"]
    Workspace_Configuration_Manager["Workspace & Configuration Manager"]
    Project_Utilities["Project Utilities"]
    Plugin_Entrypoint_CLI -- "delegates execution to" --> Project_Workflow_Orchestrator
    Project_Workflow_Orchestrator -- "utilizes" --> Workspace_Configuration_Manager
    Project_Workflow_Orchestrator -- "utilizes" --> Project_Utilities
    click Plugin_Entrypoint_CLI href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/poetry-multiproject-plugin/Plugin_Entrypoint_CLI.md" "Details"
    click Project_Workflow_Orchestrator href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/poetry-multiproject-plugin/Project_Workflow_Orchestrator.md" "Details"
    click Workspace_Configuration_Manager href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/poetry-multiproject-plugin/Workspace_Configuration_Manager.md" "Details"
    click Project_Utilities href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/poetry-multiproject-plugin/Project_Utilities.md" "Details"
Loading

CodeBoardingDemoContact

Details

One paragraph explaining the functionality which is represented by this graph. What the main flow is and what is its purpose.

Plugin Entrypoint & CLI [Expand]

This component serves as the primary interface for the plugin within the Poetry ecosystem. It is responsible for registering the buildproject and checkproject commands with Poetry, parsing command-line arguments provided by the user, and delegating the execution to the appropriate project workflow.

Related Classes/Methods: None

Project Workflow Orchestrator [Expand]

This core component defines and manages the high-level execution flow for both building and checking multi-projects. It coordinates the various sub-processes, such as setting up the temporary workspace, preparing dependencies, performing code transformations, and initiating static analysis, by interacting with other specialized components.

Related Classes/Methods: None

Workspace & Configuration Manager [Expand]

This component handles all aspects related to the temporary project workspace and pyproject.toml configuration. Its responsibilities include creating isolated environments, copying necessary project files and packages, and managing the reading, generation, and manipulation of pyproject.toml files to correctly define project metadata and dependencies within the temporary context.

Related Classes/Methods: None

Project Utilities [Expand]

This component provides a suite of specialized functionalities that support the project workflows. It includes an AST-based engine for rewriting Python source code (e.g., adjusting import paths), a module for installing project dependencies within the temporary environment, and an integration layer for external static analysis tools like MyPy to perform code validation.

Related Classes/Methods: None