fastapi-spawn 0.4.34__tar.gz → 0.4.36__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_spawn-0.4.34 → fastapi_spawn-0.4.36}/PKG-INFO +1 -1
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/cli.py +1 -1
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/logger.py.j2 +7 -3
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/pyproject.toml +1 -1
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/.gitignore +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/LICENSE +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/README.md +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/__init__.py +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/config.py +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/constants.py +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/generator.py +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/interactive.py +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/alembic/alembic.ini.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/alembic/env.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/__init__.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/admin/setup.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/deps.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/graphql.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/auth/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/auth/sso.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/health/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/pagination/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/payments/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/permissions/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/streaming/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/uploads/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/ws/router.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/ai.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/cache.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/config.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/email.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/exceptions.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/logging.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/monitoring.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/notifications.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/ocr.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/permissions.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/search.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/security.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/storage.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/vector_db.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/ws_manager.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/db/session.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/frontend/index.html.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/main.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/middleware/__init__.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/middleware/rate_limit.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/middleware/request_logger.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/middleware/response_format.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/Makefile.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/README.md.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/env.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/env_example.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/gitignore.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/pre_commit.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/pyproject.toml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/ci/github/publish.yml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/ci/github/tests.yml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/ci/gitlab/gitlab-ci.yml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/db/seed.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/docker/Dockerfile.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/docker/docker-compose.yml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/docker/dockerignore.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/docker/docker-compose.prod.yml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/helm/Chart.yaml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/helm/values.yaml.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/terraform/main.tf.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/terraform/variables.tf.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/root/main.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tasks/arq_worker.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tasks/celery_app.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tasks/sample_tasks.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tests/conftest.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tests/test_health.py.j2 +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/utils.py +0 -0
- {fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/validators.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fastapi-spawn
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.36
|
|
4
4
|
Summary: A powerful CLI tool to scaffold production-ready FastAPI projects with flexible database, auth, broker, and deployment options.
|
|
5
5
|
Project-URL: Homepage, https://github.com/Bishwajitgarai/fastapi-spawn
|
|
6
6
|
Project-URL: Documentation, https://github.com/Bishwajitgarai/fastapi-spawn#readme
|
|
@@ -632,7 +632,7 @@ def _print_next_steps(config: ProjectConfig) -> None:
|
|
|
632
632
|
if config.has_alembic:
|
|
633
633
|
steps.append(" [bold cyan]uv run alembic upgrade head[/bold cyan]")
|
|
634
634
|
if config.has_docker:
|
|
635
|
-
steps.append(" [bold cyan]docker compose up --build[/bold cyan]")
|
|
635
|
+
steps.append(" [bold cyan]docker compose up --build -d[/bold cyan]")
|
|
636
636
|
else:
|
|
637
637
|
steps.append(" [bold cyan]uv run uvicorn app.main:app --reload[/bold cyan]")
|
|
638
638
|
|
|
@@ -45,15 +45,13 @@ class _ContextFilter(logging.Filter):
|
|
|
45
45
|
_FMT = "%(asctime)s | %(levelname)-8s | [%(request_id)s] [%(client_ip)s] | %(name)s | %(message)s"
|
|
46
46
|
_formatter = logging.Formatter(_FMT, datefmt="%Y-%m-%d %H:%M:%S")
|
|
47
47
|
|
|
48
|
-
# ── Logger setup ───────────────────────────────────────────────────────────
|
|
49
|
-
|
|
50
48
|
logger = logging.getLogger()
|
|
51
49
|
logger.setLevel(settings.LOG_LEVEL)
|
|
52
|
-
logger.addFilter(_ContextFilter())
|
|
53
50
|
|
|
54
51
|
# Console handler
|
|
55
52
|
_console_handler = logging.StreamHandler()
|
|
56
53
|
_console_handler.setFormatter(_formatter)
|
|
54
|
+
_console_handler.addFilter(_ContextFilter())
|
|
57
55
|
logger.addHandler(_console_handler)
|
|
58
56
|
|
|
59
57
|
{% if log_dest == "local" %}
|
|
@@ -68,8 +66,14 @@ _file_handler = TimedRotatingFileHandler(
|
|
|
68
66
|
encoding="utf-8",
|
|
69
67
|
)
|
|
70
68
|
_file_handler.setFormatter(_formatter)
|
|
69
|
+
_file_handler.addFilter(_ContextFilter())
|
|
71
70
|
logger.addHandler(_file_handler)
|
|
72
71
|
|
|
72
|
+
# Ensure uvicorn logs also go to the file
|
|
73
|
+
logging.getLogger("uvicorn").addHandler(_file_handler)
|
|
74
|
+
logging.getLogger("uvicorn.error").addHandler(_file_handler)
|
|
75
|
+
logging.getLogger("uvicorn.access").addHandler(_file_handler)
|
|
76
|
+
|
|
73
77
|
{% elif log_dest == "cloudwatch" %}
|
|
74
78
|
# AWS CloudWatch Logs handler
|
|
75
79
|
try:
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "fastapi-spawn"
|
|
7
|
-
version = "0.4.
|
|
7
|
+
version = "0.4.36"
|
|
8
8
|
description = "A powerful CLI tool to scaffold production-ready FastAPI projects with flexible database, auth, broker, and deployment options."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "MIT" }
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/alembic/alembic.ini.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/auth/router.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/auth/sso.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/health/router.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/router.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/api/v1/ws/router.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/exceptions.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/logging.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/monitoring.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/notifications.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/permissions.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/security.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/storage.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/vector_db.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/core/ws_manager.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/frontend/index.html.j2
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/app/middleware/__init__.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/base/pyproject.toml.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/ci/github/publish.yml.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/ci/github/tests.yml.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/ci/gitlab/gitlab-ci.yml.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/docker/docker-compose.yml.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/docker/dockerignore.j2
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/helm/Chart.yaml.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/helm/values.yaml.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/infra/terraform/main.tf.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tasks/arq_worker.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tasks/celery_app.py.j2
RENAMED
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tasks/sample_tasks.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_spawn-0.4.34 → fastapi_spawn-0.4.36}/fastapi_spawn/templates/tests/test_health.py.j2
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|