fastapi-startkit 0.21.0__tar.gz → 0.24.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/PKG-INFO +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/pyproject.toml +1 -1
- fastapi_startkit-0.24.0/src/fastapi_startkit/__init__.py +5 -0
- fastapi_startkit-0.24.0/src/fastapi_startkit/console/__init__.py +7 -0
- fastapi_startkit-0.21.0/src/fastapi_startkit/console.py → fastapi_startkit-0.24.0/src/fastapi_startkit/console/application.py +11 -4
- fastapi_startkit-0.24.0/src/fastapi_startkit/console/command.py +14 -0
- {fastapi_startkit-0.21.0/src/fastapi_startkit/commands → fastapi_startkit-0.24.0/src/fastapi_startkit/console}/publish_command.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/__init__.py +2 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/commands/serve_command.py +22 -12
- fastapi_startkit-0.24.0/src/fastapi_startkit/fastapi/config/__init__.py +3 -0
- fastapi_startkit-0.24.0/src/fastapi_startkit/fastapi/config/fastapi.py +24 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/providers/fastapi_provider.py +13 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/__init__.py +3 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/DBMigrateCommand.py +32 -22
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/DBSeedCommand.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MakeMigrationCommand.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MakeModelCommand.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MakeModelDocstringCommand.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MakeObserverCommand.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MakeSeedCommand.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MigrateFreshCommand.py +14 -4
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MigrateRefreshCommand.py +15 -14
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MigrateResetCommand.py +15 -14
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MigrateRollbackCommand.py +17 -20
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/MigrateStatusCommand.py +18 -15
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/ShellCommand.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/stubs/create_migration.stub +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/config/database.py +1 -1
- fastapi_startkit-0.24.0/src/fastapi_startkit/masoniteorm/migrations/Migration.py +11 -0
- fastapi_startkit-0.21.0/src/fastapi_startkit/masoniteorm/migrations/Migration.py → fastapi_startkit-0.24.0/src/fastapi_startkit/masoniteorm/migrations/Migrator.py +35 -27
- fastapi_startkit-0.24.0/src/fastapi_startkit/masoniteorm/migrations/__init__.py +4 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/MigrationModel.py +1 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/providers/DatabaseProvider.py +3 -3
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/testing/transaction.py +5 -2
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/providers/app_provider.py +1 -1
- fastapi_startkit-0.21.0/src/fastapi_startkit/__init__.py +0 -4
- fastapi_startkit-0.21.0/src/fastapi_startkit/commands/__init__.py +0 -1
- fastapi_startkit-0.21.0/src/fastapi_startkit/masoniteorm/commands/Command.py +0 -6
- fastapi_startkit-0.21.0/src/fastapi_startkit/masoniteorm/commands/Entry.py +0 -43
- fastapi_startkit-0.21.0/src/fastapi_startkit/masoniteorm/migrations/__init__.py +0 -1
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/.DS_Store +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/application.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/carbon/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/carbon/carbon.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/collection/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/collection/collection.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/config/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/config/app.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/configuration/Configuration.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/configuration/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/configuration/config.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/configuration/helpers.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/configuration/providers/ConfigurationProvider.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/configuration/providers/__init__.py +0 -0
- /fastapi_startkit-0.21.0/src/fastapi_startkit/masoniteorm/commands/CanOverrideConfig.py → /fastapi_startkit-0.24.0/src/fastapi_startkit/console/can_override_config.py +0 -0
- /fastapi_startkit-0.21.0/src/fastapi_startkit/masoniteorm/commands/CanOverrideOptionsDefault.py → /fastapi_startkit-0.24.0/src/fastapi_startkit/console/can_override_default_options.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/container/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/container/container.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/environment/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/environment/environment.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions/exceptions.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions/handler.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/DD.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/ExceptionHandler.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/exceptionite/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/exceptionite/blocks.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/exceptionite/controllers.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/exceptionite/solutions.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/exceptionite/tabs.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/handlers/DumpExceptionHandler.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/handlers/HttpExceptionHandler.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/exceptions.backup/handlers/ModelNotFoundHandler.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Auth.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Auth.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Broadcast.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Cache.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Config.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Config.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Dump.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Dump.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Facade.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Gate.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Gate.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Hash.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Hash.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Inertia.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Loader.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Loader.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Mail.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Mail.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Notification.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Notification.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Queue.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Queue.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/RateLimiter.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/RateLimiter.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Request.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Request.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Response.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Response.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Session.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Session.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Url.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Url.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/View.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/View.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Vite.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/Vite.pyi +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/facades/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/commands/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/exceptions.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/requests/model.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/routers/router.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/testing/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/testing/test_case.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/helpers/app.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/helpers/dataclass.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/helpers/string.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/inertia/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/inertia/constant.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/inertia/context.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/inertia/inertia.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/inertia/middleware.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/inertia/props/props.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/inertia/provider.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/loader/Loader.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/loader/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/ChannelFactory.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/BaseChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/DailyChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/MultiBaseChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/SingleChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/SlackChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/StackChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/SyslogChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/TerminalChannel.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/channels/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/config/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/config/channels.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/config/logging.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/drivers/BaseDriver.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/drivers/LogSingleDriver.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/drivers/LogSlackDriver.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/drivers/LogSyslogDriver.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/drivers/LogTerminalDriver.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/drivers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/factory.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/handler.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/listeners.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/logger.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/managers/LoggingManager.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/managers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/providers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/logging/providers/log_provider.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/collection/Collection.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/collection/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/stubs/create_seed.stub +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/stubs/model.stub +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/stubs/observer.stub +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/commands/stubs/table_migration.stub +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/config/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/config/config.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/connections/connection.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/connections/factory.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/connections/manager.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/connections/mysql_connection.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/connections/postgres_connection.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/connections/sqlite_connection.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/expressions/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/expressions/expressions.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/facades/DB.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/facades/Schema.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/facades/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/factory/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/factory/factory.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/helpers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/helpers/misc.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/attribute.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/builder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/caster.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/fields.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/model.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/observer.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/pivot.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/registry.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/models/relationship.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/observers/ObservesEvents.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/observers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/pagination/BasePaginator.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/pagination/LengthAwarePaginator.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/pagination/SimplePaginator.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/pagination/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/providers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/EagerLoadMixin.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/EagerRelation.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/grammars/BaseGrammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/grammars/MSSQLGrammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/grammars/MySQLGrammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/grammars/PostgresGrammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/grammars/SQLiteGrammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/grammars/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/processors/MSSQLPostProcessor.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/processors/MySQLPostProcessor.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/processors/PostgresPostProcessor.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/processors/SQLitePostProcessor.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/processors/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/query/support.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/BaseRelationship.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/BelongsTo.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/BelongsToMany.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/HasMany.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/HasManyThrough.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/HasOne.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/HasOneThrough.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/MorphMany.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/MorphOne.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/MorphTo.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/MorphToMany.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/relationships/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/Blueprint.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/Column.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/ColumnDiff.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/Constraint.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/ForeignKeyConstraint.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/Index.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/Table.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/TableDiff.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/platforms/MSSQLPlatform.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/platforms/MySQLPlatform.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/platforms/Platform.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/platforms/PostgresPlatform.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/platforms/SQLitePlatform.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/platforms/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/schema/schema.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/seeds/Seeder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/seeds/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/stubs/create-migration.html +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/stubs/table-migration.html +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/testing/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/.pytest_cache/.gitignore +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/.pytest_cache/CACHEDIR.TAG +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/.pytest_cache/README.md +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/.pytest_cache/v/cache/lastfailed +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/.pytest_cache/v/cache/nodeids +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/config/database.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/config.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/exceptions.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/factories/Factory.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/factories/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/schema/Schema.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/scopes/BaseScope.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/scopes/SoftDeleteScope.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/scopes/SoftDeletesMixin.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/scopes/UUIDPrimaryKeyMixin.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/scopes/UUIDPrimaryKeyScope.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/scopes/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/scopes/scope.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/testing/BaseTestCaseSelectGrammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/testing/Database.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/testing/TestCase.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/testing/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/User.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/connections/test_base_connections.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/eagers/test_eager.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/factories/test_factories.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/integrations/config/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/integrations/config/database.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/integrations/databases/migrations/2026_01_01_000000_create_users_table.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/integrations/model.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/integrations/test_model.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/models/test_models.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/builder/test_mssql_query_builder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/builder/test_mssql_query_builder_relationships.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/grammar/test_mssql_delete_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/grammar/test_mssql_insert_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/grammar/test_mssql_qmark.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/grammar/test_mssql_select_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/grammar/test_mssql_update_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/schema/test_mssql_schema_builder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mssql/schema/test_mssql_schema_builder_alter.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/builder/test_mysql_builder_transaction.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/builder/test_query_builder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/builder/test_query_builder_scopes.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/builder/test_transactions.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/connections/test_mysql_connection_selects.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/grammar/test_mysql_delete_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/grammar/test_mysql_insert_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/grammar/test_mysql_qmark.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/grammar/test_mysql_select_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/grammar/test_mysql_update_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/model/test_accessors_and_mutators.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/model/test_model.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/relationships/test_belongs_to_many.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/relationships/test_has_many_through.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/relationships/test_has_one_through.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/relationships/test_relationships.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/schema/test_mysql_schema_builder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/schema/test_mysql_schema_builder_alter.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/scopes/test_can_use_global_scopes.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/scopes/test_can_use_scopes.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/mysql/scopes/test_soft_delete.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/builder/test_postgres_query_builder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/builder/test_postgres_transaction.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/grammar/test_delete_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/grammar/test_insert_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/grammar/test_select_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/grammar/test_update_grammar.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/relationships/test_postgres_relationships.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/schema/test_postgres_schema_builder.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/postgres/schema/test_postgres_schema_builder_alter.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/scopes/test_default_global_scopes.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/seeds/test_seeds.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm.backup/tests/utils.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/providers/Provider.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/providers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/config/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/config/storage.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/drivers/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/drivers/fake.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/drivers/local.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/drivers/s3.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/file.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/filestream.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/providers/provider.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/storage/storage.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/testing/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/testing/test_case.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/collections.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/console.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/data/mime.types +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/filesystem.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/http.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/location.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/str.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/structures.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/utils/time.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/__init__.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/config/vite.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/exceptions.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/providers/provider.py +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/stubs/package.json +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/stubs/resources/css/app.css +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/stubs/resources/js/app.ts +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/stubs/templates/index.html +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/stubs/tsconfig.json +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/stubs/vite.config.ts +0 -0
- {fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/vite/vite.py +0 -0
|
@@ -1,19 +1,26 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING
|
|
2
|
+
|
|
1
3
|
from cleo.application import Application as BaseApplication
|
|
2
4
|
from cleo.io.io import IO
|
|
3
|
-
|
|
5
|
+
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
from fastapi_startkit.application import Application
|
|
4
8
|
|
|
5
9
|
|
|
6
10
|
class ConsoleApplication(BaseApplication):
|
|
7
|
-
def __init__(self, app: Application):
|
|
11
|
+
def __init__(self, app: "Application"):
|
|
8
12
|
super().__init__()
|
|
9
13
|
self.app = app
|
|
10
14
|
|
|
11
15
|
# Register commands from Application
|
|
12
16
|
for command in self.app.commands:
|
|
13
17
|
if isinstance(command, type):
|
|
14
|
-
|
|
18
|
+
instance = command()
|
|
15
19
|
else:
|
|
16
|
-
|
|
20
|
+
instance = command
|
|
21
|
+
|
|
22
|
+
instance.set_container(self.app)
|
|
23
|
+
self.add(instance)
|
|
17
24
|
|
|
18
25
|
def render_error(self, error: Exception, io: IO) -> None:
|
|
19
26
|
self.app.exception_manager.report(error)
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from typing import TYPE_CHECKING
|
|
2
|
+
|
|
3
|
+
from .can_override_config import CanOverrideConfig
|
|
4
|
+
from .can_override_default_options import CanOverrideOptionsDefault
|
|
5
|
+
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
from fastapi_startkit import Application
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Command(CanOverrideOptionsDefault, CanOverrideConfig):
|
|
11
|
+
container: "Application"
|
|
12
|
+
|
|
13
|
+
def set_container(self, container: "Application") -> None:
|
|
14
|
+
self.container = container
|
{fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/fastapi/__init__.py
RENAMED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from .providers.fastapi_provider import FastAPIProvider
|
|
2
2
|
from .routers.router import Router
|
|
3
3
|
from .requests.model import RequestModel
|
|
4
|
+
from .config import FastAPIConfig
|
|
4
5
|
|
|
5
|
-
__all__ = ["FastAPIProvider", "Router", "RequestModel"]
|
|
6
|
+
__all__ = ["FastAPIProvider", "Router", "RequestModel", "FastAPIConfig"]
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from
|
|
1
|
+
from fastapi_startkit.console.command import Command
|
|
2
2
|
from cleo.helpers import option
|
|
3
3
|
|
|
4
4
|
|
|
@@ -11,22 +11,22 @@ class ServeCommand(Command):
|
|
|
11
11
|
"port",
|
|
12
12
|
"p",
|
|
13
13
|
flag=False,
|
|
14
|
-
default=
|
|
15
|
-
description="The port to serve the application on",
|
|
14
|
+
default=None,
|
|
15
|
+
description="The port to serve the application on (overrides fastapi config)",
|
|
16
16
|
),
|
|
17
17
|
option(
|
|
18
18
|
"host",
|
|
19
19
|
None,
|
|
20
20
|
flag=False,
|
|
21
|
-
default=
|
|
22
|
-
description="The host to bind to",
|
|
21
|
+
default=None,
|
|
22
|
+
description="The host to bind to (overrides fastapi config)",
|
|
23
23
|
),
|
|
24
24
|
option(
|
|
25
25
|
"reload",
|
|
26
26
|
"r",
|
|
27
27
|
flag=False,
|
|
28
|
-
default=
|
|
29
|
-
description="Enable auto-reload on code changes",
|
|
28
|
+
default=None,
|
|
29
|
+
description="Enable auto-reload on code changes (overrides fastapi config)",
|
|
30
30
|
),
|
|
31
31
|
option(
|
|
32
32
|
"app",
|
|
@@ -39,12 +39,20 @@ class ServeCommand(Command):
|
|
|
39
39
|
|
|
40
40
|
def handle(self):
|
|
41
41
|
import uvicorn
|
|
42
|
+
from fastapi_startkit import Config
|
|
42
43
|
from fastapi_startkit.container import Container
|
|
43
44
|
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
# Resolve server settings: CLI flag > fastapi config > uvicorn default (None)
|
|
46
|
+
cfg_host = Config.get("fastapi.host", "127.0.0.1")
|
|
47
|
+
cfg_port = Config.get("fastapi.port", 8000)
|
|
48
|
+
cfg_reload = Config.get("fastapi.reload", True)
|
|
49
|
+
cfg_reload_dirs = Config.get("fastapi.reload_dirs") or None
|
|
50
|
+
cfg_reload_excludes = Config.get("fastapi.reload_excludes") or None
|
|
51
|
+
|
|
52
|
+
host = self.option("host") or cfg_host
|
|
53
|
+
port = int(self.option("port") or cfg_port)
|
|
54
|
+
reload = cfg_reload if self.option("reload") is None else self.option("reload")
|
|
46
55
|
app = self.option("app")
|
|
47
|
-
reload = self.option("reload")
|
|
48
56
|
|
|
49
57
|
exist = self.is_app_exist()
|
|
50
58
|
|
|
@@ -59,11 +67,13 @@ class ServeCommand(Command):
|
|
|
59
67
|
kwargs.update(
|
|
60
68
|
{
|
|
61
69
|
"app": app,
|
|
62
|
-
"reload": reload,
|
|
63
70
|
"factory": True,
|
|
64
|
-
"reload_excludes": ["*.log", "tests/*"],
|
|
65
71
|
}
|
|
66
72
|
)
|
|
73
|
+
if cfg_reload_dirs is not None:
|
|
74
|
+
kwargs["reload_dirs"] = cfg_reload_dirs
|
|
75
|
+
if cfg_reload_excludes is not None:
|
|
76
|
+
kwargs["reload_excludes"] = cfg_reload_excludes
|
|
67
77
|
|
|
68
78
|
self.line(
|
|
69
79
|
f"<info>Starting Uvicorn server on {host}:{port} [{app}]...</info>"
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import dataclasses
|
|
2
|
+
|
|
3
|
+
from fastapi_startkit.environment import env
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@dataclasses.dataclass
|
|
7
|
+
class FastAPIConfig:
|
|
8
|
+
"""Server configuration for the uvicorn/FastAPI serve command.
|
|
9
|
+
|
|
10
|
+
All fields can be overridden via environment variables or by publishing a
|
|
11
|
+
``config/fastapi.py`` file in the application root.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
host: str = dataclasses.field(default_factory=lambda: env("APP_HOST", "127.0.0.1"))
|
|
15
|
+
port: int = dataclasses.field(default_factory=lambda: env("APP_PORT", 8000))
|
|
16
|
+
reload: bool = dataclasses.field(default_factory=lambda: env("APP_RELOAD", True))
|
|
17
|
+
reload_dirs: list | None = None
|
|
18
|
+
reload_excludes: list = dataclasses.field(
|
|
19
|
+
default_factory=lambda: [
|
|
20
|
+
"*.log",
|
|
21
|
+
"tests/*",
|
|
22
|
+
"node_modules/*",
|
|
23
|
+
]
|
|
24
|
+
)
|
|
@@ -2,12 +2,18 @@ from fastapi_startkit.fastapi.exceptions import HTTPExceptionHandler, Validation
|
|
|
2
2
|
from fastapi import FastAPI
|
|
3
3
|
|
|
4
4
|
from fastapi_startkit.fastapi.commands import ServeCommand
|
|
5
|
+
from fastapi_startkit.fastapi.config import FastAPIConfig
|
|
5
6
|
from fastapi_startkit.providers import Provider
|
|
6
7
|
|
|
7
8
|
|
|
8
9
|
class FastAPIProvider(Provider):
|
|
10
|
+
provider_key = "fastapi"
|
|
11
|
+
|
|
9
12
|
def register(self) -> None:
|
|
10
13
|
"""Create a FastAPI instance and register routers."""
|
|
14
|
+
config = self.resolve_config(FastAPIConfig)
|
|
15
|
+
self.merge_config_from(config, self.provider_key)
|
|
16
|
+
|
|
11
17
|
fastapi = FastAPI(
|
|
12
18
|
title="Jobins AI Agent (LangChain)",
|
|
13
19
|
version="1.0.0",
|
|
@@ -16,9 +22,16 @@ class FastAPIProvider(Provider):
|
|
|
16
22
|
self.app.use_fastapi(fastapi)
|
|
17
23
|
|
|
18
24
|
def boot(self):
|
|
25
|
+
import os
|
|
26
|
+
|
|
19
27
|
self.commands([ServeCommand])
|
|
20
28
|
self._register_exception_handlers()
|
|
21
29
|
|
|
30
|
+
source = os.path.abspath(
|
|
31
|
+
os.path.join(os.path.dirname(__file__), "../config/fastapi.py")
|
|
32
|
+
)
|
|
33
|
+
self.publishes({source: "config/fastapi.py"})
|
|
34
|
+
|
|
22
35
|
def _register_exception_handlers(self):
|
|
23
36
|
"""Wire exception_manager as a catch-all handler for all exceptions."""
|
|
24
37
|
from fastapi import HTTPException
|
{fastapi_startkit-0.21.0 → fastapi_startkit-0.24.0}/src/fastapi_startkit/masoniteorm/__init__.py
RENAMED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
from .config.config import MySQLConfig, PostgresConfig, SQLiteConfig
|
|
2
2
|
from .facades import DB
|
|
3
|
+
from .migrations.Migration import Migration
|
|
4
|
+
from .migrations.Migrator import Migrator
|
|
3
5
|
from .models import Model
|
|
4
6
|
from .providers import DatabaseProvider
|
|
5
7
|
|
|
6
|
-
__all__ = ["DatabaseProvider", "PostgresConfig", "MySQLConfig", "SQLiteConfig", "Model", "DB"]
|
|
8
|
+
__all__ = ["DatabaseProvider", "PostgresConfig", "MySQLConfig", "SQLiteConfig", "Model", "DB", "Migration", "Migrator"]
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import os
|
|
2
|
-
|
|
2
|
+
|
|
3
3
|
from cleo.helpers import option
|
|
4
4
|
|
|
5
|
+
from fastapi_startkit.console import Command
|
|
6
|
+
from fastapi_startkit.masoniteorm.migrations.Migrator import Migrator
|
|
7
|
+
|
|
5
8
|
|
|
6
9
|
class DBMigrateCommand(Command):
|
|
7
10
|
name = "db:migrate"
|
|
@@ -28,12 +31,6 @@ class DBMigrateCommand(Command):
|
|
|
28
31
|
flag=True,
|
|
29
32
|
description="Force migrations without prompt in production",
|
|
30
33
|
),
|
|
31
|
-
option(
|
|
32
|
-
"show",
|
|
33
|
-
"s",
|
|
34
|
-
flag=True,
|
|
35
|
-
description="Shows the output of SQL for migrations that would be running",
|
|
36
|
-
),
|
|
37
34
|
option(
|
|
38
35
|
"directory",
|
|
39
36
|
"d",
|
|
@@ -49,29 +46,42 @@ class DBMigrateCommand(Command):
|
|
|
49
46
|
return asyncio.run(self.handle_async())
|
|
50
47
|
|
|
51
48
|
async def handle_async(self):
|
|
52
|
-
|
|
49
|
+
self.confirm_to_proceed()
|
|
53
50
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
while answer not in ["y", "n"]:
|
|
58
|
-
answer = input(
|
|
59
|
-
"Do you want to run migrations in PRODUCTION ? (y/n)\n"
|
|
60
|
-
).lower()
|
|
61
|
-
if answer != "y":
|
|
62
|
-
self.info("Migrations cancelled")
|
|
63
|
-
exit(0)
|
|
64
|
-
migration = Migration(
|
|
51
|
+
directory = self.resolve_migration_path()
|
|
52
|
+
|
|
53
|
+
migration = Migrator(
|
|
65
54
|
command_class=self,
|
|
66
55
|
connection=self.option("connection"),
|
|
67
|
-
migration_directory=
|
|
56
|
+
migration_directory=directory,
|
|
68
57
|
)
|
|
58
|
+
|
|
69
59
|
await migration.create_table_if_not_exists()
|
|
70
60
|
if not await migration.get_unran_migrations():
|
|
71
61
|
self.info("Nothing To Migrate!")
|
|
72
62
|
return
|
|
73
63
|
|
|
74
64
|
migration_name = self.option("migration")
|
|
75
|
-
show_output = self.option("show")
|
|
76
65
|
|
|
77
|
-
await migration.migrate(migration=migration_name
|
|
66
|
+
await migration.migrate(migration=migration_name)
|
|
67
|
+
|
|
68
|
+
def resolve_migration_path(self) -> str:
|
|
69
|
+
path = self.option('directory')
|
|
70
|
+
|
|
71
|
+
config = self.container.make('config').get('database.migrations')
|
|
72
|
+
default_directory = config.get('directory')
|
|
73
|
+
|
|
74
|
+
migration_directory = path or default_directory
|
|
75
|
+
return self.container.use_base_path(migration_directory)
|
|
76
|
+
|
|
77
|
+
def confirm_to_proceed(self) -> None:
|
|
78
|
+
# prompt user for confirmation in production
|
|
79
|
+
if os.getenv("APP_ENV") == "production" and not self.option("force"):
|
|
80
|
+
answer = ""
|
|
81
|
+
while answer not in ["y", "n"]:
|
|
82
|
+
answer = input(
|
|
83
|
+
"Do you want to run migrations in PRODUCTION ? (y/n)\n"
|
|
84
|
+
).lower()
|
|
85
|
+
if answer != "y":
|
|
86
|
+
self.info("Migrations cancelled")
|
|
87
|
+
exit(0)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from cleo.helpers import option
|
|
2
|
-
from .
|
|
2
|
+
from fastapi_startkit.console import Command
|
|
3
|
+
from fastapi_startkit.masoniteorm.migrations.Migrator import Migrator
|
|
3
4
|
|
|
4
5
|
|
|
5
6
|
class MigrateFreshCommand(Command):
|
|
@@ -49,12 +50,12 @@ class MigrateFreshCommand(Command):
|
|
|
49
50
|
return asyncio.run(self.handle_async())
|
|
50
51
|
|
|
51
52
|
async def handle_async(self):
|
|
52
|
-
|
|
53
|
+
directory = self.resolve_migration_path()
|
|
53
54
|
|
|
54
|
-
migration =
|
|
55
|
+
migration = Migrator(
|
|
55
56
|
command_class=self,
|
|
56
57
|
connection=self.option("connection"),
|
|
57
|
-
migration_directory=
|
|
58
|
+
migration_directory=directory,
|
|
58
59
|
)
|
|
59
60
|
|
|
60
61
|
await migration.fresh(ignore_fk=not self.option("no-fk"))
|
|
@@ -69,3 +70,12 @@ class MigrateFreshCommand(Command):
|
|
|
69
70
|
"seed:run",
|
|
70
71
|
f"{self.option('seed')} --directory {self.option('seed-directory')} --connection {self.option('connection')}",
|
|
71
72
|
)
|
|
73
|
+
|
|
74
|
+
def resolve_migration_path(self) -> str:
|
|
75
|
+
path = self.option('directory')
|
|
76
|
+
|
|
77
|
+
config = self.container.make('config').get('database.migrations')
|
|
78
|
+
default_directory = config.get('directory')
|
|
79
|
+
|
|
80
|
+
migration_directory = path or default_directory
|
|
81
|
+
return self.container.use_base_path(migration_directory)
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
from cleo.helpers import option
|
|
2
|
-
from .
|
|
2
|
+
from fastapi_startkit.console import Command
|
|
3
|
+
from fastapi_startkit.masoniteorm.migrations.Migrator import Migrator
|
|
3
4
|
|
|
4
5
|
|
|
5
6
|
class MigrateRefreshCommand(Command):
|
|
6
|
-
name = "migrate:refresh"
|
|
7
|
+
name = "db:migrate:refresh"
|
|
7
8
|
description = "Refresh migrations."
|
|
8
9
|
|
|
9
10
|
options = [
|
|
@@ -21,13 +22,6 @@ class MigrateRefreshCommand(Command):
|
|
|
21
22
|
default="default",
|
|
22
23
|
description="The connection you want to run migrations on",
|
|
23
24
|
),
|
|
24
|
-
option(
|
|
25
|
-
"schema",
|
|
26
|
-
None,
|
|
27
|
-
flag=False,
|
|
28
|
-
default=None,
|
|
29
|
-
description="Sets the schema to be migrated",
|
|
30
|
-
),
|
|
31
25
|
option(
|
|
32
26
|
"directory",
|
|
33
27
|
"d",
|
|
@@ -57,14 +51,12 @@ class MigrateRefreshCommand(Command):
|
|
|
57
51
|
return asyncio.run(self.handle_async())
|
|
58
52
|
|
|
59
53
|
async def handle_async(self):
|
|
60
|
-
|
|
54
|
+
directory = self.resolve_migration_path()
|
|
61
55
|
|
|
62
|
-
migration =
|
|
56
|
+
migration = Migrator(
|
|
63
57
|
command_class=self,
|
|
64
58
|
connection=self.option("connection"),
|
|
65
|
-
migration_directory=
|
|
66
|
-
config_path=self.option("config"),
|
|
67
|
-
schema=self.option("schema"),
|
|
59
|
+
migration_directory=directory,
|
|
68
60
|
)
|
|
69
61
|
|
|
70
62
|
await migration.refresh(self.option("migration"))
|
|
@@ -79,3 +71,12 @@ class MigrateRefreshCommand(Command):
|
|
|
79
71
|
"seed:run",
|
|
80
72
|
f"{self.option('seed')} --directory {self.option('seed-directory')} --connection {self.option('connection')}",
|
|
81
73
|
)
|
|
74
|
+
|
|
75
|
+
def resolve_migration_path(self) -> str:
|
|
76
|
+
path = self.option('directory')
|
|
77
|
+
|
|
78
|
+
config = self.container.make('config').get('database.migrations')
|
|
79
|
+
default_directory = config.get('directory')
|
|
80
|
+
|
|
81
|
+
migration_directory = path or default_directory
|
|
82
|
+
return self.container.use_base_path(migration_directory)
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
from cleo.helpers import option
|
|
2
|
-
from .
|
|
2
|
+
from fastapi_startkit.console import Command
|
|
3
|
+
from fastapi_startkit.masoniteorm.migrations.Migrator import Migrator
|
|
3
4
|
|
|
4
5
|
|
|
5
6
|
class MigrateResetCommand(Command):
|
|
6
|
-
name = "migrate:reset"
|
|
7
|
+
name = "db:migrate:reset"
|
|
7
8
|
description = "Reset migrations."
|
|
8
9
|
|
|
9
10
|
options = [
|
|
@@ -21,13 +22,6 @@ class MigrateResetCommand(Command):
|
|
|
21
22
|
default="default",
|
|
22
23
|
description="The connection you want to run migrations on",
|
|
23
24
|
),
|
|
24
|
-
option(
|
|
25
|
-
"schema",
|
|
26
|
-
None,
|
|
27
|
-
flag=False,
|
|
28
|
-
default=None,
|
|
29
|
-
description="Sets the schema to be migrated",
|
|
30
|
-
),
|
|
31
25
|
option(
|
|
32
26
|
"directory",
|
|
33
27
|
"d",
|
|
@@ -43,14 +37,21 @@ class MigrateResetCommand(Command):
|
|
|
43
37
|
return asyncio.run(self.handle_async())
|
|
44
38
|
|
|
45
39
|
async def handle_async(self):
|
|
46
|
-
|
|
40
|
+
directory = self.resolve_migration_path()
|
|
47
41
|
|
|
48
|
-
migration =
|
|
42
|
+
migration = Migrator(
|
|
49
43
|
command_class=self,
|
|
50
44
|
connection=self.option("connection"),
|
|
51
|
-
migration_directory=
|
|
52
|
-
config_path=self.option("config"),
|
|
53
|
-
schema=self.option("schema"),
|
|
45
|
+
migration_directory=directory,
|
|
54
46
|
)
|
|
55
47
|
|
|
56
48
|
await migration.reset(self.option("migration"))
|
|
49
|
+
|
|
50
|
+
def resolve_migration_path(self) -> str:
|
|
51
|
+
path = self.option('directory')
|
|
52
|
+
|
|
53
|
+
config = self.container.make('config').get('database.migrations')
|
|
54
|
+
default_directory = config.get('directory')
|
|
55
|
+
|
|
56
|
+
migration_directory = path or default_directory
|
|
57
|
+
return self.container.use_base_path(migration_directory)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from cleo.helpers import option
|
|
2
|
-
from .
|
|
2
|
+
from fastapi_startkit.console import Command
|
|
3
|
+
from fastapi_startkit.masoniteorm.migrations.Migrator import Migrator
|
|
3
4
|
|
|
4
5
|
|
|
5
6
|
class MigrateRollbackCommand(Command):
|
|
@@ -21,19 +22,6 @@ class MigrateRollbackCommand(Command):
|
|
|
21
22
|
default="default",
|
|
22
23
|
description="The connection you want to run migrations on",
|
|
23
24
|
),
|
|
24
|
-
option(
|
|
25
|
-
"show",
|
|
26
|
-
"s",
|
|
27
|
-
flag=True,
|
|
28
|
-
description="Shows the output of SQL for migrations that would be running",
|
|
29
|
-
),
|
|
30
|
-
option(
|
|
31
|
-
"schema",
|
|
32
|
-
None,
|
|
33
|
-
flag=False,
|
|
34
|
-
default=None,
|
|
35
|
-
description="Sets the schema to be migrated",
|
|
36
|
-
),
|
|
37
25
|
option(
|
|
38
26
|
"directory",
|
|
39
27
|
"d",
|
|
@@ -49,12 +37,21 @@ class MigrateRollbackCommand(Command):
|
|
|
49
37
|
return asyncio.run(self.handle_async())
|
|
50
38
|
|
|
51
39
|
async def handle_async(self):
|
|
52
|
-
|
|
40
|
+
directory = self.resolve_migration_path()
|
|
53
41
|
|
|
54
|
-
|
|
42
|
+
migration = Migrator(
|
|
55
43
|
command_class=self,
|
|
56
44
|
connection=self.option("connection"),
|
|
57
|
-
migration_directory=
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
45
|
+
migration_directory=directory,
|
|
46
|
+
)
|
|
47
|
+
|
|
48
|
+
await migration.rollback(migration=self.option("migration"))
|
|
49
|
+
|
|
50
|
+
def resolve_migration_path(self) -> str:
|
|
51
|
+
path = self.option('directory')
|
|
52
|
+
|
|
53
|
+
config = self.container.make('config').get('database.migrations')
|
|
54
|
+
default_directory = config.get('directory')
|
|
55
|
+
|
|
56
|
+
migration_directory = path or default_directory
|
|
57
|
+
return self.container.use_base_path(migration_directory)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from cleo.helpers import option
|
|
2
|
-
from
|
|
3
|
-
from .
|
|
2
|
+
from fastapi_startkit.console import Command
|
|
3
|
+
from fastapi_startkit.masoniteorm.migrations.Migrator import Migrator
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
class MigrateStatusCommand(Command):
|
|
@@ -15,13 +15,6 @@ class MigrateStatusCommand(Command):
|
|
|
15
15
|
default="default",
|
|
16
16
|
description="The connection you want to run migrations on",
|
|
17
17
|
),
|
|
18
|
-
option(
|
|
19
|
-
"schema",
|
|
20
|
-
None,
|
|
21
|
-
flag=False,
|
|
22
|
-
default=None,
|
|
23
|
-
description="Sets the schema to be migrated",
|
|
24
|
-
),
|
|
25
18
|
option(
|
|
26
19
|
"directory",
|
|
27
20
|
"d",
|
|
@@ -37,16 +30,17 @@ class MigrateStatusCommand(Command):
|
|
|
37
30
|
return asyncio.run(self.handle_async())
|
|
38
31
|
|
|
39
32
|
async def handle_async(self):
|
|
40
|
-
|
|
33
|
+
directory = self.resolve_migration_path()
|
|
34
|
+
|
|
35
|
+
migration = Migrator(
|
|
41
36
|
command_class=self,
|
|
42
37
|
connection=self.option("connection"),
|
|
43
|
-
migration_directory=
|
|
44
|
-
config_path=self.option("config"),
|
|
45
|
-
schema=self.option("schema"),
|
|
38
|
+
migration_directory=directory,
|
|
46
39
|
)
|
|
40
|
+
|
|
47
41
|
await migration.create_table_if_not_exists()
|
|
48
42
|
table = self.table()
|
|
49
|
-
table.
|
|
43
|
+
table.set_headers(["Ran?", "Migration", "Batch"])
|
|
50
44
|
migrations = []
|
|
51
45
|
|
|
52
46
|
ran_migrations = await migration.get_ran_migrations()
|
|
@@ -74,4 +68,13 @@ class MigrateStatusCommand(Command):
|
|
|
74
68
|
|
|
75
69
|
table.set_rows(migrations)
|
|
76
70
|
|
|
77
|
-
table.render(
|
|
71
|
+
table.render()
|
|
72
|
+
|
|
73
|
+
def resolve_migration_path(self) -> str:
|
|
74
|
+
path = self.option('directory')
|
|
75
|
+
|
|
76
|
+
config = self.container.make('config').get('database.migrations')
|
|
77
|
+
default_directory = config.get('directory')
|
|
78
|
+
|
|
79
|
+
migration_directory = path or default_directory
|
|
80
|
+
return self.container.use_base_path(migration_directory)
|