This repo contains the .NET Core foundational libraries, called CoreFX. It includes classes for collections, file systems, console, XML, async and many others.
C# C Visual Basic C++ XSLT OpenEdge ABL
Latest commit 9ab794f Jan 24, 2017 @stephentoub stephentoub committed on GitHub Merge pull request #15251 from stephentoub/cwt_enum_tests
Add tests for enumerating ConditionalWeakTable
Permalink
Failed to load latest commit information.
Documentation Updating dogfooding doc to 2.0 (#15405) Jan 23, 2017
Tools-Override Merge pull request #15361 from mellinoe/unix-crossgen Jan 24, 2017
buildpipeline Add /p:EnableDumpling=true to pipeline.json for Linux builds Jan 20, 2017
cross Merge pull request #15266 from hqueue/arm/cross Jan 18, 2017
external Update CoreClr, CoreFx, ProjectNTfs to beta-24924-01, beta-24924-02, … Jan 24, 2017
pkg Remove additional packages Jan 20, 2017
scripts Minor fix for tizen toolchain.cmake Jan 5, 2017
src Merge pull request #15251 from stephentoub/cwt_enum_tests Jan 25, 2017
.editorconfig Add .builds files to editorconfig (#12387) Oct 5, 2016
.gitattributes Update .gitattributes Mar 3, 2016
.gitignore Merge branch 'master' into x86-support Dec 15, 2016
.gitmirrorall Sync changes from TFS as of 2015/02/16 9:30:00 AM Feb 16, 2015
BuildToolsVersion.txt Update BuildTools version to 1.0.27-prerelease-01224-01 (#15437) Jan 24, 2017
CONTRIBUTING.md Add folders to CoreFX Documentation Jun 23, 2015
CodeAnalysis.ruleset Enable CA2002:DoNotLockOnObjectsWithWeakIdentity (#14289) Dec 8, 2016
DotnetCLIVersion.txt Update CLI to 1.0.0-preview2-1-003182, BuildTools to 1.0.27-prereleas… Jan 6, 2017
FindConflictingProjectConfigurations.ps1 Script to detect conflicting project configurations. Jan 23, 2016
GenerateBuilds.ps1 Manual changes for ns2.0 rename Jan 11, 2017
LICENSE Update license to .NET Foundation Jan 27, 2016
PATENTS.TXT Add additional data to patents file Nov 18, 2015
Packaging.props Update 1.2.0 nupkgs to 2.0.0 Jan 11, 2017
README.md Add Fedora 24 CI badges to README.md Nov 3, 2016
THIRD-PARTY-NOTICES Update THIRD-PARTY-NOTICES Oct 3, 2016
UpdatePublishedVersions.ps1 Use versions repo tooling from BuildTools. Aug 8, 2016
binplace.targets Merge pull request #15306 from mellinoe/coverage Jan 20, 2017
build-managed.cmd Update build tools version to have a new "tools" structure for config… Aug 23, 2016
build-managed.sh Update documentation to include how to configure builds Jan 9, 2017
build-native.cmd Changing dev workflow scripts to use the Run Command Tool (#10231) Jul 28, 2016
build-native.sh Changing dev workflow scripts to use the Run Command Tool (#10231) Jul 28, 2016
build-packages.cmd Update build tools version to have a new "tools" structure for config… Aug 23, 2016
build-packages.sh Update build tools version to have a new "tools" structure for config… Aug 23, 2016
build-tests.cmd Update build tools version to have a new "tools" structure for config… Aug 23, 2016
build-tests.sh Correctly process useServerGC in build-tests.sh Jan 6, 2017
build.cmd Build working on non-Windows after merging master Jan 9, 2017
build.proj Update project configuration and sln files (#15182) Jan 17, 2017
build.sh Fixing hack of pre-building CoreFx.Tools to avoid assembly loading issue Jan 19, 2017
buildvertical.targets Use BuildConfigurations for external Jan 19, 2017
clean.cmd Fix _echo to be uniform (_echo just needs to be defined for it to be … Oct 8, 2016
clean.sh Revert changes to clean.sh Oct 5, 2016
config.json Clean up duplicated tests.builds, fix code coverage test serialization Jan 20, 2017
corefx.vssettings Removing properties not relevant to code formatting May 4, 2015
dependencies.props Update CoreClr, CoreFx, ProjectNTfs to beta-24924-01, beta-24924-02, … Jan 24, 2017
dir.props Adding missing Configurations.props for refs and fixing the existing … Jan 20, 2017
dir.targets Merge branch master into dev/eng Jan 5, 2017
dir.traversal.targets Clean up duplicated tests.builds, fix code coverage test serialization Jan 20, 2017
global.json Enable project reference to package dependency conversion for test bu… Apr 14, 2016
init-tools.cmd Merge master into dev/eng Jan 12, 2017
init-tools.sh Add a crossgen.sh script, which can be used to run crossgen on Tools … Jan 23, 2017
netci.groovy Fix netci.groovy tar invocation Jan 24, 2017
publish-packages.cmd Changing dev workflow scripts to use the Run Command Tool (#10231) Jul 28, 2016
publish-packages.sh Changing dev workflow scripts to use the Run Command Tool (#10231) Jul 28, 2016
run-test.cmd Fix _echo to be uniform (_echo just needs to be defined for it to be … Oct 8, 2016
run-test.sh Merge branch master into dev/eng Jan 5, 2017
run.cmd Fix _echo to be uniform (_echo just needs to be defined for it to be … Oct 8, 2016
run.sh Enable init-tools option to suppress non-error output from the consol… Aug 25, 2016
sync.cmd Changing dev workflow scripts to use the Run Command Tool (#10231) Jul 28, 2016
sync.sh Fixing hack of pre-building CoreFx.Tools to avoid assembly loading issue Jan 19, 2017
targetingpacks.props Enable NetFX tests (Step 1) (#15344) Jan 21, 2017

README.md

.NET Core Libraries (CoreFX)

The corefx repo contains the library implementation (called "CoreFX") for .NET Core. It includes System.Collections, System.IO, System.Xml, and many other components. You can see more information in Documentation. The corresponding .NET Core Runtime repo contains the runtime implementation (called "CoreCLR") for .NET Core. It includes RyuJIT, the .NET GC, and many other components. Runtime-specific library code - namely mscorlib - lives in the CoreCLR repo. It needs to be built and versioned in tandem with the runtime. The rest of CoreFX is agnostic of runtime-implementation and can be run on any compatible .NET runtime.

Source Index

.NET Core now has a source index: https://source.dot.net

Build & Test Status

Inner Loop Outer Loop
CentOS 7.1 x64-debug
x64-release
x64-debug
x64-release
Debian 8 x64-debug
x64-release
x64-debug
x64-release
Fedora 23 x64-debug
x64-release
x64-debug
x64-release
Fedora 24 x64-debug
x64-release
x64-debug
x64-release
openSUSE 13.2 x64-debug
x64-release
x64-debug
x64-release
openSUSE 42.1 x64-debug
x64-release
x64-debug
x64-release
OS X 10.11 x64-debug
x64-release
x64-debug
x64-release
Red Hat 7.2 x64-debug
x64-release
x64-debug
x64-release
Ubuntu 14.04 x64-debug
x64-release
x64-debug
x64-release
Ubuntu 16.04 x64-debug
x64-release
x64-debug
x64-release
Ubuntu 16.10 x64-debug
x64-release
x64-debug
x64-release
Windows 7 x64-debug
x64-release
Windows 8.1 x64-debug
x64-release
x64-debug
x64-release
code coverage
local coverage
Windows 10 x64-debug
x64-release
Windows Nano Server 2016 x64-debug
x64-release

How to Engage, Contribute and Provide Feedback

Some of the best ways to contribute are to try things out, file bugs, and join in design conversations. If you are having issues with the Full .NET Framework or .NET Runtime, the best way to file a bug is at Connect or through Product Support if you have a contract.

Want to get more familiar with what's going on in the code?

Looking for something to work on? The list of up-for-grabs issues is a great place to start. See some of our guides for more details:

We've also started to share some of our direction via more higher-level documentation, specifically:

You are also encouraged to start a discussion by filing an issue or creating a gist.

You can discuss .NET OSS more generally in the .NET Foundation forums.

Want to chat with other members of the CoreFX community?

.NET Slack Status Join the chat at https://gitter.im/dotnet/corefx

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct.

Reporting security issues and security bugs

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

.NET Core Library Components

The repo contains the source for each of the assemblies that comprises .NET Core. Each Microsoft.* or System.* folder under src represents an individual library. Each such folder may contain a ref folder, which contains the source representing the "contract" or "reference assembly" for that library. It may also contain a src folder, which contains the source for some or all of the implementation for that library (some implementation may live in mscorlib in the coreclr repo, with the build tooling generating type forwards from the library assembly to mscorlib.)
It may also contain a test folder containing the tests associated with that library, whether the implementation source lives in corefx or in coreclr.

Daily Builds

Daily builds of .NET Core components are published to dotnet-core MyGet gallery. The latest version number of each library can be seen in that gallery.

License

.NET Core (including the corefx repo) is licensed under the MIT license.

.NET Foundation

.NET Core is a .NET Foundation project.

Related Projects

There are many .NET related projects on GitHub.

  • The .NET home repo links to 100s of .NET projects, from Microsoft and the community.
  • The .NET Core repo links to .NET Core related projects from Microsoft.
  • The ASP.NET home repo is the best place to start learning about ASP.NET Core.
  • dotnet.github.io is a good place to discover .NET Foundation projects.