{"action":"closed","number":1289,"pull_request":{"url":"https://api.github.com/repos/scriptcs/scriptcs/pulls/1289","id":206951140,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA2OTUxMTQw","html_url":"https://github.com/scriptcs/scriptcs/pull/1289","diff_url":"https://github.com/scriptcs/scriptcs/pull/1289.diff","patch_url":"https://github.com/scriptcs/scriptcs/pull/1289.patch","issue_url":"https://api.github.com/repos/scriptcs/scriptcs/issues/1289","number":1289,"state":"closed","locked":false,"title":"Replaced PowerArgs with McMaster.Extensions.CommandLineUtils","user":{"login":"filipw","id":1710369,"node_id":"MDQ6VXNlcjE3MTAzNjk=","avatar_url":"https://avatars0.githubusercontent.com/u/1710369?v=4","gravatar_id":"","url":"https://api.github.com/users/filipw","html_url":"https://github.com/filipw","followers_url":"https://api.github.com/users/filipw/followers","following_url":"https://api.github.com/users/filipw/following{/other_user}","gists_url":"https://api.github.com/users/filipw/gists{/gist_id}","starred_url":"https://api.github.com/users/filipw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/filipw/subscriptions","organizations_url":"https://api.github.com/users/filipw/orgs","repos_url":"https://api.github.com/users/filipw/repos","events_url":"https://api.github.com/users/filipw/events{/privacy}","received_events_url":"https://api.github.com/users/filipw/received_events","type":"User","site_admin":false},"body":"This causes some breaking changes on the exe surface, but I think there is no other way to tackle this. It is really needed because PowerArgs doesn't seem to work with Mono so we have some really critical issues there.\r\n\r\nIt also allows us to add some sanity to the command line parameters, which I think is quite welcome. What we had before as the arg surface was never really designed for usability, it was just something that we got automatically by plugging in PowerArgs. Regardless, I tried to keep breaking changes to the bare minimum.\r\n\r\nHere is the overview. The main difference is that the \"long names\" are now `--` instead of `-` (which, if you ask me, is much better anyway). The shortnames are all the same. Another difference is that we now have a `scriptcs install` command to deal with installation tasks.\r\n\r\n| operation        | old           | new  |\r\n| ------------- |-------------| -----|\r\n| run script    | `scriptcs -script <name>` | the same  |\r\n| run script    | `scriptcs -scriptname <name>` | `scriptcs --scriptname <name>` |\r\n| run script    | `scriptcs <name>` | the same |\r\n| run repl      | `scriptcs -r`      |  the same  |\r\n| run repl      | `scriptcs -repl`      |  `scriptcs --repl` |\r\n| run repl      | `scriptcs`      |  the same |\r\n| evaluate code      | `scriptcs -e <code>`      |  the same  |\r\n| evaluate code      | `scriptcs -eval <code>`      |  `scriptcs --eval <code>` |\r\n| show help     | `scriptcs -?`      |  the same  |\r\n| show help     | `scriptcs -help`      |  `scriptcs --help` |\r\n| show version     | `scriptcs -v`      |  the same  |\r\n| show version     | `scriptcs -version`      |  `scriptcs --version` |\r\n| run a script in debug mode     | `scriptcs <name> -d`      |  the same |\r\n| run a script in debug mode     | `scriptcs <name> -debug`      |  `scriptcs <name> --debug`  |\r\n| run a script from cache     | `scriptcs <name> -c`      |  the same |\r\n| run a script from cache     | `scriptcs <name> -cache`      |  `scriptcs <name> --cache`  |\r\n| run a script with certain log level     | `scriptcs <name> -log <level>`      |  the same |\r\n| run a script with certain log level     | `scriptcs <name> -loglevel <level>`      |  `scriptcs <name> --loglevel <level>`  |\r\n| run a script with watching     | `scriptcs <name> -w`      |  the same |\r\n| run a script with watching     | `scriptcs <name> -watch`      |  `scriptcs <name> --watch`  |\r\n| run a script with modules     | `scriptcs <name> -m <module1>,<module2>`      |  the same |\r\n| run a script with modules     | `scriptcs <name> -modules <module1>,<module2>`      |  `scriptcs <name> --modules <module1>,<module2>`  |\r\n| run a script with custom config     | `scriptcs <name> -co <path>`      |  the same |\r\n| run a script with custom config     | `scriptcs <name> -config <path>`      |  `scriptcs <name> --config <path>`  |\r\n| run a script with output file     | `scriptcs <name> -o <path>`      |  the same |\r\n| run a script with output file     | `scriptcs <name> -output <path>`      |  `scriptcs <name> --output <path>`  |\r\n| install a package    | `scriptcs -install <package name>`      |  `scriptcs install <package name>`  |\r\n| install a package    | `scriptcs -i <package name>`      |  `scriptcs install <package name>`  |\r\n| install a package with prerelease version   | `scriptcs -install <package name> -pre`      |  `scriptcs install <package name> -pre`  |\r\n| install a package with prerelease version   | `scriptcs -i <package name> -pre`      |  `scriptcs install <package name> -pre`  |\r\n| install a package with prerelease version   | `scriptcs -install <package name> -allowprerelease`      |  `scriptcs install <package name> --allowprerelease`  |\r\n| install a package with prerelease version   | `scriptcs -i <package name> -allowprerelease`      |  `scriptcs install <package name> --allowprerelease`  |\r\n| install a package to a global location   | `scriptcs -install <package name> -g`      |  `scriptcs install <package name> -g`  |\r\n| install a package to a global location   | `scriptcs -i <package name> -g`      |  `scriptcs install <package name> -g`  |\r\n| install a package to a global location   | `scriptcs -install <package name> -global`      |  `scriptcs install <package name> --global`  |\r\n| install a package to a global location   | `scriptcs -i <package name> -global`      |  `scriptcs install <package name> --global`  |\r\n| create a packages.config based on packages folder | `scriptcs -save`      |  `scriptcs install --save`  |\r\n| create a packages.config based on packages folder   | `scriptcs -s`      |  `scriptcs install -s`  |\r\n| clean installed packages | `scriptcs -clean`      |  `scriptcs install --clean`  |\r\n| clean installed packages | `scriptcs -cl`      |  `scriptcs install -cl`  |\r\n\r\nFixes https://github.com/scriptcs/scriptcs/issues/1188\r\nFixes https://github.com/scriptcs/scriptcs/issues/840","created_at":"2018-08-08T09:49:47Z","updated_at":"2018-08-15T11:54:44Z","closed_at":"2018-08-15T11:54:44Z","merged_at":"2018-08-15T11:54:44Z","merge_commit_sha":"5599cb5172adefb18d88fb41efd146563cf2810a","assignee":null,"assignees":[],"requested_reviewers":[{"login":"jrusbatch","id":423549,"node_id":"MDQ6VXNlcjQyMzU0OQ==","avatar_url":"https://avatars0.githubusercontent.com/u/423549?v=4","gravatar_id":"","url":"https://api.github.com/users/jrusbatch","html_url":"https://github.com/jrusbatch","followers_url":"https://api.github.com/users/jrusbatch/followers","following_url":"https://api.github.com/users/jrusbatch/following{/other_user}","gists_url":"https://api.github.com/users/jrusbatch/gists{/gist_id}","starred_url":"https://api.github.com/users/jrusbatch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jrusbatch/subscriptions","organizations_url":"https://api.github.com/users/jrusbatch/orgs","repos_url":"https://api.github.com/users/jrusbatch/repos","events_url":"https://api.github.com/users/jrusbatch/events{/privacy}","received_events_url":"https://api.github.com/users/jrusbatch/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/scriptcs/scriptcs/pulls/1289/commits","review_comments_url":"https://api.github.com/repos/scriptcs/scriptcs/pulls/1289/comments","review_comment_url":"https://api.github.com/repos/scriptcs/scriptcs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/scriptcs/scriptcs/issues/1289/comments","statuses_url":"https://api.github.com/repos/scriptcs/scriptcs/statuses/fab2d29fa2bda17ac3e9f6557888e99b470990f7","head":{"label":"scriptcs:features/new-parsing-lib","ref":"features/new-parsing-lib","sha":"fab2d29fa2bda17ac3e9f6557888e99b470990f7","user":{"login":"scriptcs","id":3758046,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM3NTgwNDY=","avatar_url":"https://avatars3.githubusercontent.com/u/3758046?v=4","gravatar_id":"","url":"https://api.github.com/users/scriptcs","html_url":"https://github.com/scriptcs","followers_url":"https://api.github.com/users/scriptcs/followers","following_url":"https://api.github.com/users/scriptcs/following{/other_user}","gists_url":"https://api.github.com/users/scriptcs/gists{/gist_id}","starred_url":"https://api.github.com/users/scriptcs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scriptcs/subscriptions","organizations_url":"https://api.github.com/users/scriptcs/orgs","repos_url":"https://api.github.com/users/scriptcs/repos","events_url":"https://api.github.com/users/scriptcs/events{/privacy}","received_events_url":"https://api.github.com/users/scriptcs/received_events","type":"Organization","site_admin":false},"repo":{"id":8473240,"node_id":"MDEwOlJlcG9zaXRvcnk4NDczMjQw","name":"scriptcs","full_name":"scriptcs/scriptcs","owner":{"login":"scriptcs","id":3758046,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM3NTgwNDY=","avatar_url":"https://avatars3.githubusercontent.com/u/3758046?v=4","gravatar_id":"","url":"https://api.github.com/users/scriptcs","html_url":"https://github.com/scriptcs","followers_url":"https://api.github.com/users/scriptcs/followers","following_url":"https://api.github.com/users/scriptcs/following{/other_user}","gists_url":"https://api.github.com/users/scriptcs/gists{/gist_id}","starred_url":"https://api.github.com/users/scriptcs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scriptcs/subscriptions","organizations_url":"https://api.github.com/users/scriptcs/orgs","repos_url":"https://api.github.com/users/scriptcs/repos","events_url":"https://api.github.com/users/scriptcs/events{/privacy}","received_events_url":"https://api.github.com/users/scriptcs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/scriptcs/scriptcs","description":"Write C# apps with a text editor, nuget and the power of Roslyn!","fork":false,"url":"https://api.github.com/repos/scriptcs/scriptcs","forks_url":"https://api.github.com/repos/scriptcs/scriptcs/forks","keys_url":"https://api.github.com/repos/scriptcs/scriptcs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/scriptcs/scriptcs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/scriptcs/scriptcs/teams","hooks_url":"https://api.github.com/repos/scriptcs/scriptcs/hooks","issue_events_url":"https://api.github.com/repos/scriptcs/scriptcs/issues/events{/number}","events_url":"https://api.github.com/repos/scriptcs/scriptcs/events","assignees_url":"https://api.github.com/repos/scriptcs/scriptcs/assignees{/user}","branches_url":"https://api.github.com/repos/scriptcs/scriptcs/branches{/branch}","tags_url":"https://api.github.com/repos/scriptcs/scriptcs/tags","blobs_url":"https://api.github.com/repos/scriptcs/scriptcs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/scriptcs/scriptcs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/scriptcs/scriptcs/git/refs{/sha}","trees_url":"https://api.github.com/repos/scriptcs/scriptcs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/scriptcs/scriptcs/statuses/{sha}","languages_url":"https://api.github.com/repos/scriptcs/scriptcs/languages","stargazers_url":"https://api.github.com/repos/scriptcs/scriptcs/stargazers","contributors_url":"https://api.github.com/repos/scriptcs/scriptcs/contributors","subscribers_url":"https://api.github.com/repos/scriptcs/scriptcs/subscribers","subscription_url":"https://api.github.com/repos/scriptcs/scriptcs/subscription","commits_url":"https://api.github.com/repos/scriptcs/scriptcs/commits{/sha}","git_commits_url":"https://api.github.com/repos/scriptcs/scriptcs/git/commits{/sha}","comments_url":"https://api.github.com/repos/scriptcs/scriptcs/comments{/number}","issue_comment_url":"https://api.github.com/repos/scriptcs/scriptcs/issues/comments{/number}","contents_url":"https://api.github.com/repos/scriptcs/scriptcs/contents/{+path}","compare_url":"https://api.github.com/repos/scriptcs/scriptcs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/scriptcs/scriptcs/merges","archive_url":"https://api.github.com/repos/scriptcs/scriptcs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/scriptcs/scriptcs/downloads","issues_url":"https://api.github.com/repos/scriptcs/scriptcs/issues{/number}","pulls_url":"https://api.github.com/repos/scriptcs/scriptcs/pulls{/number}","milestones_url":"https://api.github.com/repos/scriptcs/scriptcs/milestones{/number}","notifications_url":"https://api.github.com/repos/scriptcs/scriptcs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/scriptcs/scriptcs/labels{/name}","releases_url":"https://api.github.com/repos/scriptcs/scriptcs/releases{/id}","deployments_url":"https://api.github.com/repos/scriptcs/scriptcs/deployments","created_at":"2013-02-28T06:27:22Z","updated_at":"2018-08-14T10:11:23Z","pushed_at":"2018-08-15T11:54:44Z","git_url":"git://github.com/scriptcs/scriptcs.git","ssh_url":"git@github.com:scriptcs/scriptcs.git","clone_url":"https://github.com/scriptcs/scriptcs.git","svn_url":"https://github.com/scriptcs/scriptcs","homepage":"http://scriptcs.net","size":25006,"stargazers_count":1999,"watchers_count":1999,"language":"C#","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":354,"mirror_url":null,"archived":false,"open_issues_count":151,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":354,"open_issues":151,"watchers":1999,"default_branch":"dev"}},"base":{"label":"scriptcs:dev","ref":"dev","sha":"e533a9d146ab021deed5c256baca3c2e4de519e4","user":{"login":"scriptcs","id":3758046,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM3NTgwNDY=","avatar_url":"https://avatars3.githubusercontent.com/u/3758046?v=4","gravatar_id":"","url":"https://api.github.com/users/scriptcs","html_url":"https://github.com/scriptcs","followers_url":"https://api.github.com/users/scriptcs/followers","following_url":"https://api.github.com/users/scriptcs/following{/other_user}","gists_url":"https://api.github.com/users/scriptcs/gists{/gist_id}","starred_url":"https://api.github.com/users/scriptcs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scriptcs/subscriptions","organizations_url":"https://api.github.com/users/scriptcs/orgs","repos_url":"https://api.github.com/users/scriptcs/repos","events_url":"https://api.github.com/users/scriptcs/events{/privacy}","received_events_url":"https://api.github.com/users/scriptcs/received_events","type":"Organization","site_admin":false},"repo":{"id":8473240,"node_id":"MDEwOlJlcG9zaXRvcnk4NDczMjQw","name":"scriptcs","full_name":"scriptcs/scriptcs","owner":{"login":"scriptcs","id":3758046,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM3NTgwNDY=","avatar_url":"https://avatars3.githubusercontent.com/u/3758046?v=4","gravatar_id":"","url":"https://api.github.com/users/scriptcs","html_url":"https://github.com/scriptcs","followers_url":"https://api.github.com/users/scriptcs/followers","following_url":"https://api.github.com/users/scriptcs/following{/other_user}","gists_url":"https://api.github.com/users/scriptcs/gists{/gist_id}","starred_url":"https://api.github.com/users/scriptcs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/scriptcs/subscriptions","organizations_url":"https://api.github.com/users/scriptcs/orgs","repos_url":"https://api.github.com/users/scriptcs/repos","events_url":"https://api.github.com/users/scriptcs/events{/privacy}","received_events_url":"https://api.github.com/users/scriptcs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/scriptcs/scriptcs","description":"Write C# apps with a text editor, nuget and the power of Roslyn!","fork":false,"url":"https://api.github.com/repos/scriptcs/scriptcs","forks_url":"https://api.github.com/repos/scriptcs/scriptcs/forks","keys_url":"https://api.github.com/repos/scriptcs/scriptcs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/scriptcs/scriptcs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/scriptcs/scriptcs/teams","hooks_url":"https://api.github.com/repos/scriptcs/scriptcs/hooks","issue_events_url":"https://api.github.com/repos/scriptcs/scriptcs/issues/events{/number}","events_url":"https://api.github.com/repos/scriptcs/scriptcs/events","assignees_url":"https://api.github.com/repos/scriptcs/scriptcs/assignees{/user}","branches_url":"https://api.github.com/repos/scriptcs/scriptcs/branches{/branch}","tags_url":"https://api.github.com/repos/scriptcs/scriptcs/tags","blobs_url":"https://api.github.com/repos/scriptcs/scriptcs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/scriptcs/scriptcs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/scriptcs/scriptcs/git/refs{/sha}","trees_url":"https://api.github.com/repos/scriptcs/scriptcs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/scriptcs/scriptcs/statuses/{sha}","languages_url":"https://api.github.com/repos/scriptcs/scriptcs/languages","stargazers_url":"https://api.github.com/repos/scriptcs/scriptcs/stargazers","contributors_url":"https://api.github.com/repos/scriptcs/scriptcs/contributors","subscribers_url":"https://api.github.com/repos/scriptcs/scriptcs/subscribers","subscription_url":"https://api.github.com/repos/scriptcs/scriptcs/subscription","commits_url":"https://api.github.com/repos/scriptcs/scriptcs/commits{/sha}","git_commits_url":"https://api.github.com/repos/scriptcs/scriptcs/git/commits{/sha}","comments_url":"https://api.github.com/repos/scriptcs/scriptcs/comments{/number}","issue_comment_url":"https://api.github.com/repos/scriptcs/scriptcs/issues/comments{/number}","contents_url":"https://api.github.com/repos/scriptcs/scriptcs/contents/{+path}","compare_url":"https://api.github.com/repos/scriptcs/scriptcs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/scriptcs/scriptcs/merges","archive_url":"https://api.github.com/repos/scriptcs/scriptcs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/scriptcs/scriptcs/downloads","issues_url":"https://api.github.com/repos/scriptcs/scriptcs/issues{/number}","pulls_url":"https://api.github.com/repos/scriptcs/scriptcs/pulls{/number}","milestones_url":"https://api.github.com/repos/scriptcs/scriptcs/milestones{/number}","notifications_url":"https://api.github.com/repos/scriptcs/scriptcs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/scriptcs/scriptcs/labels{/name}","releases_url":"https://api.github.com/repos/scriptcs/scriptcs/releases{/id}","deployments_url":"https://api.github.com/repos/scriptcs/scriptcs/deployments","created_at":"2013-02-28T06:27:22Z","updated_at":"2018-08-14T10:11:23Z","pushed_at":"2018-08-15T11:54:44Z","git_url":"git://github.com/scriptcs/scriptcs.git","ssh_url":"git@github.com:scriptcs/scriptcs.git","clone_url":"https://github.com/scriptcs/scriptcs.git","svn_url":"https://github.com/scriptcs/scriptcs","homepage":"http://scriptcs.net","size":25006,"stargazers_count":1999,"watchers_count":1999,"language":"C#","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":354,"mirror_url":null,"archived":false,"open_issues_count":151,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":354,"open_issues":151,"watchers":1999,"default_branch":"dev"}},"_links":{"self":{"href":"https://api.github.com/repos/scriptcs/scriptcs/pulls/1289"},"html":{"href":"https://github.com/scriptcs/scriptcs/pull/1289"},"issue":{"href":"https://api.github.com/repos/scriptcs/scriptcs/issues/1289"},"comments":{"href":"https://api.github.com/repos/scriptcs/scriptcs/issues/1289/comments"},"review_comments":{"href":"https://api.github.com/repos/scriptcs/scriptcs/pulls/1289/comments"},"review_comment":{"href":"https://api.github.com/repos/scriptcs/scriptcs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/scriptcs/scriptcs/pulls/1289/commits"},"statuses":{"href":"https://api.github.com/repos/scriptcs/scriptcs/statuses/fab2d29fa2bda17ac3e9f6557888e99b470990f7"}},"author_association":"MEMBER","merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"khellang","id":582487,"node_id":"MDQ6VXNlcjU4MjQ4Nw==","avatar_url":"https://avatars0.githubusercontent.com/u/582487?v=4","gravatar_id":"","url":"https://api.github.com/users/khellang","html_url":"https://github.com/khellang","followers_url":"https://api.github.com/users/khellang/followers","following_url":"https://api.github.com/users/khellang/following{/other_user}","gists_url":"https://api.github.com/users/khellang/gists{/gist_id}","starred_url":"https://api.github.com/users/khellang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/khellang/subscriptions","organizations_url":"https://api.github.com/users/khellang/orgs","repos_url":"https://api.github.com/users/khellang/repos","events_url":"https://api.github.com/users/khellang/events{/privacy}","received_events_url":"https://api.github.com/users/khellang/received_events","type":"User","site_admin":false},"comments":4,"review_comments":2,"maintainer_can_modify":false,"commits":4,"additions":101,"deletions":205,"changed_files":12}}
{"actor":{"display_login":"khellang"}}