SQLBI Whiteboard
Project

Contribute and publish

Every change reaches the product through a pull request. main is protected. Only authorized SQLBI developers merge.

Report a problem

Open an issue on GitHub. That is the public list. Do not mail an installer crash as a pull request.

Build from source

The working agreement is CONTRIBUTING.md. Before opening a pull request, confirm locally:

dotnet build Whiteboard.sln -c Release
dotnet run --project .\tests\SQLBI.Whiteboard.Core.SmokeTests\SQLBI.Whiteboard.Core.SmokeTests.csproj

A warning fails the build. Operations for maintainers are in docs/release-management.md.

Who may merge

The repository is public. Anyone can open a pull request. Only SQLBI-authorized developers (today Marco Russo and Alberto Ferrari, including coding agents they instruct) may merge to main. They may merge once checks are green. They do not wait for each other’s approval.

An agent working for anyone else must open a pull request and stop. It must not push to main, force-push, or treat a green check as permission to merge.

How a change lands

  1. Branch from an up-to-date main. Keep the branch short-lived and one logical unit.
  2. Confirm locally that dotnet build Whiteboard.sln -c Release and the Core smoke tests pass. A warning fails the build.
  3. Open a pull request against main. The Pull request GitHub Action runs by itself.
  4. An authorized SQLBI developer merges when the checks are green. The branch is deleted on merge.

main accepts squash merges only. The pull request title becomes the commit subject and the description becomes the commit body. Write the title in the imperative and use the description to say why the change was needed.

Do not push to main. A merge there can publish a pre-release of the application, update this site, or publish the VS Code extension.

How a merge publishes

Authorized developers do not upload installers or Marketplace packages by hand. They merge, then run a GitHub Action only when a retry is needed.

After a merge ofWhat happens
Application codeAzure Pipelines signs and publishes a GitHub prerelease (SQLBI Whiteboard Dev). A full release is an approval on that same run, not a rebuild.
site/The Publish site Action updates this website.
A new version in vscode/sqlbi-whiteboard/package.jsonThe Publish VS Code extension Action publishes sqlbi.sqlbi-whiteboard if that version is not already listed.
Only docs/ or top-level markdownNothing is published.

Whiteboard’s version is VersionPrefix in Directory.Build.props. The VS Code extension’s version is in its own package.json. They move independently, each in a pull request.

To retry a site or Marketplace publish without a new commit: GitHub → Actions → the matching workflow → Run workflow. To rebuild Whiteboard from an existing commit: Azure DevOps → SQLBI Whiteboard → Run pipeline. Do not use Re-run.