Skip to content

Latest commit

 

History

History
46 lines (30 loc) · 2.75 KB

File metadata and controls

46 lines (30 loc) · 2.75 KB

How to Contribute to the Dev Container Specification

We're excited for your contributions to the dev container specification! This document outlines how you can get involved.

Contribution approaches

  • Propose the change via an issue in this repository. Try to get early feedback before spending too much effort formalizing it.
  • More formally document the proposed change in terms of properties and their semantics. Look to format your proposal like our devcontainer.json reference, which is a JSON with Comments (jsonc) format.

Here is a sample:

Property Type Description
image string Required when using an image. The name of an image in a container registry (DockerHub, GitHub Container Registry, Azure Container Registry) that VS Code and other devcontainer.json supporting services / tools should use to create the dev container.
  • PRs to the schema, i.e code or shell scripts demonstrating approaches for implementation.

Once there is discussion on your proposal, please also open and link a PR to update the devcontainer.json reference doc. When your proposal is merged, the docs will be kept up-to-date with the latest spec.

Contributing tool-specific support

Tool-specific properties are contained in namespaces in the "customizations" property. For instance, VS Code specific properties are formated as:

// Configure tool-specific properties.
"customizations": {
     // Configure properties specific to VS Code.
     "vscode": {
          // Set *default* container specific settings.json values on container create.
          "settings": {},
			
          // Additional VS Code specific properties...
     }
},

You may propose adding a new namespace for a specific tool, and any properties specific to that tool.

Review process

We use the following labels:

  • proposal: Issues under discussion, still collecting feedback.
  • finalization: Proposals we intend to make part of the spec.

Milestones use a "month year" pattern (i.e. January 2022). If a finalized proposal is added to a milestone, it is intended to be merged during that milestone.