// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/images/tree/main/src/python
{
    "name": "Python",
    "image": "mcr.microsoft.com/devcontainers/python:1-3.11-bullseye",
    // Features to add to the dev container. More info: https://containers.dev/features.
    "features": {
        "ghcr.io/astral-sh/devcontainer-features/uv:latest": {}
    },
    // Use 'forwardPorts' to make a list of ports inside the container available locally.
    // "forwardPorts": [],
    // Use 'postCreateCommand' to run commands after the container is created.
    "postCreateCommand": "sudo chmod +x ./.devcontainer/setup.sh && ./.devcontainer/setup.sh",
    "customizations": {
        "vscode": {
            "extensions": [
                "ms-python.python",
                "ms-python.vscode-pylance",
                "github.vscode-pull-request-github"
            ],
            "settings": {
                "files.eol": "\n",
                "editor.formatOnSave": true,
                "python.formatting.provider": "black",
                "python.linting.enabled": true,
                "python.linting.pylintEnabled": true,
                "python.linting.flake8Enabled": true,
                "python.linting.banditEnabled": true,
                "python.testing.pytestEnabled": true
            }
        },
        "codespaces": {
            "openFiles": [
                ".devcontainer/README.md"
            ]
        }
    }
    // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
    // "remoteUser": "root"
}
