Go to file
xtqqczze e93381e73e
Add readonly modifier to internal static members (#11777)
# PR Summary

* Add readonly modifier to internal static members.

## PR Context

## PR Checklist

- [x] [PR has a meaningful title](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)
    - Use the present tense and imperative mood when describing your changes
- [x] [Summarized changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)
- [x] [Make sure all `.h`, `.cpp`, `.cs`, `.ps1` and `.psm1` files have the correct copyright header](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)
- [x] This PR is ready to merge and is not [Work in Progress](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---work-in-progress).
    - If the PR is work in progress, please add the prefix `WIP:` or `[ WIP ]` to the beginning of the title (the `WIP` bot will keep its status check at `Pending` while the prefix is present) and remove the prefix when the PR is ready.
- **[Breaking changes](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#making-breaking-changes)**
    - [x] None
    - **OR**
    - [ ] [Experimental feature(s) needed](https://github.com/MicrosoftDocs/PowerShell-Docs/blob/staging/reference/6/Microsoft.PowerShell.Core/About/about_Experimental_Features.md)
        - [ ] Experimental feature name(s): <!-- Experimental feature name(s) here -->
- **User-facing changes**
    - [x] Not Applicable
    - **OR**
    - [ ] [Documentation needed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#pull-request---submission)
        - [ ] Issue filed: <!-- Number/link of that issue here -->
- **Testing - New and feature**
    - [x] N/A or can only be tested interactively
    - **OR**
    - [ ] [Make sure you've added a new test if existing tests do not effectively test the code changed](https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md#before-submitting)
- **Tooling**
    - [x] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
    - **OR**
    - [ ] I have considered the user experience from a tooling perspective and enumerated concerns in the summary. This may include:
        - Impact on [PowerShell Editor Services](https://github.com/PowerShell/PowerShellEditorServices) which is used in the [PowerShell extension](https://github.com/PowerShell/vscode-powershell) for VSCode (which runs in a different PS Host).
        - Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.
        - Impact on [PSScriptAnalyzer](https://github.com/PowerShell/PSScriptAnalyzer) (which provides linting & formatting in the editor extensions).
        - Impact on [EditorSyntax](https://github.com/PowerShell/EditorSyntax) (which provides syntax highlighting with in VSCode, GitHub, and many other editors).
2020-05-31 05:10:22 +00:00
.dependabot Add dependabot rules to ignore updates from .NET (#12466) 2020-04-24 10:46:42 -07:00
.devcontainer CodeFactor cleanup (#12251) 2020-04-14 14:34:53 -07:00
.github Minor typo corrections in Distribution Request Issue Templates (#12744) 2020-05-30 10:33:27 -07:00
.poshchan Update @PoshChan config to include SSH (#12526) 2020-05-05 21:48:37 +05:00
.vscode Change recommended VS Code extension name from ms-vscode.csharp to ms-dotnettools.csharp (#12083) 2020-03-10 11:55:23 +05:00
.vsts-ci Sign the MSIX files for the store (#12582) 2020-05-29 10:26:30 -07:00
assets Sign the MSIX files for the store (#12582) 2020-05-29 10:26:30 -07:00
CHANGELOG Merge branch 'release/v7.1.0-preview.3' into master 2020-05-19 12:07:53 -07:00
demos Update docs.microsoft.com links (#12653) 2020-05-15 03:29:43 +00:00
docker Update copyright notice to latest guidance (#12190) 2020-03-24 11:08:37 -07:00
docs Correct 'review-for-comments' in Governance.md (#11035) 2020-05-28 11:18:53 -07:00
src Add readonly modifier to internal static members (#11777) 2020-05-31 05:10:22 +00:00
test Update .NET SDK version from 5.0.100-preview.5.20278.13 to 5.0.100-preview.5.20279.10 (#12844) 2020-05-30 10:31:44 -07:00
tools Sign the MSIX files for the store (#12582) 2020-05-29 10:26:30 -07:00
.editorconfig Specifiy csharp_preferred_modifier_order in EditorConfig (#11775) 2020-02-07 12:09:52 -08:00
.gitattributes Add VSTS CI for Windows (#7536) 2018-08-17 22:06:51 -07:00
.gitignore Discover assemblies loaded by 'Assembly.Load(byte[])' and 'Assembly.LoadFile' (#12203) 2020-03-28 20:25:59 +05:00
.markdownlint.json Update CHANGELOG.md for 'v6.0.0-beta.1' release (#3736) 2017-05-08 17:58:12 -07:00
.spelling Added missing changelog for v7.1.0-preview.2 (#12665) 2020-05-19 09:16:11 +05:00
ADOPTERS.md Update docs.microsoft.com links (#12653) 2020-05-15 03:29:43 +00:00
build.psm1 Allow use of build module on unknown Linux distros (#11146) 2020-05-28 17:31:56 -07:00
CHANGELOG.md Refactor change logs into one log per release (#11165) 2019-12-02 17:47:08 -08:00
CODE_OF_CONDUCT.md Promote https (#8160) 2018-11-01 11:55:53 +05:00
codecov.yml Make OpenCover merge and upload more reliable/usable (#3078) 2017-02-01 15:45:03 -08:00
DotnetRuntimeMetadata.json Update README and metadata files for next release (#12717) 2020-05-19 11:22:28 -07:00
global.json Update .NET SDK version from 5.0.100-preview.5.20278.13 to 5.0.100-preview.5.20279.10 (#12844) 2020-05-30 10:31:44 -07:00
LICENSE.txt Update LICENSE.txt so that it's recognized as MIT (#12729) 2020-05-19 13:13:37 -07:00
nuget.config Scripts to update to .NET prerelease version (#12284) 2020-04-15 11:40:56 -07:00
PowerShell.Common.props Remove phrase 'All rights reserved' from Microsoft copyright statements (#12722) 2020-05-20 12:02:38 +00:00
PowerShell.sln Fix unix project mappings (#9892) 2019-06-17 11:36:48 -07:00
README.md Replace link to Slack with link to PowerShell Virtual User Group (#12786) 2020-05-26 16:53:49 +00:00
Settings.StyleCop Fix hungarian prefix 'my' (#9976) 2019-07-17 13:17:58 -07:00
stylecop.json Update copyright notice to latest guidance (#12190) 2020-03-24 11:08:37 -07:00
ThirdPartyNotices.txt Update ThirdPartyNotices.txt (#10834) 2019-10-18 16:25:08 -07:00

logo PowerShell

Welcome to the PowerShell GitHub Community! PowerShell Core is a cross-platform (Windows, Linux, and macOS) automation and configuration tool/framework that works well with your existing tools and is optimized for dealing with structured data (e.g. JSON, CSV, XML, etc.), REST APIs, and object models. It includes a command-line shell, an associated scripting language and a framework for processing cmdlets.

Windows PowerShell vs. PowerShell Core

Although this repository started as a fork of the Windows PowerShell code base, changes made in this repository do not make their way back to Windows PowerShell 5.1 automatically. This also means that issues tracked here are only for PowerShell Core 6 and higher. Windows PowerShell specific issues should be opened on UserVoice.

New to PowerShell?

If you are new to PowerShell and would like to learn more, we recommend reviewing the getting started documentation.

Get PowerShell

You can download and install a PowerShell package for any of the following platforms.

Supported Platform Download (LTS) Downloads (stable) Downloads (preview) How to Install
Windows (x64) .msi .msi .msi Instructions
Windows (x86) .msi .msi .msi Instructions
Ubuntu 18.04 .deb .deb .deb Instructions
Ubuntu 16.04 .deb .deb .deb Instructions
Debian 9 .deb .deb .deb Instructions
Debian 10 .deb .deb .deb
CentOS 7 .rpm .rpm .rpm Instructions
CentOS 8 .rpm .rpm .rpm
Red Hat Enterprise Linux 7 .rpm .rpm .rpm Instructions
openSUSE 42.3 .rpm .rpm .rpm Instructions
Fedora 30 .rpm .rpm .rpm Instructions
macOS 10.13+ .pkg .pkg .pkg Instructions
Docker Instructions

You can download and install a PowerShell package for any of the following platforms, which are supported by the community.

Platform Downloads (stable) Downloads (preview) How to Install
Arch Linux Instructions
Kali Linux .deb .deb Instructions
Many Linux distributions Snapcraft Snapcraft

You can also download the PowerShell binary archives for Windows, macOS and Linux.

Platform Downloads (stable) Downloads (preview) How to Install
Windows 32-bit/64-bit 32-bit/64-bit Instructions
macOS 64-bit 64-bit Instructions
Linux 64-bit 64-bit Instructions
Windows (Arm) 32-bit/64-bit (preview) 32-bit/64-bit Instructions
Raspbian (Arm) 32-bit/64-bit 32-bit/64-bit Instructions

To install a specific version, visit releases.

Community Dashboard

Dashboard with visualizations for community contributions and project status using PowerShell, Azure, and PowerBI.

For more information on how and why we built this dashboard, check out this blog post.

Chat

Want to chat with other members of the PowerShell community?

We have a Gitter Room which you can join below.

Join the chat

There is also the community driven PowerShell Virtual User Group, which you can join on:

Add-ons and libraries

Awesome PowerShell has a great curated list of add-ons and resources.

Building the Repository

Linux Windows macOS
Instructions Instructions Instructions

If you have any problems building, please consult the developer FAQ.

Build status of nightly builds

Azure CI (Windows) Azure CI (Linux) Azure CI (macOS) Code Coverage Status CodeFactor Grade
windows-nightly-image linux-nightly-image macOS-nightly-image cc-image cf-image

Downloading the Source Code

You can just clone the repository:

git clone https://github.com/PowerShell/PowerShell.git

See working with the PowerShell repository for more information.

Developing and Contributing

Please see the Contribution Guide for how to develop and contribute. If you are developing .NET Core C# applications targeting PowerShell Core, please check out our FAQ to learn more about the PowerShell SDK NuGet package.

Also, make sure to check out our PowerShell-RFC repository for request-for-comments (RFC) documents to submit and give comments on proposed and future designs.

Support

For support, please see the Support Section.

PowerShell is licensed under the MIT license.

Windows Docker Files and Images

License: By requesting and using the Container OS Image for Windows containers, you acknowledge, understand, and consent to the Supplemental License Terms available on Docker Hub:

Telemetry

By default, PowerShell collects the OS description and the version of PowerShell (equivalent to $PSVersionTable.OS and $PSVersionTable.GitCommitId) using Application Insights. To opt-out of sending telemetry, create an environment variable called POWERSHELL_TELEMETRY_OPTOUT set to a value of 1 before starting PowerShell from the installed location. The telemetry we collect falls under the Microsoft Privacy Statement.

Governance

Governance policy for PowerShell project is described here.

Code of Conduct

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.