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 Other
Latest commit 96c5f40 Feb 26, 2017 @stephentoub stephentoub committed on GitHub Merge pull request #16474 from dotnet-bot/master-UpdateDependencies
Update CoreClr to beta-25026-03 (master)
Permalink
Failed to load latest commit information.
Documentation Merge pull request #16472 from stephentoub/fixdocs Feb 26, 2017
Tools-Override Fix Helix property bag to include ArchGroup instead of Platform (so t… Feb 23, 2017
buildpipeline Update Debug CrossBuild Pipeline definition to use V2 images Feb 25, 2017
cross Enable manual CI triggering for arm and armel (#16378) Feb 24, 2017
external Update CoreClr to beta-25026-03 Feb 26, 2017
pkg Update compression package index Feb 23, 2017
src Tests confirming Queryable.SkipLast & TakeLast throw on null source. Feb 26, 2017
.editorconfig Add .builds files to editorconfig (#12387) Oct 5, 2016
.gitattributes Update .gitattributes Mar 3, 2016
.gitignore Add script to create an Android RootFS (#15883) Feb 7, 2017
.gitmirrorall Sync changes from TFS as of 2015/02/16 9:30:00 AM Feb 16, 2015
BuildToolsVersion.txt Add NETStandard.Library meta-package to package index Feb 23, 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
LICENSE Update license to .NET Foundation Jan 27, 2016
PATENTS.TXT Add additional data to patents file Nov 18, 2015
Packaging.props Enable package build Feb 16, 2017
README.md Update README to replace mscorlib Feb 19, 2017
THIRD-PARTY-NOTICES Reformat 3PN file and add URLs (#16480) Feb 26, 2017
binplace.targets Setting up ILCInputFolder that will be passed in to the ilc.exe that … Feb 24, 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 Adds -tests option for build.cmd that will add the test build and run… Feb 16, 2017
build-tests.sh Adds -tests option for build.cmd that will add the test build and run… Feb 16, 2017
build.cmd Build packages only when doing build.cmd/sh and not from build-manage… Feb 22, 2017
build.proj Adds -tests option for build.cmd that will add the test build and run… Feb 16, 2017
build.sh Build packages only when doing build.cmd/sh and not from build-manage… Feb 22, 2017
buildvertical.targets Enable package build Feb 16, 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 Build packages only when doing build.cmd/sh and not from build-manage… Feb 22, 2017
corefx.vssettings Removing properties not relevant to code formatting May 4, 2015
dependencies.props Update CoreClr to beta-25026-03 Feb 26, 2017
dir.props Setting up ILCInputFolder that will be passed in to the ilc.exe that … Feb 24, 2017
dir.targets Make ReferenceFromRuntime use project reference Feb 2, 2017
dir.traversal.targets Clean-up references to old build against packages properties Feb 22, 2017
init-tools.cmd Always copy over Tools-Override files to Tools to avoid incremental t… Feb 22, 2017
init-tools.sh Always copy over Tools-Override files to Tools to avoid incremental t… Feb 22, 2017
netci.groovy [ARM/CI] Use correct Ubuntu name for arm Feb 25, 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
referenceFromRuntime.targets Merge pull request #15917 from weshaggard/FixReferenceOrder Feb 7, 2017
run-test.cmd Fix run-tests.bat (#15811) Feb 5, 2017
run-test.sh Fix run-test.sh (#16170) Feb 15, 2017
run.cmd Always copy over Tools-Override files to Tools to avoid incremental t… Feb 22, 2017
run.sh Always copy over Tools-Override files to Tools to avoid incremental t… Feb 22, 2017
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

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 System.Private.Corelib - 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 x64 Debug Inner x64 Release Outer x64 Debug Outer x64 Release
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 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
PortableLinux 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
Windows 10 x64-debug x64-release
Windows Nano Server 2016 x64-debug x64-release
Code Coverage (Windows) code coverage

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) [email protected]. 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 System.Private.Corelib in the coreclr repo, with the build tooling generating type forwards from the library assembly to System.Private.Corelib.)
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.