Skip to content

(feat) build cli apps with pynest - #73

Merged
ItayTheDar merged 15 commits into
PythonNest:mainfrom
itay-dar-lmnd:feat_build_cli_apps_with_pynest
Aug 6, 2024
Merged

ItayTheDar merged 15 commits into
PythonNest:mainfrom
itay-dar-lmnd:feat_build_cli_apps_with_pynest

Conversation

@itay-dar-lmnd

@itay-dar-lmnd itay-dar-lmnd commented Jul 28, 2024 •

Copy link
Copy Markdown
Contributor

PR Summary and Walkthrough for PyNest

Overview

This pull request (PR) includes several updates across various components of the PyNest project. The primary focus is on refactoring, enhancements, and expanding functionality. Key changes include updating CLI commands, restructuring modules and services, and improving documentation.

Key Changes

  1. CLI Command Refactoring

    • The CLI commands have been significantly refactored for clarity and consistency. The create-nest-app command has been replaced with generate application, streamlining the command structure and making it more intuitive.
    • The g module command has been updated to generate resource, which now includes options for generating controllers, services, and modules more cohesively.
  2. Documentation Updates

    • Extensive updates have been made to the documentation, including the CLI usage guide, controller examples, and module management. These updates clarify usage and provide more detailed examples, making it easier for users to understand and implement features.
    • The docs/async_orm.md and other related documents have been updated to reflect the latest changes in syntax and best practices.
  3. Workflow Modifications

    • The GitHub workflows (cli_test.yaml and integration_test.yaml) have been updated to align with the new CLI command structure. This ensures that CI processes accurately reflect the latest application generation and testing methodologies.
  4. Module and Service Enhancements

    • New files have been added under the examples/CommandLineApp directory, illustrating the use of CLI commands within a modular structure. This includes AppController, AppService, and related files, providing a comprehensive example of setting up and using the CLI within an application context.
  5. Version Bump

    • The project version has been updated from 0.2.3 to 0.2.4, reflecting the incremental improvements and updates included in this PR.

Detailed Walkthrough

  1. CLI Command Changes

    • The PR replaces the create-nest-app command with generate application, making it more descriptive and aligned with the command's function. The command now includes options for specifying the app name, database type, and async configuration.
  2. Documentation Improvements

    • The docs/controllers.md has been extensively rewritten to include a detailed explanation of controller creation, routing, and HTTP methods. It now provides step-by-step guides and examples to illustrate these concepts clearly.
    • Changes to the mkdocs.yml file reorganize the documentation structure, making it easier to navigate and find relevant information.
  3. New Example Files

    • The addition of example files under the examples/CommandLineApp directory demonstrates the practical application of CLI commands. These examples serve as a reference for setting up CLI applications, including controller and service layers.
  4. Workflow Updates

    • The modifications to the .github/workflows/cli_test.yaml and .github/workflows/integration_test.yaml files ensure that the CI/CD pipelines are consistent with the new command structure, preventing potential build and deployment issues.

Conclusion

This PR represents a significant step forward in the PyNest project's development, enhancing usability, consistency, and documentation. The changes improve both the developer experience and the overall functionality of the CLI and associated tools. Reviewers are encouraged to test the new commands and review the updated documentation to ensure clarity and correctness.

@ItayTheDar ItayTheDar changed the title (Feat) build cli apps with pynest (feat) build cli apps with pynest Jul 28, 2024
@ItayTheDar
ItayTheDar self-requested a review July 28, 2024 15:11
from functools import lru_cache


@lru_cache()

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not up to date, need to change to the Injectable decorator

@ItayTheDar
ItayTheDar merged commit 6aa060a into PythonNest:main Aug 6, 2024
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.

2 participants