Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add poetry #85

Open
wants to merge 23 commits into
base: main
Choose a base branch
from
Open

Add poetry #85

wants to merge 23 commits into from

Conversation

itay-dar-lmnd
Copy link
Contributor

@itay-dar-lmnd itay-dar-lmnd commented Oct 31, 2024

Generated description

Below is a concise technical summary of the changes proposed in this PR:

This pull request significantly refactors the PyNest framework, transitioning to a more modular and maintainable architecture. It introduces Poetry for dependency management, reorganizes the project structure, enhances database configurations, improves CLI functionality, and updates web components. The changes aim to provide a more robust, flexible, and developer-friendly framework while maintaining backwards compatibility.

TopicDetails
Test Suite Refactoring Updates test files to accommodate the new framework structure and import paths
Modified files (6)
  • tests/test_core/__init__.py
  • tests/test_core/test_decorators/test_controller.py
  • tests/test_core/test_database/test_odm.py
  • tests/test_core/test_database/test_orm.py
  • tests/test_core/test_pynest_factory.py
  • tests/test_core/test_pynest_application.py
Latest Contributors(2)
UserCommitDate
[email protected]Migrate-pynest-to-poet...December 20, 2024
[email protected]Add-HTTP-Status-Code-F...June 24, 2024
Dependency Management Introduces Poetry for dependency management and updates project metadata, improving package management and distribution
Modified files (2)
  • README.md
  • pyproject.toml
Latest Contributors(2)
UserCommitDate
[email protected]Increment-version-toDecember 20, 2024
[email protected]Migrate-pynest-to-poet...December 20, 2024
Database Enhancements Improves database configurations and providers, offering better flexibility and support for various database types
Modified files (7)
  • nest/database/orm_config.py
  • nest/database/orm_provider.py
  • nest/database/base_config.py
  • nest/database/utils.py
  • nest/database/odm_provider.py
  • nest/database/odm_config.py
  • nest/database/__init__.py
Latest Contributors(0)
UserCommitDate
CLI Improvements Updates CLI functionality and templates for better code generation and project scaffolding
Modified files (15)
  • nest/cli/src/utils.py
  • nest/cli/templates/sqlite_template.py
  • nest/cli/src/app_controller.py
  • nest/cli/templates/mysql_template.py
  • nest/cli/templates/postgres_template.py
  • nest/cli/pynest_cli_factory.py
  • nest/cli/templates/orm_template.py
  • nest/cli/templates/blank_template.py
  • nest/cli/templates/base_template.py
  • nest/cli/templates/cli_templates.py
  • nest/cli/src/app_module.py
  • nest/cli/templates/mongo_template.py
  • nest/cli/src/generate/generate_controller.py
  • nest/cli/__init__.py
  • nest/cli/cli_decorators.py
Latest Contributors(2)
UserCommitDate
[email protected]Migrate-pynest-to-poet...December 20, 2024
[email protected]initial-Package-CommitMay 19, 2023
Web Component Updates Separates web-specific functionality into a dedicated module, enhancing the framework's flexibility for different types of applications
Modified files (8)
  • nest/web/pynest_fastapi_application.py
  • nest/web/http_method.py
  • nest/web/pynset_web_factory.py
  • nest/web/route_resolver.py
  • nest/web/class_based_view.py
  • nest/web/http_code.py
  • nest/web/controller.py
  • nest/web/__init__.py
Latest Contributors(0)
UserCommitDate
CI/CD Pipeline Updates Modifies GitHub Actions workflows to align with the new project structure and dependency management
Modified files (4)
  • .github/workflows/deploy_docs.yaml
  • .github/workflows/tests.yaml
  • .github/workflows/integration_test.yaml
  • .github/workflows/cli_test.yaml
Latest Contributors(2)
UserCommitDate
ItayTheDarUpdate-deploy_docs.yam...December 26, 2024
[email protected]Migrate-pynest-to-poet...December 20, 2024
Documentation Updates Revises documentation to reflect the new project structure and features
Modified files (10)
  • docs/blank.md
  • docs/dependency_injection.md
  • mkdocs.yml
  • docs/sync_orm.md
  • docs/mongodb.md
  • docs/getting_started.md
  • docs/async_orm.md
  • docs/index.html
  • docs/controllers.md
  • docs/providers.md
Latest Contributors(2)
UserCommitDate
dev0GuyImprove-Docs-Design-91December 26, 2024
[email protected]Fix-async-orm-provider...September 15, 2024
Other Other files
Modified files (7)
  • docs/cli_app.md
  • nest/core/decorators/__init__.py
  • nest/cli/click_handlers.py
  • nest/__init__.py
  • nest/cli/templates/abstract_empty_template.py
  • nest/cli/templates/relational_db_template.py
  • nest/cli/templates/mongo_db_template.py
Latest Contributors(2)
UserCommitDate
[email protected]Migrate-pynest-to-poet...December 20, 2024
[email protected]Increment-version-toSeptember 15, 2024
Plugin System Removal Removes the existing plugin system, potentially to be replaced with a more robust solution in the future
Modified files (10)
  • nest/plugins/modules/auth/__init__.py
  • nest/plugins/controllers/__init__.py
  • nest/plugins/modules/__init__.py
  • nest/plugins/services/__init__.py
  • nest/plugins/modules/redis/redis_module.py
  • nest/plugins/modules/redis/redis_controller.py
  • nest/plugins/modules/redis/__init__.py
  • nest/plugins/__init__.py
  • nest/plugins/modules/redis/redis_model.py
  • nest/plugins/modules/redis/redis_service.py
Latest Contributors(2)
UserCommitDate
[email protected]Migrate-pynest-to-poet...December 20, 2024
danielmoumeny212Introducing-Module-Dec...April 11, 2024
Core Restructuring Refactors the core components of PyNest, reorganizing modules and updating import statements to improve modularity and maintainability
Modified files (8)
  • nest/core/module.py
  • nest/core/pynest_factory.py
  • nest/core/pynest_container.py
  • nest/core/pynest_app_context.py
  • nest/core/__init__.py
  • nest/core/utils.py
  • nest/core/injectable.py
  • nest/core/nest_module.py
Latest Contributors(2)
UserCommitDate
[email protected]feat-build-cli-apps-wi...August 06, 2024
[email protected]Add-HTTP-Status-Code-F...June 24, 2024
Example Applications Updates example applications to align with the new framework structure and best practices
Modified files (37)
  • examples/OrmAsyncApp/src/config.py
  • examples/CommandLineApp/src/app_module.py
  • examples/MongoApp/src/user/user_controller.py
  • examples/OrmAsyncApp/src/user/user_controller.py
  • examples/BlankApp/src/user/user_controller.py
  • examples/OrmAsyncApp/src/app_module.py
  • examples/OrmSyncApp/src/product/product_controller.py
  • examples/OrmSyncApp/src/config.py
  • examples/MongoApp/src/product/product_service.py
  • examples/OrmAsyncApp/src/app_controller.py
  • examples/MongoApp/src/product/product_controller.py
  • examples/MongoApp/src/config.py
  • examples/OrmSyncApp/src/example/example_service.py
  • examples/BlankApp/src/app_controller.py
  • examples/OrmSyncApp/src/app_controller.py
  • examples/OrmAsyncApp/src/product/product_controller.py
  • examples/CommandLineApp/src/user/user_controller.py
  • examples/OrmSyncApp/src/product/product_service.py
  • examples/OrmAsyncApp/src/example/example_controller.py
  • examples/BlankApp/src/example/example_service.py
  • examples/MongoApp/src/example/example_service.py
  • examples/OrmAsyncApp/src/user/user_service.py
  • examples/OrmSyncApp/src/user/user_controller.py
  • examples/BlankApp/src/example/example_controller.py
  • examples/OrmSyncApp/src/user/user_service.py
  • examples/BlankApp/src/app_module.py
  • examples/MongoApp/src/user/user_service.py
  • examples/CommandLineApp/src/app_controller.py
  • examples/MongoApp/src/example/example_controller.py
  • examples/OrmAsyncApp/src/product/product_service.py
  • examples/MongoApp/src/app_controller.py
  • examples/MongoApp/src/app_module.py
  • examples/OrmSyncApp/src/example/example_controller.py
  • examples/OrmAsyncApp/src/example/example_service.py
  • examples/OrmSyncApp/src/app_module.py
  • examples/BlankApp/src/user/user_service.py
  • examples/BlankApp/src/product/product_controller.py
Latest Contributors(2)
UserCommitDate
[email protected]feat-build-cli-apps-wi...August 06, 2024
ItayTheDarFix-branch-60May 21, 2024
This pull request is reviewed by Baz. Join @itay-dar-lmnd and the rest of your team on (Baz).

@ItayTheDar ItayTheDar self-requested a review November 1, 2024 04:50
@XChikuX
Copy link

XChikuX commented Dec 26, 2024

A much better option this early in the project is to use uv from https://astral.sh

@itay-dar-lmnd
Copy link
Contributor Author

A much better option this early in the project is to use uv from https://astral.sh

really? i tried uv, and i know that fastapi also use uv, but it just feel like a not so much faster version of poetry with much poorer dev-x
Why do you recommend on uv?

@XChikuX
Copy link

XChikuX commented Dec 26, 2024

it just feel like a not so much faster version of poetry

It's at least 30x as faster for me. Not sure how you are testing things.

The only qualm I have is that uv doesn't support traditional poetry semver strings

like: '^', '~' , But instead relies solely on '==', '>=', '<='

Looks a bit ugly. But everything else is brilliant.

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