{"action":"created","comment":{"url":"https://api.github.com/repos/geany/geany/pulls/comments/103442233","pull_request_review_id":24226674,"id":103442233,"diff_hunk":"@@ -1788,6 +1788,9 @@ void utils_tidy_path(gchar *filename)\n \tconst gchar *needle;\n \tgboolean preserve_double_backslash = FALSE;\n \n+\tif (utils_is_uri(filename))\n+\t\treturn;","path":"src/utils.c","position":301,"original_position":5,"commit_id":"2ff5a3590fb2dd2835a8faf4d2ac5131eb8956fa","original_commit_id":"b4cf42397c77249d18d5972e981e9e873ee94175","user":{"login":"elextr","id":811085,"avatar_url":"https://avatars.githubusercontent.com/u/811085?v=3","gravatar_id":"","url":"https://api.github.com/users/elextr","html_url":"https://github.com/elextr","followers_url":"https://api.github.com/users/elextr/followers","following_url":"https://api.github.com/users/elextr/following{/other_user}","gists_url":"https://api.github.com/users/elextr/gists{/gist_id}","starred_url":"https://api.github.com/users/elextr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/elextr/subscriptions","organizations_url":"https://api.github.com/users/elextr/orgs","repos_url":"https://api.github.com/users/elextr/repos","events_url":"https://api.github.com/users/elextr/events{/privacy}","received_events_url":"https://api.github.com/users/elextr/received_events","type":"User","site_admin":false},"body":"@techee did you notice the release date THIS MONTH, of course nothing omits it at the moment, its only just been allowed.","created_at":"2017-02-28T12:27:03Z","updated_at":"2017-02-28T12:27:03Z","html_url":"https://github.com/geany/geany/pull/963#discussion_r103442233","pull_request_url":"https://api.github.com/repos/geany/geany/pulls/963","_links":{"self":{"href":"https://api.github.com/repos/geany/geany/pulls/comments/103442233"},"html":{"href":"https://github.com/geany/geany/pull/963#discussion_r103442233"},"pull_request":{"href":"https://api.github.com/repos/geany/geany/pulls/963"}}},"pull_request":{"url":"https://api.github.com/repos/geany/geany/pulls/963","id":62686678,"html_url":"https://github.com/geany/geany/pull/963","diff_url":"https://github.com/geany/geany/pull/963.diff","patch_url":"https://github.com/geany/geany/pull/963.patch","issue_url":"https://api.github.com/repos/geany/geany/issues/963","number":963,"state":"open","locked":false,"title":"Towards gvfs-fuse independence","user":{"login":"techee","id":713965,"avatar_url":"https://avatars.githubusercontent.com/u/713965?v=3","gravatar_id":"","url":"https://api.github.com/users/techee","html_url":"https://github.com/techee","followers_url":"https://api.github.com/users/techee/followers","following_url":"https://api.github.com/users/techee/following{/other_user}","gists_url":"https://api.github.com/users/techee/gists{/gist_id}","starred_url":"https://api.github.com/users/techee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/techee/subscriptions","organizations_url":"https://api.github.com/users/techee/orgs","repos_url":"https://api.github.com/users/techee/repos","events_url":"https://api.github.com/users/techee/events{/privacy}","received_events_url":"https://api.github.com/users/techee/received_events","type":"User","site_admin":false},"body":"Based on the discussion here https://github.com/geany/geany/issues/921 I tried what is still missing to support opening remote files without gvfs-fuse. As I suspected, there wasn't much missing - mostly some g_file_test() calls which didn't work remotely, file name validation which didn't allow URIs, getting filenames instead of URIs from file dialogs etc.\n\nWhat works after these patches:\n- opening links like https://developer.gnome.org/gio/stable/GFile.html both from command-line and file open dialog\n- browsing remote locations in file browser\n- opening/saving ftp/ssh/etc. locations when mounted - I guess they need to be mounted to work - even gedit needs them mounted (it would probably be possible to use g_file_mount_enclosing_volume () to pop up dialog to make user mount them, not sure if we want it or not)\n- opening/saving remote projects\n\nWhat doesn't work:\n- TM parsing - the only reason here's the g_stat() in tm_source_file_init(), after commenting it out it works but TM at the moment doesn't know about Geany's file operation method used so it's not possible to implement this properly (I plan moving the TM - without ctags - into src making it effectively part of Geany after which it will have access to Geany's definitions)\n- File->Properties - I simply have been lazy to implement it\n- of course things like find in files, build commands etc. which we cannot run remotely\n","created_at":"2016-03-13T22:56:26Z","updated_at":"2017-02-28T12:27:03Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f07d12b2b9636e24e9ac6671fe9342613e4c2a03","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/geany/geany/pulls/963/commits","review_comments_url":"https://api.github.com/repos/geany/geany/pulls/963/comments","review_comment_url":"https://api.github.com/repos/geany/geany/pulls/comments{/number}","comments_url":"https://api.github.com/repos/geany/geany/issues/963/comments","statuses_url":"https://api.github.com/repos/geany/geany/statuses/2ff5a3590fb2dd2835a8faf4d2ac5131eb8956fa","head":{"label":"techee:gio","ref":"gio","sha":"2ff5a3590fb2dd2835a8faf4d2ac5131eb8956fa","user":{"login":"techee","id":713965,"avatar_url":"https://avatars.githubusercontent.com/u/713965?v=3","gravatar_id":"","url":"https://api.github.com/users/techee","html_url":"https://github.com/techee","followers_url":"https://api.github.com/users/techee/followers","following_url":"https://api.github.com/users/techee/following{/other_user}","gists_url":"https://api.github.com/users/techee/gists{/gist_id}","starred_url":"https://api.github.com/users/techee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/techee/subscriptions","organizations_url":"https://api.github.com/users/techee/orgs","repos_url":"https://api.github.com/users/techee/repos","events_url":"https://api.github.com/users/techee/events{/privacy}","received_events_url":"https://api.github.com/users/techee/received_events","type":"User","site_admin":false},"repo":{"id":24825705,"name":"geany","full_name":"techee/geany","owner":{"login":"techee","id":713965,"avatar_url":"https://avatars.githubusercontent.com/u/713965?v=3","gravatar_id":"","url":"https://api.github.com/users/techee","html_url":"https://github.com/techee","followers_url":"https://api.github.com/users/techee/followers","following_url":"https://api.github.com/users/techee/following{/other_user}","gists_url":"https://api.github.com/users/techee/gists{/gist_id}","starred_url":"https://api.github.com/users/techee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/techee/subscriptions","organizations_url":"https://api.github.com/users/techee/orgs","repos_url":"https://api.github.com/users/techee/repos","events_url":"https://api.github.com/users/techee/events{/privacy}","received_events_url":"https://api.github.com/users/techee/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/techee/geany","description":"A fast and lightweight IDE","fork":true,"url":"https://api.github.com/repos/techee/geany","forks_url":"https://api.github.com/repos/techee/geany/forks","keys_url":"https://api.github.com/repos/techee/geany/keys{/key_id}","collaborators_url":"https://api.github.com/repos/techee/geany/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/techee/geany/teams","hooks_url":"https://api.github.com/repos/techee/geany/hooks","issue_events_url":"https://api.github.com/repos/techee/geany/issues/events{/number}","events_url":"https://api.github.com/repos/techee/geany/events","assignees_url":"https://api.github.com/repos/techee/geany/assignees{/user}","branches_url":"https://api.github.com/repos/techee/geany/branches{/branch}","tags_url":"https://api.github.com/repos/techee/geany/tags","blobs_url":"https://api.github.com/repos/techee/geany/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/techee/geany/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/techee/geany/git/refs{/sha}","trees_url":"https://api.github.com/repos/techee/geany/git/trees{/sha}","statuses_url":"https://api.github.com/repos/techee/geany/statuses/{sha}","languages_url":"https://api.github.com/repos/techee/geany/languages","stargazers_url":"https://api.github.com/repos/techee/geany/stargazers","contributors_url":"https://api.github.com/repos/techee/geany/contributors","subscribers_url":"https://api.github.com/repos/techee/geany/subscribers","subscription_url":"https://api.github.com/repos/techee/geany/subscription","commits_url":"https://api.github.com/repos/techee/geany/commits{/sha}","git_commits_url":"https://api.github.com/repos/techee/geany/git/commits{/sha}","comments_url":"https://api.github.com/repos/techee/geany/comments{/number}","issue_comment_url":"https://api.github.com/repos/techee/geany/issues/comments{/number}","contents_url":"https://api.github.com/repos/techee/geany/contents/{+path}","compare_url":"https://api.github.com/repos/techee/geany/compare/{base}...{head}","merges_url":"https://api.github.com/repos/techee/geany/merges","archive_url":"https://api.github.com/repos/techee/geany/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/techee/geany/downloads","issues_url":"https://api.github.com/repos/techee/geany/issues{/number}","pulls_url":"https://api.github.com/repos/techee/geany/pulls{/number}","milestones_url":"https://api.github.com/repos/techee/geany/milestones{/number}","notifications_url":"https://api.github.com/repos/techee/geany/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/techee/geany/labels{/name}","releases_url":"https://api.github.com/repos/techee/geany/releases{/id}","deployments_url":"https://api.github.com/repos/techee/geany/deployments","created_at":"2014-10-05T20:38:07Z","updated_at":"2015-03-11T21:37:59Z","pushed_at":"2017-02-27T13:54:19Z","git_url":"git://github.com/techee/geany.git","ssh_url":"git@github.com:techee/geany.git","clone_url":"https://github.com/techee/geany.git","svn_url":"https://github.com/techee/geany","homepage":"http://www.geany.org","size":52485,"stargazers_count":0,"watchers_count":0,"language":"Gettext Catalog","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":"geany:master","ref":"master","sha":"24f91981c057a7e212c09da66fb974c3ccc85bd6","user":{"login":"geany","id":1108795,"avatar_url":"https://avatars.githubusercontent.com/u/1108795?v=3","gravatar_id":"","url":"https://api.github.com/users/geany","html_url":"https://github.com/geany","followers_url":"https://api.github.com/users/geany/followers","following_url":"https://api.github.com/users/geany/following{/other_user}","gists_url":"https://api.github.com/users/geany/gists{/gist_id}","starred_url":"https://api.github.com/users/geany/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geany/subscriptions","organizations_url":"https://api.github.com/users/geany/orgs","repos_url":"https://api.github.com/users/geany/repos","events_url":"https://api.github.com/users/geany/events{/privacy}","received_events_url":"https://api.github.com/users/geany/received_events","type":"Organization","site_admin":false},"repo":{"id":2532922,"name":"geany","full_name":"geany/geany","owner":{"login":"geany","id":1108795,"avatar_url":"https://avatars.githubusercontent.com/u/1108795?v=3","gravatar_id":"","url":"https://api.github.com/users/geany","html_url":"https://github.com/geany","followers_url":"https://api.github.com/users/geany/followers","following_url":"https://api.github.com/users/geany/following{/other_user}","gists_url":"https://api.github.com/users/geany/gists{/gist_id}","starred_url":"https://api.github.com/users/geany/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geany/subscriptions","organizations_url":"https://api.github.com/users/geany/orgs","repos_url":"https://api.github.com/users/geany/repos","events_url":"https://api.github.com/users/geany/events{/privacy}","received_events_url":"https://api.github.com/users/geany/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/geany/geany","description":"A fast and lightweight IDE","fork":false,"url":"https://api.github.com/repos/geany/geany","forks_url":"https://api.github.com/repos/geany/geany/forks","keys_url":"https://api.github.com/repos/geany/geany/keys{/key_id}","collaborators_url":"https://api.github.com/repos/geany/geany/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/geany/geany/teams","hooks_url":"https://api.github.com/repos/geany/geany/hooks","issue_events_url":"https://api.github.com/repos/geany/geany/issues/events{/number}","events_url":"https://api.github.com/repos/geany/geany/events","assignees_url":"https://api.github.com/repos/geany/geany/assignees{/user}","branches_url":"https://api.github.com/repos/geany/geany/branches{/branch}","tags_url":"https://api.github.com/repos/geany/geany/tags","blobs_url":"https://api.github.com/repos/geany/geany/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/geany/geany/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/geany/geany/git/refs{/sha}","trees_url":"https://api.github.com/repos/geany/geany/git/trees{/sha}","statuses_url":"https://api.github.com/repos/geany/geany/statuses/{sha}","languages_url":"https://api.github.com/repos/geany/geany/languages","stargazers_url":"https://api.github.com/repos/geany/geany/stargazers","contributors_url":"https://api.github.com/repos/geany/geany/contributors","subscribers_url":"https://api.github.com/repos/geany/geany/subscribers","subscription_url":"https://api.github.com/repos/geany/geany/subscription","commits_url":"https://api.github.com/repos/geany/geany/commits{/sha}","git_commits_url":"https://api.github.com/repos/geany/geany/git/commits{/sha}","comments_url":"https://api.github.com/repos/geany/geany/comments{/number}","issue_comment_url":"https://api.github.com/repos/geany/geany/issues/comments{/number}","contents_url":"https://api.github.com/repos/geany/geany/contents/{+path}","compare_url":"https://api.github.com/repos/geany/geany/compare/{base}...{head}","merges_url":"https://api.github.com/repos/geany/geany/merges","archive_url":"https://api.github.com/repos/geany/geany/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/geany/geany/downloads","issues_url":"https://api.github.com/repos/geany/geany/issues{/number}","pulls_url":"https://api.github.com/repos/geany/geany/pulls{/number}","milestones_url":"https://api.github.com/repos/geany/geany/milestones{/number}","notifications_url":"https://api.github.com/repos/geany/geany/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/geany/geany/labels{/name}","releases_url":"https://api.github.com/repos/geany/geany/releases{/id}","deployments_url":"https://api.github.com/repos/geany/geany/deployments","created_at":"2011-10-07T14:25:32Z","updated_at":"2017-02-28T08:53:53Z","pushed_at":"2017-02-27T17:10:55Z","git_url":"git://github.com/geany/geany.git","ssh_url":"git@github.com:geany/geany.git","clone_url":"https://github.com/geany/geany.git","svn_url":"https://github.com/geany/geany","homepage":"http://www.geany.org","size":51932,"stargazers_count":911,"watchers_count":911,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":304,"mirror_url":null,"open_issues_count":492,"forks":304,"open_issues":492,"watchers":911,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/geany/geany/pulls/963"},"html":{"href":"https://github.com/geany/geany/pull/963"},"issue":{"href":"https://api.github.com/repos/geany/geany/issues/963"},"comments":{"href":"https://api.github.com/repos/geany/geany/issues/963/comments"},"review_comments":{"href":"https://api.github.com/repos/geany/geany/pulls/963/comments"},"review_comment":{"href":"https://api.github.com/repos/geany/geany/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/geany/geany/pulls/963/commits"},"statuses":{"href":"https://api.github.com/repos/geany/geany/statuses/2ff5a3590fb2dd2835a8faf4d2ac5131eb8956fa"}}}}
{"actor":{"display_login":"elextr"}}