{"action":"created","comment":{"url":"https://api.github.com/repos/aspnet/Docs/pulls/comments/37029854","id":37029854,"diff_hunk":"@@ -1,8 +1,652 @@\n-.. include:: /../common/stub-topic.txt\n+Working with DNX Projects\n+=========================\n \n-|stub-icon| Working with DNX Projects\n-=====================================\n+DNX projects are used to build and run .NET applications for Windows, Mac and Linux. DNX provides a host process, CLR hosting logic and managed entry point discovery. \n \n-.. include:: /../common/stub-notice.txt\n+.. note:: To see and create an example of a DNX project, follow the steps provided in the tutorial `Create an ASP.NET 5 web app in Visual Studio Code <https://azure.microsoft.com/en-us/documentation/articles/web-sites-create-web-app-using-vscode/>`_. After creating the app and opening it in VSCode, you will be able to view the **project.json** file.\n \n-.. _issue: https://github.com/aspnet/Docs/issues/50\n\\ No newline at end of file\n+Creating a new project \n+----------------------\n+\n+At its simplest form, a DNX project is a **project.json** file along with a code file:\n+\n+::\n+\n+    -MyApp (folder)\n+    --project.json\n+    --Program.cs\n+\n+There are two mandatory conditions for a project. The *project.json* file must contain valid json, where brackets *{ }* are used inside the file, and that your *program.cs* file contains valid C#. \n+\n+The presence of a *project.json* file defines a DNX project. It is the *project.json* file that contains all the information that the DNX needs to run and package your project. For additional details, including the *project.json* file schema, see `Project.json <https://github.com/aspnet/Home/wiki/Project.json-file>`_.\n+\n+When using some editors there are other files that you'll see. For instance, a file with the extension .xproj is used in the case of Visual Studio. These other types of files are requirements of their specific tool, but are not a requirement of the DNX. The .xproj file type, for example, is an MSBuild file that is used by Visual Studio and keeps information that is important to Visual Studio, but this type of file does not impact the DNX.\n+\n+Targeting frameworks\n+--------------------\n+\n+One of the sections you can add to the *project.json* is the ``frameworks`` section. The ``frameworks`` section looks like this:\n+\n+.. code-block:: json\n+\n+    {\n+      \"frameworks\": {\n+        \"dnx451\": {},\n+        \"dnxcore50\": {}\n+      }\n+    }\n+\n+Each of the values in the ``frameworks`` section of the *project.json* file is a framework that your project will compile. The above snippet will build for the full .NET Framework (dnx451) or Core CLR (dnxcore50). \n+\n+If you pack this project, using ``dnu pack`` then you will get a NuGet package that looks like the following:\n+\n+.. image:: projects/_static/TargetPlatformNupkg.png\n+\n+Notice that the ``nupkg`` has a folder for each of the frameworks you specified, allowing this NuGet package to work on any of the frameworks. You can also specify this as follows:\n+\n+.. code-block:: json\n+\n+    {\n+      \"frameworks\": {\n+        \"dnxcore50\":{},\n+        \".NETPortable,Version=v4.5,Profile=Profile7\":{}\n+      }\n+    }\n+\n+With the above ``frameworks`` section, you'll generate a package with a *portable-net45+win* folder that will be used when running on platforms that match that portable profile.\n+\n+Adding dependencies\n+-------------------\n+\n+You manage the dependencies of your application with the ``dependencies`` section of your *project.json* file. The dependencies are defined by name and version, where the runtime loaders determine what should be loaded.\n+\n+.. code-block:: json\n+\n+    {\n+      \"dependencies\":{\n+        \"Microsoft.AspNet.Mvc\": \"6.0.0-beta4\"\n+      }\n+    }\n+\n+The above *project.json* section tells the DNX that you depend upon ``Microsoft.AspNet.Mvc``, which means you also depend on everything that the MVC package depends on.\n+\n+The schema for dependency types adheres the following pattern:\n+\n+.. code-block:: json\n+\n+\t{\n+\t\t\"dependencies\": {\n+\t\t\t\"type\": \"object\",\n+\t\t\t\"additionalProperties\": {\n+\t\t\t\t\"type\": [ \"string\", \"object\" ],\n+\t\t\t\t\"properties\": {\n+\t\t\t\t\t\"version\": {\n+\t\t\t\t\t\t\"type\": \"string\"\n+\t\t\t\t\t},\n+\t\t\t\t\t\"type\": {\n+\t\t\t\t\t\t\"type\": \"string\",\n+\t\t\t\t\t\t\"default\": \"default\",\n+\t\t\t\t\t\t\"enum\": [ \"default\", \"build\" ]\n+\t\t\t\t\t}\n+\t\t\t\t}\n+\t\t\t}\n+\t\t}\n+\t}\n+\t\t\n+For additional information about how dependency versions are chosen, see `Dependency Resolution <https://github.com/aspnet/Home/wiki/Dependency-Resolution>`_.\n+\t\t\n+Package dependencies\n+^^^^^^^^^^^^^^^^^^^^\n+\n+The DNX Utility (dnu) is responsible for all operations involving packages in your application. You use the **Install** command to download a package based on the package id and add it to your application::\n+\n+\tdnu install <package id>\n+\t\n+For a list of usage, arguments, and options of the ``install`` command, enter the following in the command windows::\n+\n+\tdnu help install\n+\t\n+For more information about ``dnu`` commands, see `DNX Utility <https://github.com/aspnet/Home/wiki/DNX-utility>`_.\n+\n+The more common way of installing packages is to just edit the *project.json* file. Editors like Visual Studio provide IntelliSense for all packages, making editing the file far easier than running ``dnu install``. However, you can use ``dnu install`` if you prefer. \n+\n+Assembly references\n+^^^^^^^^^^^^^^^^^^^\n+\n+You can also specify a list of framework assemblies for frameworks other than *dnxcore50*:\n+\n+.. code-block:: json\n+\n+    {\n+      \"frameworks\": {\n+        \"dnx451\":{\n+          \"frameworkAssemblies\":{\n+            \"System.Text\": \"\"\n+          }\n+        }\n+      }\n+    }\n+\n+Generally, you use this frameworkAssemblies section when you want to depend on an assembly that is:\n+- In the Global Assembly Cache (GAC)\n+- Part of the framework you are targeting \n+\n+The *frameworkAssemblies* section is separate from the rest of the dependencies list to remove the possibility of accidentally depending on a NuGet package that happens to have the same name as a .NET Framework assembly. \n+\n+Project references\n+^^^^^^^^^^^^^^^^^^\n+\n+The *global.json* file is used to configure the solution as a whole. It includes just two default sections, the ``projects`` section and the ``sdk`` section.\n+\n+.. code-block:: json\n+\n+\t{\n+\t  \"projects\": [ \"src\", \"test\" ],\n+\t  \"sdk\": {\n+\t\t\"version\": \"1.0.0-beta5\",\n+\t\t\"runtime\": \"clr\",\n+\t\t\"architecture\": \"x86\"\n+\t  }\n+\t}\n+\n+The ``projects`` property designates which folders contain source code for the solution. By default, the project structure places source files in a *src* folder, allowing build artifacts to be placed in a sibling folder, making it easier to exclude such things from source control.\n+\n+Specifying required SDK version\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+The ``sdk`` property specifies the version of the DNX (.Net Execution Environment) that Visual Studio will use when opening the solution. It’s set in the *global.json* file, rather than in *project.json* file, to avoid scenarios where different projects within a solution are targeting different versions of the SDK.\n+\t\n+Referencing non-DNX projects\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+In Visual Studio you can add a non-dnx project using the ``dnu wrap`` command. The ``wrap`` command will allow you to add a csproj or assembly into a *project.json* file. You can also use Visual Studio to reference a non-dnx project rather than directly using the ``dnu wrap`` command.\n+\n+Targeting framework specific dependencies\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+You can also add dependencies for a particular framework like this:\n+\n+.. code-block:: json\n+\n+    {\n+      \"frameworks\": {\n+        \"dnxcore50\":{\n+          \"dependencies\":{\n+            \"System.Console\": \"4.0.0.0\"\n+          }\n+        },\n+        \"dnx451\":{}\n+      }\n+    }\n+\n+In the above example, the ``System.Console`` dependency is only needed for the *dnxcore50* target, not *dnx451*. It is often the case that you will have extra dependencies on Core CLR, because there are packages that you need to depend on in Core CLR that are part of .NET 4.5.x.\n+\n+.. note:: While it is technically true that you do not need the ``System.Console`` package on .NET 4.5.1, it also doesn't matter if you add it as a top level dependency. Each of the ``System.*`` packages will work as a top level dependency. So, you don't always have to have this separation. You could add ``System.Console`` as a top level dependency and it will not impact your application when on .NET 4.5.1.\n+\n+Restoring packages\n+------------------\n+\n+The DNX Utility (DNU) wraps the functionality of NuGet to do package restore, which means that it uses the *NuGet.config* file to determine where to download the package. If you want to get packages from somewhere other than NuGet.org, you can edit your NuGet.config.\n+\n+For instructions about how to get development builds of the latest ASP.NET and DNX packages, see `Configuring the feed used by dnu to restore packages <https://github.com/aspnet/Home/wiki/Configuring-the-feed-used-by-dnu-to-restore-packages>`_.\n+\n+Using DNU Restore\n+^^^^^^^^^^^^^^^^^\n+\n+The restore command will look at the dependencies listed in the *project.json* file and download them, adding them to your app's packages directory. It downloads the entire graph of dependencies, even though you only explicitly declare the top level dependency that you directly require. It uses NuGet internally to download packages. \n+\n+The following is an example of using the ``restore`` command from the command window, where the command is executed from the folder containing the application (including the *project.json* file)::\n+\n+\tdnu restore\n+\n+Project lock file\n+^^^^^^^^^^^^^^^^^\n+\n+When doing a package restore, DNU builds up a great deal of information about the dependencies of your application, this information is persisted to disk in the *project.lock.json* file.\n+\n+The DNX reads the lock file when running your application instead of rebuilding all the information that the DNU already generated. To understand the reason for that, imagine what the DNX has to do without the lock file:\n+\n+1. Find each dependency listed in the *project.json* file.\n+2. Open the nuspec of each package and get all of their dependencies.\n+3. Repeat step 2 for each dependency until it has the entire graph.\n+4. Load all the dependencies.\n+\n+By using the lock file, this process is reduced to:\n+\n+1. Read the lock file.\n+2. Load all the dependencies.\n+\n+There is significantly less disk IO involved in the second list.\n+\n+.. Note:: Because it has such a large impact on the cold start performance of DNX applications, the lock file is mandatory to run. If you do not have a lock file, the DNX will fail to load your application.\n+\n+In addition to this, the DNU also does things like determine if the package should be bread-crumbed for servicing and marks it as such in the lock file. See :doc:`Servicing DNX Applications <servicing>`.\n+\n+The lock file ensures that after you run ``dnu restore``, you have a fixed set of packages that you are referencing. When restoring, the DNU generates the lock file which specifies the exact versions that your project will use. This way, versions only get modified when you run ``dnu restore``, not during run-time. Restoring also ends up improving performance at run-time since the DNX no longer has to probe the packages directory to find the right version to use, the DNX just does what the lock file instructs the DNX to do. \n+\n+There is a field in the lock file, ``locked``, which can be set to true either manually or via ``dnu restore —lock``. Setting this field to ``true`` specifies that ``dnu restore`` will just download the versions specified in the lock file and will not do any dependency graph walking or version selection. You can run ``dnu restore --lock`` to generate a locked lock file. Future restores will not change your installed version, unless you use ``dnu restore --unlock`` to remove the lock. You could lock your lock file and check it in on a release branch to ensure that you always get the exact version you expect, but leave it unlocked ()and ignored by source control on development branch(es).","path":"aspnet/dnx/projects.rst","position":233,"original_position":233,"commit_id":"d6d6fdbf88b4bd72f21e92fe8e254b3129b7d0c1","original_commit_id":"d6d6fdbf88b4bd72f21e92fe8e254b3129b7d0c1","user":{"login":"anurse","id":7574,"avatar_url":"https://avatars.githubusercontent.com/u/7574?v=3","gravatar_id":"","url":"https://api.github.com/users/anurse","html_url":"https://github.com/anurse","followers_url":"https://api.github.com/users/anurse/followers","following_url":"https://api.github.com/users/anurse/following{/other_user}","gists_url":"https://api.github.com/users/anurse/gists{/gist_id}","starred_url":"https://api.github.com/users/anurse/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anurse/subscriptions","organizations_url":"https://api.github.com/users/anurse/orgs","repos_url":"https://api.github.com/users/anurse/repos","events_url":"https://api.github.com/users/anurse/events{/privacy}","received_events_url":"https://api.github.com/users/anurse/received_events","type":"User","site_admin":false},"body":"The first \"dnu restore --lock\" command has an em-dash not a double-dash. I hate when that happens :)","created_at":"2015-08-13T21:48:58Z","updated_at":"2015-08-13T21:48:58Z","html_url":"https://github.com/aspnet/Docs/pull/372#discussion_r37029854","pull_request_url":"https://api.github.com/repos/aspnet/Docs/pulls/372","_links":{"self":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/comments/37029854"},"html":{"href":"https://github.com/aspnet/Docs/pull/372#discussion_r37029854"},"pull_request":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/372"}}},"pull_request":{"url":"https://api.github.com/repos/aspnet/Docs/pulls/372","id":41626696,"html_url":"https://github.com/aspnet/Docs/pull/372","diff_url":"https://github.com/aspnet/Docs/pull/372.diff","patch_url":"https://github.com/aspnet/Docs/pull/372.patch","issue_url":"https://api.github.com/repos/aspnet/Docs/issues/372","number":372,"state":"open","locked":false,"title":"Updating topic: Working with DNX Projects","user":{"login":"Erikre","id":7407729,"avatar_url":"https://avatars.githubusercontent.com/u/7407729?v=3","gravatar_id":"","url":"https://api.github.com/users/Erikre","html_url":"https://github.com/Erikre","followers_url":"https://api.github.com/users/Erikre/followers","following_url":"https://api.github.com/users/Erikre/following{/other_user}","gists_url":"https://api.github.com/users/Erikre/gists{/gist_id}","starred_url":"https://api.github.com/users/Erikre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Erikre/subscriptions","organizations_url":"https://api.github.com/users/Erikre/orgs","repos_url":"https://api.github.com/users/Erikre/repos","events_url":"https://api.github.com/users/Erikre/events{/privacy}","received_events_url":"https://api.github.com/users/Erikre/received_events","type":"User","site_admin":false},"body":"This doc must be reviewed and okay'd by glennc before publishing live. It is likely Glenn will have some additional changes. ","created_at":"2015-08-04T22:48:39Z","updated_at":"2015-08-13T21:48:58Z","closed_at":null,"merged_at":null,"merge_commit_sha":"af0d3db9d5c85c320f27c930232cd4580fbe8d54","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/aspnet/Docs/pulls/372/commits","review_comments_url":"https://api.github.com/repos/aspnet/Docs/pulls/372/comments","review_comment_url":"https://api.github.com/repos/aspnet/Docs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/aspnet/Docs/issues/372/comments","statuses_url":"https://api.github.com/repos/aspnet/Docs/statuses/d6d6fdbf88b4bd72f21e92fe8e254b3129b7d0c1","head":{"label":"Erikre:erikre080415-asp5","ref":"erikre080415-asp5","sha":"d6d6fdbf88b4bd72f21e92fe8e254b3129b7d0c1","user":{"login":"Erikre","id":7407729,"avatar_url":"https://avatars.githubusercontent.com/u/7407729?v=3","gravatar_id":"","url":"https://api.github.com/users/Erikre","html_url":"https://github.com/Erikre","followers_url":"https://api.github.com/users/Erikre/followers","following_url":"https://api.github.com/users/Erikre/following{/other_user}","gists_url":"https://api.github.com/users/Erikre/gists{/gist_id}","starred_url":"https://api.github.com/users/Erikre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Erikre/subscriptions","organizations_url":"https://api.github.com/users/Erikre/orgs","repos_url":"https://api.github.com/users/Erikre/repos","events_url":"https://api.github.com/users/Erikre/events{/privacy}","received_events_url":"https://api.github.com/users/Erikre/received_events","type":"User","site_admin":false},"repo":{"id":34420782,"name":"Docs","full_name":"Erikre/Docs","owner":{"login":"Erikre","id":7407729,"avatar_url":"https://avatars.githubusercontent.com/u/7407729?v=3","gravatar_id":"","url":"https://api.github.com/users/Erikre","html_url":"https://github.com/Erikre","followers_url":"https://api.github.com/users/Erikre/followers","following_url":"https://api.github.com/users/Erikre/following{/other_user}","gists_url":"https://api.github.com/users/Erikre/gists{/gist_id}","starred_url":"https://api.github.com/users/Erikre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Erikre/subscriptions","organizations_url":"https://api.github.com/users/Erikre/orgs","repos_url":"https://api.github.com/users/Erikre/repos","events_url":"https://api.github.com/users/Erikre/events{/privacy}","received_events_url":"https://api.github.com/users/Erikre/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Erikre/Docs","description":"Documentation for ASP.NET 5","fork":true,"url":"https://api.github.com/repos/Erikre/Docs","forks_url":"https://api.github.com/repos/Erikre/Docs/forks","keys_url":"https://api.github.com/repos/Erikre/Docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Erikre/Docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Erikre/Docs/teams","hooks_url":"https://api.github.com/repos/Erikre/Docs/hooks","issue_events_url":"https://api.github.com/repos/Erikre/Docs/issues/events{/number}","events_url":"https://api.github.com/repos/Erikre/Docs/events","assignees_url":"https://api.github.com/repos/Erikre/Docs/assignees{/user}","branches_url":"https://api.github.com/repos/Erikre/Docs/branches{/branch}","tags_url":"https://api.github.com/repos/Erikre/Docs/tags","blobs_url":"https://api.github.com/repos/Erikre/Docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Erikre/Docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Erikre/Docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/Erikre/Docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Erikre/Docs/statuses/{sha}","languages_url":"https://api.github.com/repos/Erikre/Docs/languages","stargazers_url":"https://api.github.com/repos/Erikre/Docs/stargazers","contributors_url":"https://api.github.com/repos/Erikre/Docs/contributors","subscribers_url":"https://api.github.com/repos/Erikre/Docs/subscribers","subscription_url":"https://api.github.com/repos/Erikre/Docs/subscription","commits_url":"https://api.github.com/repos/Erikre/Docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/Erikre/Docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/Erikre/Docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/Erikre/Docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/Erikre/Docs/contents/{+path}","compare_url":"https://api.github.com/repos/Erikre/Docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Erikre/Docs/merges","archive_url":"https://api.github.com/repos/Erikre/Docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Erikre/Docs/downloads","issues_url":"https://api.github.com/repos/Erikre/Docs/issues{/number}","pulls_url":"https://api.github.com/repos/Erikre/Docs/pulls{/number}","milestones_url":"https://api.github.com/repos/Erikre/Docs/milestones{/number}","notifications_url":"https://api.github.com/repos/Erikre/Docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Erikre/Docs/labels{/name}","releases_url":"https://api.github.com/repos/Erikre/Docs/releases{/id}","created_at":"2015-04-22T23:01:10Z","updated_at":"2015-04-22T19:57:51Z","pushed_at":"2015-08-04T22:42:56Z","git_url":"git://github.com/Erikre/Docs.git","ssh_url":"git@github.com:Erikre/Docs.git","clone_url":"https://github.com/Erikre/Docs.git","svn_url":"https://github.com/Erikre/Docs","homepage":null,"size":18373,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"aspnet:master","ref":"master","sha":"75eb97fd57980814bde3e4fae0261b9099f9364a","user":{"login":"aspnet","id":6476660,"avatar_url":"https://avatars.githubusercontent.com/u/6476660?v=3","gravatar_id":"","url":"https://api.github.com/users/aspnet","html_url":"https://github.com/aspnet","followers_url":"https://api.github.com/users/aspnet/followers","following_url":"https://api.github.com/users/aspnet/following{/other_user}","gists_url":"https://api.github.com/users/aspnet/gists{/gist_id}","starred_url":"https://api.github.com/users/aspnet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aspnet/subscriptions","organizations_url":"https://api.github.com/users/aspnet/orgs","repos_url":"https://api.github.com/users/aspnet/repos","events_url":"https://api.github.com/users/aspnet/events{/privacy}","received_events_url":"https://api.github.com/users/aspnet/received_events","type":"Organization","site_admin":false},"repo":{"id":28239455,"name":"Docs","full_name":"aspnet/Docs","owner":{"login":"aspnet","id":6476660,"avatar_url":"https://avatars.githubusercontent.com/u/6476660?v=3","gravatar_id":"","url":"https://api.github.com/users/aspnet","html_url":"https://github.com/aspnet","followers_url":"https://api.github.com/users/aspnet/followers","following_url":"https://api.github.com/users/aspnet/following{/other_user}","gists_url":"https://api.github.com/users/aspnet/gists{/gist_id}","starred_url":"https://api.github.com/users/aspnet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aspnet/subscriptions","organizations_url":"https://api.github.com/users/aspnet/orgs","repos_url":"https://api.github.com/users/aspnet/repos","events_url":"https://api.github.com/users/aspnet/events{/privacy}","received_events_url":"https://api.github.com/users/aspnet/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/aspnet/Docs","description":"Documentation for ASP.NET 5","fork":false,"url":"https://api.github.com/repos/aspnet/Docs","forks_url":"https://api.github.com/repos/aspnet/Docs/forks","keys_url":"https://api.github.com/repos/aspnet/Docs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aspnet/Docs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aspnet/Docs/teams","hooks_url":"https://api.github.com/repos/aspnet/Docs/hooks","issue_events_url":"https://api.github.com/repos/aspnet/Docs/issues/events{/number}","events_url":"https://api.github.com/repos/aspnet/Docs/events","assignees_url":"https://api.github.com/repos/aspnet/Docs/assignees{/user}","branches_url":"https://api.github.com/repos/aspnet/Docs/branches{/branch}","tags_url":"https://api.github.com/repos/aspnet/Docs/tags","blobs_url":"https://api.github.com/repos/aspnet/Docs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aspnet/Docs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aspnet/Docs/git/refs{/sha}","trees_url":"https://api.github.com/repos/aspnet/Docs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aspnet/Docs/statuses/{sha}","languages_url":"https://api.github.com/repos/aspnet/Docs/languages","stargazers_url":"https://api.github.com/repos/aspnet/Docs/stargazers","contributors_url":"https://api.github.com/repos/aspnet/Docs/contributors","subscribers_url":"https://api.github.com/repos/aspnet/Docs/subscribers","subscription_url":"https://api.github.com/repos/aspnet/Docs/subscription","commits_url":"https://api.github.com/repos/aspnet/Docs/commits{/sha}","git_commits_url":"https://api.github.com/repos/aspnet/Docs/git/commits{/sha}","comments_url":"https://api.github.com/repos/aspnet/Docs/comments{/number}","issue_comment_url":"https://api.github.com/repos/aspnet/Docs/issues/comments{/number}","contents_url":"https://api.github.com/repos/aspnet/Docs/contents/{+path}","compare_url":"https://api.github.com/repos/aspnet/Docs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aspnet/Docs/merges","archive_url":"https://api.github.com/repos/aspnet/Docs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aspnet/Docs/downloads","issues_url":"https://api.github.com/repos/aspnet/Docs/issues{/number}","pulls_url":"https://api.github.com/repos/aspnet/Docs/pulls{/number}","milestones_url":"https://api.github.com/repos/aspnet/Docs/milestones{/number}","notifications_url":"https://api.github.com/repos/aspnet/Docs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aspnet/Docs/labels{/name}","releases_url":"https://api.github.com/repos/aspnet/Docs/releases{/id}","created_at":"2014-12-19T17:38:02Z","updated_at":"2015-08-12T00:51:39Z","pushed_at":"2015-08-13T19:47:47Z","git_url":"git://github.com/aspnet/Docs.git","ssh_url":"git@github.com:aspnet/Docs.git","clone_url":"https://github.com/aspnet/Docs.git","svn_url":"https://github.com/aspnet/Docs","homepage":null,"size":24562,"stargazers_count":149,"watchers_count":149,"language":"C#","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":144,"mirror_url":null,"open_issues_count":160,"forks":144,"open_issues":160,"watchers":149,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/372"},"html":{"href":"https://github.com/aspnet/Docs/pull/372"},"issue":{"href":"https://api.github.com/repos/aspnet/Docs/issues/372"},"comments":{"href":"https://api.github.com/repos/aspnet/Docs/issues/372/comments"},"review_comments":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/372/comments"},"review_comment":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/aspnet/Docs/pulls/372/commits"},"statuses":{"href":"https://api.github.com/repos/aspnet/Docs/statuses/d6d6fdbf88b4bd72f21e92fe8e254b3129b7d0c1"}}}}