diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 2f4866b2..079e701b 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -10,7 +10,7 @@ env: RUST_BACKTRACE: 1 RUSTFLAGS: "-D warnings" WORKING_DIR: "my-project" - MIN_PYTHON_VERSION: "3.9" + MIN_PYTHON_VERSION: "3.10" CI: true # For insta jobs: clippy: diff --git a/src/fastapi/docker_files.rs b/src/fastapi/docker_files.rs index 25d4ec97..f009ab62 100644 --- a/src/fastapi/docker_files.rs +++ b/src/fastapi/docker_files.rs @@ -410,6 +410,7 @@ ENV \ RUN : \ && apt-get update \ && apt-get install -y --no-install-recommends \ + build-essential \ curl \ ca-certificates \ && apt-get clean \ @@ -475,6 +476,7 @@ ENV \ RUN : \ && apt-get update \ && apt-get install -y --no-install-recommends \ + build-essential \ curl \ ca-certificates \ software-properties-common \ @@ -550,11 +552,13 @@ ENV \ RUN : \ && apt-get update \ && apt-get install -y --no-install-recommends \ + build-essential \ software-properties-common \ && add-apt-repository ppa:deadsnakes/ppa \ && apt-get update \ && apt-get install -y --no-install-recommends \ python{python_version} \ + python{python_version}-dev \ python{python_version}-venv \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* @@ -714,6 +718,7 @@ RUN : \ && apt-get update \ && apt-get install -y --no-install-recommends \ python{python_version} \ + python{python_version}-dev \ python{python_version}-venv \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* @@ -896,16 +901,17 @@ mod tests { copyright_year: Some("2023".to_string()), version: "0.1.0".to_string(), python_version: "3.11".to_string(), - min_python_version: "3.9".to_string(), + min_python_version: "3.10".to_string(), project_manager: ProjectManager::Poetry, pyo3_python_manager: Some(Pyo3PythonManager::Uv), is_application: true, is_async_project: false, github_actions_python_test_versions: vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ], max_line_length: 100, use_dependabot: true, diff --git a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_maturin_setuptools.snap b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_maturin_setuptools.snap index f2e3bb4f..a3c4711c 100644 --- a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_maturin_setuptools.snap +++ b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_maturin_setuptools.snap @@ -2,4 +2,4 @@ source: src/fastapi/docker_files.rs expression: content --- -"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n UV_PYTHON_INSTALL_DIR=/opt/uv/python \\\n UV_LINK_MODE=copy\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n build-essential \\\n curl \\\n ca-certificates \\\n libssl-dev \\\n pkg-config \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n python3.11-venv \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Install uv\nADD https://astral.sh/uv/install.sh /uv-installer.sh\n\nRUN sh /uv-installer.sh && rm /uv-installer.sh\n\n# Install rust\nRUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable --profile minimal\n\nENV PATH=\"/root/.local/bin:/root/.cargo/bin:$PATH\"\n\n# Create virtual environment\nRUN python3.11 -m venv .venv\n\nCOPY pyproject.toml Cargo.toml Cargo.lock README.md LICENSE ./\nCOPY src/ ./src\nRUN mkdir my_project\n\nRUN --mount=type=cache,target=/app/target/ \\\n --mount=type=cache,target=/usr/local/cargo/git/db \\\n --mount=type=cache,target=/usr/local/cargo/registry/ \\\n uv tool run maturin develop -r\n\nCOPY requirements.txt ./\n\nRUN --mount=type=cache,target=/root/.cache/uv \\\n .venv/bin/python -m pip install -r requirements.txt\n\nCOPY . /app\n\n\nRUN --mount=type=cache,target=/usr/local/cargo/git/db \\\n --mount=type=cache,target=/usr/local/cargo/registry/ \\\n .venv/bin/python -m pip install -r requirements.txt \\\n && uv tool run maturin develop -r\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" +"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n UV_PYTHON_INSTALL_DIR=/opt/uv/python \\\n UV_LINK_MODE=copy\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n build-essential \\\n curl \\\n ca-certificates \\\n libssl-dev \\\n pkg-config \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n python3.11-dev \\\n python3.11-venv \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Install uv\nADD https://astral.sh/uv/install.sh /uv-installer.sh\n\nRUN sh /uv-installer.sh && rm /uv-installer.sh\n\n# Install rust\nRUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable --profile minimal\n\nENV PATH=\"/root/.local/bin:/root/.cargo/bin:$PATH\"\n\n# Create virtual environment\nRUN python3.11 -m venv .venv\n\nCOPY pyproject.toml Cargo.toml Cargo.lock README.md LICENSE ./\nCOPY src/ ./src\nRUN mkdir my_project\n\nRUN --mount=type=cache,target=/app/target/ \\\n --mount=type=cache,target=/usr/local/cargo/git/db \\\n --mount=type=cache,target=/usr/local/cargo/registry/ \\\n uv tool run maturin develop -r\n\nCOPY requirements.txt ./\n\nRUN --mount=type=cache,target=/root/.cache/uv \\\n .venv/bin/python -m pip install -r requirements.txt\n\nCOPY . /app\n\n\nRUN --mount=type=cache,target=/usr/local/cargo/git/db \\\n --mount=type=cache,target=/usr/local/cargo/registry/ \\\n .venv/bin/python -m pip install -r requirements.txt \\\n && uv tool run maturin develop -r\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" diff --git a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_poetry.snap b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_poetry.snap index 7b175b85..bdd3f78a 100644 --- a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_poetry.snap +++ b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_poetry.snap @@ -2,4 +2,4 @@ source: src/fastapi/docker_files.rs expression: content --- -"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n POETRY_NO_INTERACTION=true \\\n POETRY_VIRTUALENVS_IN_PROJECT=true \\\n POETRY_CACHE_DIR=/tmp/poetry_cache\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n curl \\\n ca-certificates \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Install Poetry\nRUN curl -sSL https://install.python-poetry.org | python3.11 -\n\nENV PATH=\"/root/.local/bin:$PATH\"\n\nCOPY pyproject.toml poetry.lock ./\n\nCOPY . ./\n\nRUN --mount=type=cache,target=$POETRY_CACHE_DIR \\\n poetry config virtualenvs.in-project true \\\n && poetry install --only=main\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends\\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" +"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n POETRY_NO_INTERACTION=true \\\n POETRY_VIRTUALENVS_IN_PROJECT=true \\\n POETRY_CACHE_DIR=/tmp/poetry_cache\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n build-essential \\\n curl \\\n ca-certificates \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Install Poetry\nRUN curl -sSL https://install.python-poetry.org | python3.11 -\n\nENV PATH=\"/root/.local/bin:$PATH\"\n\nCOPY pyproject.toml poetry.lock ./\n\nCOPY . ./\n\nRUN --mount=type=cache,target=$POETRY_CACHE_DIR \\\n poetry config virtualenvs.in-project true \\\n && poetry install --only=main\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends\\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" diff --git a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_setuptools.snap b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_setuptools.snap index f74ddd6f..a54284f0 100644 --- a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_setuptools.snap +++ b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_setuptools.snap @@ -2,4 +2,4 @@ source: src/fastapi/docker_files.rs expression: content --- -"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/root/.local/bin:$PATH\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n python3.11-venv \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Create virtual environment\nRUN python3.11 -m venv .venv\n\nCOPY . ./\n\nRUN .venv/bin/python -m pip install -r requirements.txt\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" +"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/root/.local/bin:$PATH\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n build-essential \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n python3.11-dev \\\n python3.11-venv \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Create virtual environment\nRUN python3.11 -m venv .venv\n\nCOPY . ./\n\nRUN .venv/bin/python -m pip install -r requirements.txt\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n software-properties-common \\\n && add-apt-repository ppa:deadsnakes/ppa \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n python3.11 \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" diff --git a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_uv.snap b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_uv.snap index 1c50747d..43660d5f 100644 --- a/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_uv.snap +++ b/src/fastapi/snapshots/python_project__fastapi__docker_files__tests__save_dockerfile_uv.snap @@ -2,4 +2,4 @@ source: src/fastapi/docker_files.rs expression: content --- -"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n UV_PYTHON_INSTALL_DIR=/opt/uv/python \\\n UV_LINK_MODE=copy\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n curl \\\n ca-certificates \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Install uv\nADD https://astral.sh/uv/install.sh /uv-installer.sh\n\nRUN sh /uv-installer.sh && rm /uv-installer.sh\n\nENV PATH=\"/root/.local/bin:$PATH\"\n\n# Create virtual environment and download Python\nRUN uv venv -p 3.11\n\nCOPY . ./\n\nRUN --mount=type=cache,target=/root/.cache/uv \\\n uv sync --locked --no-dev --no-editable\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY --from=builder /opt/uv/python /opt/uv/python\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" +"# syntax=docker/dockerfile:1\n\nFROM ubuntu:24.04 AS builder\n\nWORKDIR /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n UV_PYTHON_INSTALL_DIR=/opt/uv/python \\\n UV_LINK_MODE=copy\n\nRUN : \\\n && apt-get update \\\n && apt-get install -y --no-install-recommends \\\n build-essential \\\n curl \\\n ca-certificates \\\n && apt-get clean \\\n && rm -rf /var/lib/apt/lists/*\n\n# Install uv\nADD https://astral.sh/uv/install.sh /uv-installer.sh\n\nRUN sh /uv-installer.sh && rm /uv-installer.sh\n\nENV PATH=\"/root/.local/bin:$PATH\"\n\n# Create virtual environment and download Python\nRUN uv venv -p 3.11\n\nCOPY . ./\n\nRUN --mount=type=cache,target=/root/.cache/uv \\\n uv sync --locked --no-dev --no-editable\n\n\n# Build production stage\nFROM ubuntu:24.04 AS prod\n\nRUN useradd appuser\n\nWORKDIR /app\n\nRUN chown appuser:appuser /app\n\nENV \\\n PYTHONUNBUFFERED=true \\\n PATH=\"/app/.venv/bin:$PATH\" \\\n PORT=\"8000\"\n\nCOPY --from=builder /app/.venv /app/.venv\nCOPY --from=builder /app/my_project /app/my_project\nCOPY --from=builder /opt/uv/python /opt/uv/python\nCOPY ./scripts/entrypoint.sh /app\n\nRUN chmod +x /app/entrypoint.sh\n\nEXPOSE 8000\n\nUSER appuser\n\nENTRYPOINT [\"./entrypoint.sh\"]\n" diff --git a/src/github_actions.rs b/src/github_actions.rs index f87f6ca9..202b0229 100644 --- a/src/github_actions.rs +++ b/src/github_actions.rs @@ -2333,16 +2333,17 @@ mod tests { copyright_year: Some("2023".to_string()), version: "0.1.0".to_string(), python_version: "3.12".to_string(), - min_python_version: "3.9".to_string(), + min_python_version: "3.10".to_string(), project_manager: ProjectManager::Maturin, pyo3_python_manager: Some(Pyo3PythonManager::Uv), is_application: true, is_async_project: false, github_actions_python_test_versions: vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ], max_line_length: 100, use_dependabot: true, @@ -2379,12 +2380,13 @@ mod tests { fn test_build_github_actions_test_versions() { assert_eq!( build_actions_python_test_versions(&[ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ]), - r#""3.9", "3.10", "3.11", "3.12""#.to_string() + r#""3.10", "3.11", "3.12", "3.13", "3.14""#.to_string() ); } diff --git a/src/licenses.rs b/src/licenses.rs index ad7942a4..248a00d6 100644 --- a/src/licenses.rs +++ b/src/licenses.rs @@ -273,15 +273,17 @@ mod tests { copyright_year: Some("2023".to_string()), version: "0.1.0".to_string(), python_version: "3.11".to_string(), - min_python_version: "3.9".to_string(), + min_python_version: "3.10".to_string(), project_manager: ProjectManager::Poetry, pyo3_python_manager: None, is_application: true, is_async_project: false, github_actions_python_test_versions: vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), + "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ], max_line_length: 100, use_dependabot: true, diff --git a/src/main.rs b/src/main.rs index 719169a4..2d24f942 100644 --- a/src/main.rs +++ b/src/main.rs @@ -494,16 +494,17 @@ mod tests { copyright_year: Some("2023".to_string()), version: "0.1.0".to_string(), python_version: "3.12".to_string(), - min_python_version: "3.9".to_string(), + min_python_version: "3.10".to_string(), project_manager: ProjectManager::Poetry, pyo3_python_manager: None, is_application: true, is_async_project: false, github_actions_python_test_versions: vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ], max_line_length: 100, use_dependabot: true, diff --git a/src/project_generator.rs b/src/project_generator.rs index 22b5c7cb..12a061f3 100644 --- a/src/project_generator.rs +++ b/src/project_generator.rs @@ -1634,16 +1634,17 @@ mod tests { copyright_year: Some("2023".to_string()), version: "0.1.0".to_string(), python_version: "3.11".to_string(), - min_python_version: "3.9".to_string(), + min_python_version: "3.10".to_string(), project_manager: ProjectManager::Poetry, pyo3_python_manager: Some(Pyo3PythonManager::Uv), is_application: true, is_async_project: false, github_actions_python_test_versions: vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ], max_line_length: 100, use_dependabot: true, diff --git a/src/project_info.rs b/src/project_info.rs index 0524afac..c2b3e497 100644 --- a/src/project_info.rs +++ b/src/project_info.rs @@ -595,7 +595,7 @@ pub fn get_project_info(use_defaults: bool) -> Result { let python_version_default = match config.python_version { Some(python) => python, - None => "3.13".to_string(), + None => "3.14".to_string(), }; let python_version = if use_defaults { python_version_default @@ -619,7 +619,7 @@ pub fn get_project_info(use_defaults: bool) -> Result { } else { match config.min_python_version { Some(python) => python, - None => "3.9".to_string(), + None => "3.10".to_string(), } } } @@ -627,7 +627,7 @@ pub fn get_project_info(use_defaults: bool) -> Result { { match config.min_python_version { Some(python) => python, - None => "3.9".to_string(), + None => "3.10".to_string(), } } }; @@ -655,8 +655,8 @@ pub fn get_project_info(use_defaults: bool) -> Result { } else { let mut versions: Vec = Vec::new(); - // Up to 3.13 - for i in min..14 { + // Up to 3.14 + for i in min..15 { versions.push(format!("3.{i}")); } @@ -665,25 +665,30 @@ pub fn get_project_info(use_defaults: bool) -> Result { } else { #[cfg(feature = "fastapi")] if is_fastapi_project { - vec!["3.11".to_string(), "3.12".to_string(), "3.13".to_string()] + vec![ + "3.11".to_string(), + "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), + ] } else { vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), "3.13".to_string(), + "3.14".to_string(), ] } #[cfg(not(feature = "fastapi"))] { vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), "3.13".to_string(), + "3.14".to_string(), ] } } @@ -1020,7 +1025,7 @@ mod tests { #[test] fn test_valid_two_digit_python_version() { - assert!(is_valid_python_version("3.9")); + assert!(is_valid_python_version("3.10")); } #[test] @@ -1055,6 +1060,6 @@ mod tests { #[test] fn test_invalid_python_version_non_numeric_patch() { - assert!(!is_valid_python_version("3.9.a")); + assert!(!is_valid_python_version("3.10.a")); } } diff --git a/src/python_files.rs b/src/python_files.rs index 21486543..73790e31 100644 --- a/src/python_files.rs +++ b/src/python_files.rs @@ -359,16 +359,17 @@ mod tests { copyright_year: Some("2023".to_string()), version: "0.1.0".to_string(), python_version: "3.12".to_string(), - min_python_version: "3.9".to_string(), + min_python_version: "3.10".to_string(), project_manager: ProjectManager::Maturin, pyo3_python_manager: Some(Pyo3PythonManager::Uv), is_application: true, is_async_project: false, github_actions_python_test_versions: vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ], max_line_length: 100, use_dependabot: true, diff --git a/src/rust_files.rs b/src/rust_files.rs index de078186..61e3adb0 100644 --- a/src/rust_files.rs +++ b/src/rust_files.rs @@ -149,16 +149,17 @@ mod tests { copyright_year: Some("2023".to_string()), version: "0.1.0".to_string(), python_version: "3.12".to_string(), - min_python_version: "3.9".to_string(), + min_python_version: "3.10".to_string(), project_manager: ProjectManager::Maturin, pyo3_python_manager: Some(Pyo3PythonManager::Uv), is_application: true, is_async_project: false, github_actions_python_test_versions: vec![ - "3.9".to_string(), "3.10".to_string(), "3.11".to_string(), "3.12".to_string(), + "3.13".to_string(), + "3.14".to_string(), ], max_line_length: 100, use_dependabot: true, diff --git a/src/snapshots/python_project__github_actions__tests__save_ci_testing_fastapi_file_pyo3.snap b/src/snapshots/python_project__github_actions__tests__save_ci_testing_fastapi_file_pyo3.snap index e0e775eb..b1896284 100644 --- a/src/snapshots/python_project__github_actions__tests__save_ci_testing_fastapi_file_pyo3.snap +++ b/src/snapshots/python_project__github_actions__tests__save_ci_testing_fastapi_file_pyo3.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.9\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: clippy\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: rustfmt\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: uv run pytest -n auto\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.10\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: clippy\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: rustfmt\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: uv run pytest -n auto\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap b/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap index a37cebbe..9e2711b5 100644 --- a/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap +++ b/src/snapshots/python_project__github_actions__tests__save_ci_testing_linux_only_file_pyo3.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.9\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: clippy\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: rustfmt\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.10\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: clippy\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: rustfmt\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap b/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap index 3cc24887..29581c4a 100644 --- a/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap +++ b/src/snapshots/python_project__github_actions__tests__save_ci_testing_multi_os_file_pyo3.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.9\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: clippy\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: rustfmt\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n CARGO_TERM_COLOR: always\n RUST_BACKTRACE: 1\n RUSTFLAGS: \"-D warnings\"\n PYTHON_VERSION: \"3.10\"\njobs:\n clippy:\n name: Clippy\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: clippy\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo clippy\n run: cargo clippy --all-targets -- --deny warnings\n fmt:\n name: Rustfmt\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n with:\n components: rustfmt\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Run cargo fmt\n run: cargo fmt --all -- --check\n python-linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy my_project tests\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: |\n uv sync --frozen\n uv run maturin build\n - name: Test with pytest\n run: uv run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_linux_only_file.snap b/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_linux_only_file.snap index f21064f1..c1462c93 100644 --- a/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_linux_only_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_linux_only_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python\n run: pixi add python==\"${{ env.PYTHON_VERSION }}.*\"\n - name: Ruff format check\n run: pixi run run-ruff-format\n - name: Lint with ruff\n run: pixi run run-ruff-check\n - name: mypy check\n run: pixi run run-mypy\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python ${{ matrix.python-version }}\n run: pixi add python==\"${{ matrix.python-version }}.*\"\n - name: Test with pytest\n run: pixi run run-pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python\n run: pixi add python==\"${{ env.PYTHON_VERSION }}.*\"\n - name: Ruff format check\n run: pixi run run-ruff-format\n - name: Lint with ruff\n run: pixi run run-ruff-check\n - name: mypy check\n run: pixi run run-mypy\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python ${{ matrix.python-version }}\n run: pixi add python==\"${{ matrix.python-version }}.*\"\n - name: Test with pytest\n run: pixi run run-pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_multi_os_file.snap b/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_multi_os_file.snap index 045c2bc8..d8715fc9 100644 --- a/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_multi_os_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_pixi_ci_testing_multi_os_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python\n run: pixi add python==\"${{ env.PYTHON_VERSION }}.*\"\n - name: Ruff format check\n run: pixi run run-ruff-formar\n - name: Lint with ruff\n run: pixi run run-ruff-check\n - name: mypy check\n run: pixi run run-mypy\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python ${{ matrix.python-version }}\n run: pixi add python==\"${{ matrix.python-version }}.*\"\n - name: Test with pytest\n run: pixi run run-pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python\n run: pixi add python==\"${{ env.PYTHON_VERSION }}.*\"\n - name: Ruff format check\n run: pixi run run-ruff-formar\n - name: Lint with ruff\n run: pixi run run-ruff-check\n - name: mypy check\n run: pixi run run-mypy\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install Pixi\n uses: prefix-dev/setup-pixi@v0.8.1\n with:\n pixi-version: v0.30.0\n - name: Set up Python ${{ matrix.python-version }}\n run: pixi add python==\"${{ matrix.python-version }}.*\"\n - name: Test with pytest\n run: pixi run run-pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_fastapi_file.snap b/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_fastapi_file.snap index 4d48557a..6d24fcf6 100644 --- a/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_fastapi_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_fastapi_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Ruff format check\n run: poetry run ruff format my_project tests --check\n - name: Lint with ruff\n run: poetry run ruff check .\n - name: mypy check\n run: poetry run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: poetry run pytest -n auto\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Ruff format check\n run: poetry run ruff format my_project tests --check\n - name: Lint with ruff\n run: poetry run ruff check .\n - name: mypy check\n run: poetry run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: poetry run pytest -n auto\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_linux_only_file.snap b/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_linux_only_file.snap index dab7e7fc..df7aeded 100644 --- a/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_linux_only_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_linux_only_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Ruff format check\n run: poetry run ruff format my_project tests --check\n - name: Lint with ruff\n run: poetry run ruff check .\n - name: mypy check\n run: poetry run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Test with pytest\n run: poetry run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Ruff format check\n run: poetry run ruff format my_project tests --check\n - name: Lint with ruff\n run: poetry run ruff check .\n - name: mypy check\n run: poetry run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Test with pytest\n run: poetry run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_multi_os_file.snap b/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_multi_os_file.snap index ccb04bec..dffdefbf 100644 --- a/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_multi_os_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_poetry_ci_testing_multi_os_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Ruff format check\n run: poetry run ruff format my_project tests --check\n - name: Lint with ruff\n run: poetry run ruff check .\n - name: mypy check\n run: poetry run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Test with pytest\n run: poetry run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Ruff format check\n run: poetry run ruff format my_project tests --check\n - name: Lint with ruff\n run: poetry run ruff check .\n - name: mypy check\n run: poetry run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install Poetry\n run: pipx install poetry\n - name: Configure poetry\n run: |\n poetry config virtualenvs.create true\n poetry config virtualenvs.in-project true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"poetry\"\n - name: Install Dependencies\n run: poetry install\n - name: Test with pytest\n run: poetry run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_fastapi_file.snap b/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_fastapi_file.snap index 8a913e2e..0f8322ef 100644 --- a/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_fastapi_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_fastapi_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Ruff format check\n run: ruff format my_project tests --check\n - name: Lint with ruff\n run: ruff check .\n - name: mypy check\n run: mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: python -m pytest -n auto\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Ruff format check\n run: ruff format my_project tests --check\n - name: Lint with ruff\n run: ruff check .\n - name: mypy check\n run: mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: python -m pytest -n auto\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_linux_only_file.snap b/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_linux_only_file.snap index 672c31c8..57b22965 100644 --- a/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_linux_only_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_linux_only_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Ruff format check\n run: ruff format my_project tests --check\n - name: Lint with ruff\n run: ruff check .\n - name: mypy check\n run: mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Test with pytest\n run: pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Ruff format check\n run: ruff format my_project tests --check\n - name: Lint with ruff\n run: ruff check .\n - name: mypy check\n run: mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Test with pytest\n run: pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_multi_os_file.snap b/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_multi_os_file.snap index 9556d271..3d168196 100644 --- a/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_multi_os_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_setuptools_ci_testing_multi_os_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Ruff format check\n run: ruff format my_project tests --check\n - name: Lint with ruff\n run: ruff check .\n - name: mypy check\n run: mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Test with pytest\n run: pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Ruff format check\n run: ruff format my_project tests --check\n - name: Lint with ruff\n run: ruff check .\n - name: mypy check\n run: mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n cache: \"pip\"\n - name: Install Dependencies\n run: |\n python -m pip install -U pip\n python -m pip install -r requirements-dev.txt\n - name: Test with pytest\n run: pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_fastapi_file.snap b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_fastapi_file.snap index 50540e67..9f205516 100644 --- a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_fastapi_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_fastapi_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: uv run pytest -n auto\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\n SECRET_KEY: \"someKey\"\n PRODUCTION_MODE: false\n FIRST_SUPERUSER_EMAIL: \"some@email.com\"\n FIRST_SUPERUSER_PASSWORD: \"somePassword1!\"\n FIRST_SUPERUSER_NAME: \"Super User\"\n POSTGRES_HOST: \"127.0.0.1\"\n POSTGRES_USER: \"postgres\"\n POSTGRES_PASSWORD: \"test_password\"\n POSTGRES_DB: \"test_db\"\n VALKEY_HOST: \"127.0.0.1\"\n VALKEY_PASSWORD: \"test_password\"\n MEILISEARCH_HOST: http://127.0.0.1\n STACK_NAME: \"test-stack\"\n DOMAIN: \"127.0.0.1\"\n LOG_LEVEL: \"DEBUG\"\n CI: true\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install Rust\n uses: dtolnay/rust-toolchain@stable\n - name: Cache dependencies\n uses: Swatinem/rust-cache@v2\n - name: Install sqlx-cli\n run: cargo install sqlx-cli --no-default-features -F native-tls -F postgres\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: make .env\n run: touch .env\n - name: Start docker containers\n run: docker compose up db valkey migrations -d\n - name: Test with pytest\n run: uv run pytest -n auto\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap index 5396b872..9ccef049 100644 --- a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_linux_only_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n" diff --git a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap index ec707561..1822d1da 100644 --- a/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap +++ b/src/snapshots/python_project__github_actions__tests__save_uv_ci_testing_multi_os_file.snap @@ -2,4 +2,4 @@ source: src/github_actions.rs expression: content --- -"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n UV_CACHE_DIR: /tmp/.uv-cache\n PYTHON_VERSION: \"3.9\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.9\", \"3.10\", \"3.11\", \"3.12\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n" +"name: Testing\n\non:\n push:\n branches:\n - main\n pull_request:\nenv:\n UV_CACHE_DIR: /tmp/.uv-cache\n PYTHON_VERSION: \"3.10\"\njobs:\n linting:\n runs-on: ubuntu-latest\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python\n uses: actions/setup-python@v6\n with:\n python-version: ${{ env.PYTHON_VERSION }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Ruff format check\n run: uv run ruff format my_project tests --check\n - name: Lint with ruff\n run: uv run ruff check .\n - name: mypy check\n run: uv run mypy .\n testing:\n strategy:\n fail-fast: false\n matrix:\n python-version: [\"3.10\", \"3.11\", \"3.12\", \"3.13\", \"3.14\"]\n os: [ubuntu-latest, windows-latest, macos-latest]\n runs-on: ${{ matrix.os }}\n steps:\n - uses: actions/checkout@v5\n - name: Install uv\n uses: astral-sh/setup-uv@v7\n with:\n enable-cache: true\n - name: Set up Python ${{ matrix.python-version }}\n uses: actions/setup-python@v6\n with:\n python-version: ${{ matrix.python-version }}\n - name: Install Dependencies\n run: uv sync --frozen\n - name: Test with pytest\n run: uv run pytest\n" diff --git a/src/snapshots/python_project__project_generator__tests__create_pixi_pyproject_toml_mit_lib.snap b/src/snapshots/python_project__project_generator__tests__create_pixi_pyproject_toml_mit_lib.snap index 8972b74e..908a0255 100644 --- a/src/snapshots/python_project__project_generator__tests__create_pixi_pyproject_toml_mit_lib.snap +++ b/src/snapshots/python_project__project_generator__tests__create_pixi_pyproject_toml_mit_lib.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__create_poetry_pyproject_toml_mit_lib.snap b/src/snapshots/python_project__project_generator__tests__create_poetry_pyproject_toml_mit_lib.snap index cc48d0b2..e6602b3e 100644 --- a/src/snapshots/python_project__project_generator__tests__create_poetry_pyproject_toml_mit_lib.snap +++ b/src/snapshots/python_project__project_generator__tests__create_poetry_pyproject_toml_mit_lib.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"MIT\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.9\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"MIT\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.10\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__create_pyproject_toml_async_project.snap b/src/snapshots/python_project__project_generator__tests__create_pyproject_toml_async_project.snap index 1a883717..5c2f8a2e 100644 --- a/src/snapshots/python_project__project_generator__tests__create_pyproject_toml_async_project.snap +++ b/src/snapshots/python_project__project_generator__tests__create_pyproject_toml_async_project.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"MIT\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.9\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-asyncio = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\nasyncio_mode = \"auto\"\nasyncio_default_fixture_loop_scope = \"function\"\nasyncio_default_test_loop_scope = \"function\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n \"ASYNC\", # flake8-async\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"MIT\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.10\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-asyncio = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\nasyncio_mode = \"auto\"\nasyncio_default_fixture_loop_scope = \"function\"\nasyncio_default_test_loop_scope = \"function\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n \"ASYNC\", # flake8-async\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__create_setuptools_pyproject_toml_mit_lib.snap b/src/snapshots/python_project__project_generator__tests__create_setuptools_pyproject_toml_mit_lib.snap index 718a79a6..cabdf3fb 100644 --- a/src/snapshots/python_project__project_generator__tests__create_setuptools_pyproject_toml_mit_lib.snap +++ b/src/snapshots/python_project__project_generator__tests__create_setuptools_pyproject_toml_mit_lib.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { text = \"MIT\" }\nrequires-python = \">=3.9\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { text = \"MIT\" }\nrequires-python = \">=3.10\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__create_uv_pyproject_toml_mit_lib.snap b/src/snapshots/python_project__project_generator__tests__create_uv_pyproject_toml_mit_lib.snap index 7558bdf4..62786f90 100644 --- a/src/snapshots/python_project__project_generator__tests__create_uv_pyproject_toml_mit_lib.snap +++ b/src/snapshots/python_project__project_generator__tests__create_uv_pyproject_toml_mit_lib.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_apache_application.snap b/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_apache_application.snap index 8972b74e..908a0255 100644 --- a/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_apache_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_apache_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_mit_application.snap b/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_mit_application.snap index 8972b74e..908a0255 100644 --- a/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_mit_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_mit_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_no_license_application.snap b/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_no_license_application.snap index 005e73c0..11d48a2a 100644 --- a/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_no_license_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_pixi_pyproject_toml_file_no_license_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[tool.pixi.project]\nchannels = [\"conda-forge\", \"bioconda\"]\nplatforms = [\"linux-64\", \"osx-arm64\", \"osx-64\", \"win-64\"]\n\n[tool.pixi.feature.dev.tasks]\nrun-mypy = \"mypy my_project tests\"\nrun-ruff-check = \"ruff check my_project tests\"\nrun-ruff-format = \"ruff format my_project tests\"\nrun-pytest = \"pytest -x\"\n\n[project.optional-dependencies]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.pixi.environments]\ndefault = {features = [], solve-group = \"default\"}\ndev = {features = [\"dev\"], solve-group = \"default\"}\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_apache_application.snap b/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_apache_application.snap index 4d4e2e7a..09c59aae 100644 --- a/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_apache_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_apache_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"Apache-2.0\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.9\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"Apache-2.0\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.10\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_mit_application.snap b/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_mit_application.snap index cc48d0b2..e6602b3e 100644 --- a/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_mit_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_mit_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"MIT\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.9\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nlicense = \"MIT\"\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.10\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_no_license_application.snap b/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_no_license_application.snap index 0e35dc6c..614b8baa 100644 --- a/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_no_license_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_poetry_pyproject_toml_file_no_license_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.9\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[tool.poetry]\nname = \"my-project\"\nversion = \"1.0.0\"\ndescription = \"This is a test\"\nauthors = [\"Arthur Dent \"]\nreadme = \"README.md\"\n\n[tool.poetry.dependencies]\npython = \"^3.10\"\n\n[tool.poetry.group.dev.dependencies]\nmypy = {version = \"1.0.0\", extras = [\"faster-cache\"]}\npre-commit = \"1.0.0\"\npytest = \"1.0.0\"\npytest-cov = \"1.0.0\"\nruff = \"1.0.0\"\ntomli = {version = \"1.0.0\", python = \"<3.11\"}\n\n[build-system]\nrequires = [\"poetry-core>=1.0.0\"]\nbuild-backend = \"poetry.core.masonry.api\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_apache_pyo3.snap b/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_apache_pyo3.snap index e9ddda40..15b3f5ff 100644 --- a/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_apache_pyo3.snap +++ b/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_apache_pyo3.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"maturin>=1.5,<2.0\"]\nbuild-backend = \"maturin\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" },\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\ndynamic = [\"version\"]\nrequires-python = \">=3.9\"\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"maturin==1.0.0\",\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.maturin]\nmodule-name = \"my_project._my_project\"\nbinding = \"pyo3\"\nfeatures = [\"pyo3/extension-module\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"maturin>=1.5,<2.0\"]\nbuild-backend = \"maturin\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" },\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\ndynamic = [\"version\"]\nrequires-python = \">=3.10\"\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"maturin==1.0.0\",\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.maturin]\nmodule-name = \"my_project._my_project\"\nbinding = \"pyo3\"\nfeatures = [\"pyo3/extension-module\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_mit_pyo3.snap b/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_mit_pyo3.snap index e9ddda40..15b3f5ff 100644 --- a/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_mit_pyo3.snap +++ b/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_mit_pyo3.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"maturin>=1.5,<2.0\"]\nbuild-backend = \"maturin\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" },\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\ndynamic = [\"version\"]\nrequires-python = \">=3.9\"\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"maturin==1.0.0\",\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.maturin]\nmodule-name = \"my_project._my_project\"\nbinding = \"pyo3\"\nfeatures = [\"pyo3/extension-module\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"maturin>=1.5,<2.0\"]\nbuild-backend = \"maturin\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" },\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\ndynamic = [\"version\"]\nrequires-python = \">=3.10\"\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"maturin==1.0.0\",\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.maturin]\nmodule-name = \"my_project._my_project\"\nbinding = \"pyo3\"\nfeatures = [\"pyo3/extension-module\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_no_license_pyo3.snap b/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_no_license_pyo3.snap index 90aee5a6..5df974d6 100644 --- a/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_no_license_pyo3.snap +++ b/src/snapshots/python_project__project_generator__tests__save_pyproject_toml_file_no_license_pyo3.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"maturin>=1.5,<2.0\"]\nbuild-backend = \"maturin\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" },\n]\nreadme = \"README.md\"\ndynamic = [\"version\"]\nrequires-python = \">=3.9\"\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"maturin==1.0.0\",\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.maturin]\nmodule-name = \"my_project._my_project\"\nbinding = \"pyo3\"\nfeatures = [\"pyo3/extension-module\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"maturin>=1.5,<2.0\"]\nbuild-backend = \"maturin\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" },\n]\nreadme = \"README.md\"\ndynamic = [\"version\"]\nrequires-python = \">=3.10\"\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"maturin==1.0.0\",\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.maturin]\nmodule-name = \"my_project._my_project\"\nbinding = \"pyo3\"\nfeatures = [\"pyo3/extension-module\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_apache_application.snap b/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_apache_application.snap index 97f6fff5..6de5148c 100644 --- a/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_apache_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_apache_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { text = \"Apache-2.0\" }\nrequires-python = \">=3.9\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { text = \"Apache-2.0\" }\nrequires-python = \">=3.10\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_mit_application.snap b/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_mit_application.snap index 718a79a6..cabdf3fb 100644 --- a/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_mit_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_mit_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { text = \"MIT\" }\nrequires-python = \">=3.9\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { text = \"MIT\" }\nrequires-python = \">=3.10\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_no_license_application.snap b/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_no_license_application.snap index e7505c30..3d064570 100644 --- a/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_no_license_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_setuptools_pyproject_toml_file_no_license_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nrequires-python = \">=3.9\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" +"[build-system]\nrequires = [\"setuptools\", \"wheel\"]\nbuild-backend = \"setuptools.build_meta\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nrequires-python = \">=3.10\"\ndynamic = [\"version\", \"readme\"]\ndependencies = []\n\n[tool.setuptools.dynamic]\nversion = {attr = \"my_project.__version__\"}\nreadme = {file = [\"README.md\"]}\n\n[tool.setuptools.packages.find]\ninclude = [\"my_project*\"]\n\n[tool.setuptools.package-data]\nmy_project = [\"py.typed\"]\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_apache_application.snap b/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_apache_application.snap index 1c2a571b..33187190 100644 --- a/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_apache_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_apache_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n\n[tool.uv]\nadd-bounds = \"exact\"\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n\n[tool.uv]\nadd-bounds = \"exact\"\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_mit_application.snap b/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_mit_application.snap index 1c2a571b..33187190 100644 --- a/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_mit_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_mit_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n\n[tool.uv]\nadd-bounds = \"exact\"\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nlicense = { file = \"LICENSE\" }\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n\n[tool.uv]\nadd-bounds = \"exact\"\n" diff --git a/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_no_license_application.snap b/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_no_license_application.snap index 50890f41..a8dfd1dc 100644 --- a/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_no_license_application.snap +++ b/src/snapshots/python_project__project_generator__tests__save_uv_pyproject_toml_file_no_license_application.snap @@ -2,4 +2,4 @@ source: src/project_generator.rs expression: content --- -"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nreadme = \"README.md\"\nrequires-python = \">=3.9\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py39\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n\n[tool.uv]\nadd-bounds = \"exact\"\n" +"[build-system]\nrequires = [\"hatchling\"]\nbuild-backend = \"hatchling.build\"\n\n[project]\nname = \"my-project\"\ndescription = \"This is a test\"\nauthors = [\n { name = \"Arthur Dent\", email = \"authur@heartofgold.com\" }\n]\nreadme = \"README.md\"\nrequires-python = \">=3.10\"\ndynamic = [\"version\"]\ndependencies = []\n\n[dependency-groups]\ndev = [\n \"mypy[faster-cache]==1.0.0\",\n \"pre-commit==1.0.0\",\n \"pytest==1.0.0\",\n \"pytest-cov==1.0.0\",\n \"ruff==1.0.0\",\n]\n\n[tool.hatch.version]\npath = \"my_project/_version.py\"\n\n[tool.mypy]\ncheck_untyped_defs = true\ndisallow_untyped_defs = true\n\n[[tool.mypy.overrides]]\nmodule = [\"tests.*\"]\ndisallow_untyped_defs = false\n\n[tool.pytest.ini_options]\nminversion = \"6.0\"\naddopts = \"--cov=my_project --cov-report term-missing --no-cov-on-fail\"\n\n[tool.coverage.report]\nexclude_lines = [\"if __name__ == .__main__.:\", \"pragma: no cover\"]\n\n[tool.ruff]\nline-length = 100\ntarget-version = \"py310\"\nfix = true\n\n[tool.ruff.lint]\nselect = [\n \"E\", # pycodestyle\n \"B\", # flake8-bugbear\n \"W\", # Warning\n \"F\", # pyflakes\n \"UP\", # pyupgrade\n \"I001\", # unsorted-imports\n \"T201\", # print found\n \"T203\", # pprint found\n \"RUF022\", # Unsorted __all__\n \"RUF023\", # Unforted __slots__\n]\nignore=[\n # Recommended ignores by ruff when using formatter\n \"E501\",\n \"W191\",\n \"E111\",\n \"E114\",\n \"E117\",\n \"D206\",\n \"D300\",\n \"Q000\",\n \"Q001\",\n \"Q002\",\n \"Q003\",\n \"COM812\",\n \"COM819\",\n \"ISC001\",\n \"ISC002\",\n]\n\n[tool.uv]\nadd-bounds = \"exact\"\n"