Problem
The .github/ configuration files were copied from the .NET SDK repo and reference C#/.NET tooling throughout:
| File |
Problem |
copilot-instructions.md |
C# coding conventions (this. qualification, Allman braces, file-scoped namespaces) |
dependabot.yml |
Configured for nuget package ecosystem instead of pip |
pull_request_template.md |
References dotnet test and Generated/ C# files |
ISSUE_TEMPLATE/bug_report.yml |
Label says "Azure Connectors .NET SDK", asks for ".NET version" |
CONTRIBUTING.md |
Prerequisites list .NET 8.0 SDK, build/test commands use dotnet CLI |
What needs to change
copilot-instructions.md — Python coding conventions
Replace C# conventions with Python equivalents:
| C# convention |
Python equivalent |
this. instance qualification |
self. (automatic in Python) |
_camelCase private fields |
_snake_case private attributes |
| PascalCase methods |
snake_case methods, PascalCase classes |
ConfigureAwait(false) |
N/A (Python asyncio doesn't need this) |
StringComparison parameter |
N/A |
| Allman braces |
PEP 8 indentation |
| File-scoped namespaces |
Module-level organization |
| XML doc comments |
Google/NumPy docstrings |
var for obvious types |
Type hints (PEP 484) |
Add Python-specific rules:
- Use
async/await for all I/O operations
- Type hints on all public API signatures
snake_case for functions/methods, PascalCase for classes
__all__ exports in __init__.py
- Context managers for client lifecycle (
async with)
dependabot.yml — Switch to pip ecosystem
`yaml
version: 2
updates:
-
package-ecosystem: "pip"
directory: "/src"
schedule:
interval: "weekly"
target-branch: "main"
groups:
minor-and-patch:
update-types: ["minor", "patch"]
-
package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
target-branch: "main"
groups:
minor-and-patch:
update-types: ["minor", "patch"]
`
pull_request_template.md — Update for Python
- Replace
dotnet test references with pytest
- Replace
Generated/*.cs with generated Python client files
- Update checklist items for Python conventions
ISSUE_TEMPLATE/bug_report.yml — Fix labels and fields
- Change label from "Azure Connectors .NET SDK" to "Azure Connectors Python SDK"
- Replace ".NET version" field with "Python version"
- Replace "SDK version" NuGet reference with PyPI/pip reference
CONTRIBUTING.md — Python prerequisites and workflow
- Prerequisites: Python 3.10+, Git (remove .NET 8.0 SDK)
- Build:
pip install -e ".[dev]" (remove dotnet restore/build)
- Test:
pytest (remove dotnet test)
- Code style: Reference Python
copilot-instructions.md
- Keep CLA, Code of Conduct, PR guidelines (generic sections)
Reference
Acceptance criteria
Problem
The
.github/configuration files were copied from the .NET SDK repo and reference C#/.NET tooling throughout:copilot-instructions.mdthis.qualification, Allman braces, file-scoped namespaces)dependabot.ymlnugetpackage ecosystem instead ofpippull_request_template.mddotnet testandGenerated/C# filesISSUE_TEMPLATE/bug_report.ymlCONTRIBUTING.mddotnetCLIWhat needs to change
copilot-instructions.md— Python coding conventionsReplace C# conventions with Python equivalents:
this.instance qualificationself.(automatic in Python)_camelCaseprivate fields_snake_caseprivate attributessnake_casemethods, PascalCase classesConfigureAwait(false)StringComparisonparametervarfor obvious typesAdd Python-specific rules:
async/awaitfor all I/O operationssnake_casefor functions/methods,PascalCasefor classes__all__exports in__init__.pyasync with)dependabot.yml— Switch to pip ecosystem`yaml
version: 2
updates:
package-ecosystem: "pip"
directory: "/src"
schedule:
interval: "weekly"
target-branch: "main"
groups:
minor-and-patch:
update-types: ["minor", "patch"]
package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
target-branch: "main"
groups:
minor-and-patch:
update-types: ["minor", "patch"]
`
pull_request_template.md— Update for Pythondotnet testreferences withpytestGenerated/*.cswith generated Python client filesISSUE_TEMPLATE/bug_report.yml— Fix labels and fieldsCONTRIBUTING.md— Python prerequisites and workflowpip install -e ".[dev]"(removedotnet restore/build)pytest(removedotnet test)copilot-instructions.mdReference
.github/: https://github.com/Azure/Connectors-NET-SDK/tree/main/.githubAcceptance criteria
copilot-instructions.mddocuments Python conventions (PEP 8, type hints, async patterns)dependabot.ymlusespipecosystem pointing to/srcpull_request_template.mdreferences pytest and Python filesbug_report.ymlasks for Python version, not .NET versionCONTRIBUTING.mdhas Python prerequisites and commands