Skip to content

Latest commit

 

History

History
66 lines (44 loc) · 2.87 KB

File metadata and controls

66 lines (44 loc) · 2.87 KB

Contributing to Azure Connectors SDK — LSP Server

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Getting Started

Prerequisites

Building

dotnet restore
dotnet build

Running Tests

dotnet test

How to Contribute

  1. Fork the repository
  2. Create a topic branch from main (git checkout -b feature/my-change)
  3. Make your changes
  4. Run tests to ensure nothing is broken (dotnet test)
  5. Commit your changes (git commit -m "Add my change")
  6. Push to your fork (git push origin feature/my-change)
  7. Open a pull request against main

Pull Request Guidelines

  • Keep PRs focused on a single change
  • Include tests for new functionality
  • Update documentation if behavior changes
  • Follow the existing code style (see copilot-instructions.md for conventions)

Automated PR Validation

PRs targeting main must pass the build-and-test (ubuntu-latest) and build-and-test (windows-latest) CI checks. This cross-platform validation restores dependencies, builds the .NET LSP server and test projects, and runs the unit tests. Formatting and Markdown linting run in the separate Ubuntu lint job.

This validation does not publish an extension, create a release, or change the current extension version.

Reporting Issues

  • Use GitHub Issues to report bugs or request features
  • Search existing issues before creating a new one
  • Use the provided issue templates when available

Code Style

This project follows the coding conventions documented in .github/copilot-instructions.md. Key points:

  • Use ConfigureAwait(continueOnCapturedContext: false) on all async calls
  • Qualify instance members with this.
  • Use named arguments for boolean parameters
  • Use StringComparison for all string comparisons