{ "name": "raglite", "dockerComposeFile": "../docker-compose.yml", "service": "devcontainer", "workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}/", "remoteUser": "user", "overrideCommand": true, "postStartCommand": "cp --update /opt/build/poetry/poetry.lock /workspaces/${localWorkspaceFolderBasename}/ && mkdir -p /workspaces/${localWorkspaceFolderBasename}/.git/hooks/ && cp --update /opt/build/git/* /workspaces/${localWorkspaceFolderBasename}/.git/hooks/", "customizations": { "vscode": { "extensions": [ "charliermarsh.ruff", "GitHub.vscode-github-actions", "GitHub.vscode-pull-request-github", "ms-python.mypy-type-checker", "ms-python.python", "ms-toolsai.jupyter", "ryanluker.vscode-coverage-gutters", "tamasfe.even-better-toml", "visualstudioexptteam.vscodeintellicode" ], "settings": { "coverage-gutters.coverageFileNames": [ "reports/coverage.xml" ], "editor.codeActionsOnSave": { "source.fixAll": "explicit", "source.organizeImports": "explicit" }, "editor.formatOnSave": true, "[python]": { "editor.defaultFormatter": "charliermarsh.ruff" }, "[toml]": { "editor.formatOnSave": false }, "editor.rulers": [ 100 ], "files.autoSave": "onFocusChange", "jupyter.kernels.excludePythonEnvironments": [ "/usr/local/bin/python" ], "mypy-type-checker.importStrategy": "fromEnvironment", "mypy-type-checker.preferDaemon": true, "notebook.codeActionsOnSave": { "notebook.source.fixAll": "explicit", "notebook.source.organizeImports": "explicit" }, "notebook.formatOnSave.enabled": true, "python.defaultInterpreterPath": "/opt/raglite-env/bin/python", "python.terminal.activateEnvironment": false, "python.testing.pytestEnabled": true, "ruff.importStrategy": "fromEnvironment", "ruff.logLevel": "warning", "terminal.integrated.defaultProfile.linux": "zsh", "terminal.integrated.profiles.linux": { "zsh": { "path": "/usr/bin/zsh" } } } } } }