From d81ba5e9774d9817f0e7cc0d0b48878d4177adf4 Mon Sep 17 00:00:00 2001 From: Julian Pawlowski Date: Sun, 9 Nov 2025 16:01:54 +0000 Subject: [PATCH] chore(devcontainer): consolidate VS Code settings and remove deprecated options Migrated all settings from .vscode/settings.json to devcontainer.json for team-wide consistency. Removed .vscode/settings.json entirely. Changes: - Added python.analysis.exclude to prevent Pylance from analyzing .venv, .github, docs and other non-code directories (eliminates 2000+ false errors) - Added python.analysis.diagnosticMode: workspace for comprehensive analysis of integration code - Added source.organizeImports.ruff for automatic import sorting - Added markdown.wordWrap and disabled markdown link validation - Removed deprecated python.linting.* settings (deprecated since 2023) - Removed editor.formatOnPaste (conflicts with Copilot) - Changed source.organizeImports to source.organizeImports.ruff (Ruff-specific, prevents conflicts with Pylance) - Changed source.fixAll to source.fixAll.ruff (explicit Ruff action) Impact: All developers get identical Copilot-friendly environment without local overrides. No Pylance errors from .venv directories, no markdown validation warnings, no conflicts between Copilot and auto-formatting. --- .devcontainer/devcontainer.json | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 0c3d41b..c632452 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -32,7 +32,6 @@ ], "settings": { "editor.tabSize": 4, - "editor.formatOnPaste": true, "editor.formatOnSave": true, "editor.formatOnType": false, "extensions.ignoreRecommendations": false, @@ -40,13 +39,21 @@ "files.trimTrailingWhitespace": true, "python.analysis.typeCheckingMode": "basic", "python.analysis.autoImportCompletions": true, + "python.analysis.diagnosticMode": "workspace", + "python.analysis.exclude": [ + "**/.venv/**", + "**/venv/**", + "**/__pycache__/**", + "**/.git/**", + "**/.github/**", + "**/docs/**", + "**/node_modules/**" + ], "python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python", "python.analysis.extraPaths": [ "${workspaceFolder}/.venv/lib/python3.13/site-packages" ], "python.terminal.activateEnvironment": true, - "python.linting.enabled": true, - "python.linting.ruffEnabled": true, "python.terminal.activateEnvInCurrentTerminal": true, "python.testing.pytestArgs": [ "--no-cov" @@ -55,18 +62,25 @@ "editor.defaultFormatter": "charliermarsh.ruff", "editor.formatOnSave": true, "editor.codeActionsOnSave": { - "source.fixAll": "explicit", - "source.fixAll.ruff": "explicit" + "source.fixAll.ruff": "explicit", + "source.organizeImports.ruff": "explicit" } }, + "[markdown]": { + "editor.wordWrap": "on" + }, "yaml.customTags": [ - "!input scalar", "!secret scalar", - "!include_dir_named scalar", + "!include scalar", "!include_dir_list scalar", "!include_dir_merge_list scalar", - "!include_dir_merge_named scalar" + "!include_dir_named scalar", + "!include_dir_merge_named scalar", + "!input scalar" ], + "markdown.validate.enabled": false, + "markdown.validate.fileLinks.enabled": "ignore", + "markdown.validate.fragmentLinks.enabled": "ignore", "json.schemas": [ { "fileMatch": [