{"action":"created","issue":{"url":"https://api.github.com/repos/aspnet/dnx/issues/1816","labels_url":"https://api.github.com/repos/aspnet/dnx/issues/1816/labels{/name}","comments_url":"https://api.github.com/repos/aspnet/dnx/issues/1816/comments","events_url":"https://api.github.com/repos/aspnet/dnx/issues/1816/events","html_url":"https://github.com/aspnet/dnx/issues/1816","id":74114040,"number":1816,"title":"project.json: commented lines break \"compile\" arrays","user":{"login":"sayedihashimi","id":1283154,"avatar_url":"https://avatars.githubusercontent.com/u/1283154?v=3","gravatar_id":"","url":"https://api.github.com/users/sayedihashimi","html_url":"https://github.com/sayedihashimi","followers_url":"https://api.github.com/users/sayedihashimi/followers","following_url":"https://api.github.com/users/sayedihashimi/following{/other_user}","gists_url":"https://api.github.com/users/sayedihashimi/gists{/gist_id}","starred_url":"https://api.github.com/users/sayedihashimi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sayedihashimi/subscriptions","organizations_url":"https://api.github.com/users/sayedihashimi/orgs","repos_url":"https://api.github.com/users/sayedihashimi/repos","events_url":"https://api.github.com/users/sayedihashimi/events{/privacy}","received_events_url":"https://api.github.com/users/sayedihashimi/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":15,"created_at":"2015-05-07T20:20:45Z","updated_at":"2015-09-04T09:23:23Z","closed_at":"2015-05-25T20:10:11Z","body":"Moving from https://github.com/aspnet/Tooling/issues/47\r\n\r\nFrom @mgravell\r\n\r\nThis is fine elsewhere, for example:\r\n\r\n    \"commands\": {\r\n        //\"dummy\": \"nothing\",\r\n        \"test\": \"xunit.runner.dnx\"\r\n    },\r\n\r\nWhich is then validly ignored:\r\n\r\n    D:\\Dev\\protobuf-net\\Protobuf.Tests>dnx . dummy\r\n    System.InvalidOperationException: Unable to load application or execute command\r\n    'dummy'. Available commands: test.\r\n\r\nHowever! It breaks the IDE when used in `\"compile:\"`:\r\n\r\n    \"compile\": [\r\n        //\"../Examples/Diction*.cs\",\r\n        \"../Examples/Program.cs\"\r\n    ],\r\n\r\nThis causes 3 errors:\r\n\r\n- Illegal characters in path.\r\n- NuGet Package Restore failed for one or more packages. See details in the Output window.\r\n- The design time host build failed with the following error: Illegal characters in path.\r\n\r\nAnd the \"References\" node in the solution explorer breaks (yellow hazard sign)\r\n\r\nNote: this also breaks `dnx` when used at the command line, for example:\r\n\r\n    D:\\Dev\\protobuf-net\\Protobuf.Tests>dnx . test\r\n    System.ArgumentException: Illegal characters in path.\r\n       at System.IO.Path.CheckInvalidPathChars(String path, Boolean checkAdditional)\r\n       at System.IO.Path.IsPathRooted(String path)\r\n       at Microsoft.Framework.Runtime.PatternsCollectionHelper.CreateCollection(Stri\r\n    ng projectDirectory, String[] patternsStrings)"},"comment":{"url":"https://api.github.com/repos/aspnet/dnx/issues/comments/137686933","html_url":"https://github.com/aspnet/dnx/issues/1816#issuecomment-137686933","issue_url":"https://api.github.com/repos/aspnet/dnx/issues/1816","id":137686933,"user":{"login":"ashic","id":565991,"avatar_url":"https://avatars.githubusercontent.com/u/565991?v=3","gravatar_id":"","url":"https://api.github.com/users/ashic","html_url":"https://github.com/ashic","followers_url":"https://api.github.com/users/ashic/followers","following_url":"https://api.github.com/users/ashic/following{/other_user}","gists_url":"https://api.github.com/users/ashic/gists{/gist_id}","starred_url":"https://api.github.com/users/ashic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ashic/subscriptions","organizations_url":"https://api.github.com/users/ashic/orgs","repos_url":"https://api.github.com/users/ashic/repos","events_url":"https://api.github.com/users/ashic/events{/privacy}","received_events_url":"https://api.github.com/users/ashic/received_events","type":"User","site_admin":false},"created_at":"2015-09-04T09:23:23Z","updated_at":"2015-09-04T09:23:23Z","body":"It's probably way too late now, but any reason to focus on json instead of js? There's precedence for using a language to specify a project - sbt does this successfully. This allows for comments, variables, custom stuff and leads to a lot of optional flexibility. Specifying the config as project.js could result in something like:\r\n\r\n```\r\nproject = {\r\n   //existing content goes here\r\n}\r\n```\r\n\r\nThoughts?"}}