{"action":"created","issue":{"url":"https://api.github.com/repos/FreshRSS/FreshRSS/issues/1655","repository_url":"https://api.github.com/repos/FreshRSS/FreshRSS","labels_url":"https://api.github.com/repos/FreshRSS/FreshRSS/issues/1655/labels{/name}","comments_url":"https://api.github.com/repos/FreshRSS/FreshRSS/issues/1655/comments","events_url":"https://api.github.com/repos/FreshRSS/FreshRSS/issues/1655/events","html_url":"https://github.com/FreshRSS/FreshRSS/issues/1655","id":262567643,"number":1655,"title":"Favicons not loading from feeds?","user":{"login":"donlencho","id":8362161,"avatar_url":"https://avatars3.githubusercontent.com/u/8362161?v=4","gravatar_id":"","url":"https://api.github.com/users/donlencho","html_url":"https://github.com/donlencho","followers_url":"https://api.github.com/users/donlencho/followers","following_url":"https://api.github.com/users/donlencho/following{/other_user}","gists_url":"https://api.github.com/users/donlencho/gists{/gist_id}","starred_url":"https://api.github.com/users/donlencho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/donlencho/subscriptions","organizations_url":"https://api.github.com/users/donlencho/orgs","repos_url":"https://api.github.com/users/donlencho/repos","events_url":"https://api.github.com/users/donlencho/events{/privacy}","received_events_url":"https://api.github.com/users/donlencho/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/FreshRSS/FreshRSS/milestones/23","html_url":"https://github.com/FreshRSS/FreshRSS/milestone/23","labels_url":"https://api.github.com/repos/FreshRSS/FreshRSS/milestones/23/labels","id":2414790,"number":23,"title":"1.9.0","description":"Rework update mechanism","creator":{"login":"Alkarex","id":1008324,"avatar_url":"https://avatars0.githubusercontent.com/u/1008324?v=4","gravatar_id":"","url":"https://api.github.com/users/Alkarex","html_url":"https://github.com/Alkarex","followers_url":"https://api.github.com/users/Alkarex/followers","following_url":"https://api.github.com/users/Alkarex/following{/other_user}","gists_url":"https://api.github.com/users/Alkarex/gists{/gist_id}","starred_url":"https://api.github.com/users/Alkarex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Alkarex/subscriptions","organizations_url":"https://api.github.com/users/Alkarex/orgs","repos_url":"https://api.github.com/users/Alkarex/repos","events_url":"https://api.github.com/users/Alkarex/events{/privacy}","received_events_url":"https://api.github.com/users/Alkarex/received_events","type":"User","site_admin":false},"open_issues":34,"closed_issues":3,"state":"open","created_at":"2017-03-27T20:51:40Z","updated_at":"2017-10-08T10:23:39Z","due_on":"2017-12-23T08:00:00Z","closed_at":null},"comments":21,"created_at":"2017-10-03T20:06:45Z","updated_at":"2017-10-08T11:04:41Z","closed_at":null,"author_association":"NONE","body":"Hello,\r\nI just did a fresh install of version 1.8 and imported my feeds form a previous 1.6 installation.\r\nEverything went fine but I got no favicons for my feeds, all articles have this icons:\r\n\r\n![fc97eec4](https://user-images.githubusercontent.com/8362161/31146424-f9987df0-a886-11e7-89a7-28f18b961146.jpg)\r\n\r\nIs there a way to force it to load icons, or will it come at some point, or is there a problem somewhere?\r\n\r\nThanks!\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/FreshRSS/FreshRSS/issues/comments/334998926","html_url":"https://github.com/FreshRSS/FreshRSS/issues/1655#issuecomment-334998926","issue_url":"https://api.github.com/repos/FreshRSS/FreshRSS/issues/1655","id":334998926,"user":{"login":"Alkarex","id":1008324,"avatar_url":"https://avatars0.githubusercontent.com/u/1008324?v=4","gravatar_id":"","url":"https://api.github.com/users/Alkarex","html_url":"https://github.com/Alkarex","followers_url":"https://api.github.com/users/Alkarex/followers","following_url":"https://api.github.com/users/Alkarex/following{/other_user}","gists_url":"https://api.github.com/users/Alkarex/gists{/gist_id}","starred_url":"https://api.github.com/users/Alkarex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Alkarex/subscriptions","organizations_url":"https://api.github.com/users/Alkarex/orgs","repos_url":"https://api.github.com/users/Alkarex/repos","events_url":"https://api.github.com/users/Alkarex/events{/privacy}","received_events_url":"https://api.github.com/users/Alkarex/received_events","type":"User","site_admin":false},"created_at":"2017-10-08T11:04:41Z","updated_at":"2017-10-08T11:04:41Z","author_association":"OWNER","body":"@donlencho Could you please give a try to this new `test-curl.php`?\r\n\r\n```php\r\n<?php\r\nini_set('display_errors', 1);\r\nini_set('display_startup_errors', 1);\r\nerror_reporting(E_ALL);\r\n\r\n$url = 'https://alexandre.alapetite.fr/favicon.ico';\r\n\r\nrequire('../constants.php');\r\nrequire(LIB_PATH . '/lib_rss.php');\r\n\r\nheader('Content-Type: text/plain; charset=UTF-8');\r\nheader('Content-Disposition: inline; filename=\"test-curl.txt\"');\r\n\r\nfunction logme($text) {\r\n\tfile_put_contents('test-curl.log', date('c') . \"\\t\" . $text . \"\\n\", FILE_APPEND);\r\n}\r\n\r\nfunction downloadHttp3(&$url) {\r\n\tlogme('downloadHttp3 ' . $url);\r\n\t$ch = curl_init($url);\r\n\t$options_ok = curl_setopt_array($ch, array(\r\n\t\t\tCURLOPT_RETURNTRANSFER => true,\r\n\t\t));\r\n\tlogme('cURL options: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\tif ($options_ok) {\r\n\t\t$response = curl_exec($ch);\r\n\t\t$info = curl_getinfo($ch);\r\n\t\t//logme(print_r($info, true));\r\n\t}\r\n\tcurl_close($ch);\r\n\treturn $response;\r\n}\r\n\r\nfunction downloadHttp4(&$url) {\r\n\tlogme('downloadHttp4 ' . $url);\r\n\t$ch = curl_init($url);\r\n\t$options_ok = curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\r\n\tlogme('cURL CURLOPT_RETURNTRANSFER: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\tif ($options_ok) {\r\n\t\t$response = curl_exec($ch);\r\n\t\t$info = curl_getinfo($ch);\r\n\t\t//logme(print_r($info, true));\r\n\t}\r\n\tcurl_close($ch);\r\n\treturn $response;\r\n}\r\n\r\nfunction downloadHttp5(&$url) {\r\n\tlogme('downloadHttp5 ' . $url);\r\n\t$ch = curl_init($url);\r\n\t$options_ok = curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);\r\n\tlogme('cURL CURLOPT_RETURNTRANSFER: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\tif ($options_ok) {\r\n\t\t$response = curl_exec($ch);\r\n\t\t$info = curl_getinfo($ch);\r\n\t\t//logme(print_r($info, true));\r\n\t}\r\n\tcurl_close($ch);\r\n\treturn $response;\r\n}\r\n\r\nfunction downloadHttp6(&$url) {\r\n\tlogme('downloadHttp6 ' . $url);\r\n\t$ch = curl_init($url);\r\n\t$options_ok = curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\r\n\tlogme('cURL CURLOPT_RETURNTRANSFER: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\t$options_ok = curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);\r\n\tlogme('cURL CURLOPT_FOLLOWLOCATION: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\t$options_ok = curl_setopt($ch, CURLOPT_MAXREDIRS, 10);\r\n\tlogme('cURL CURLOPT_MAXREDIRS: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\t$options_ok = curl_setopt($ch, CURLOPT_TIMEOUT, 15);\r\n\tlogme('cURL CURLOPT_TIMEOUT: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\t$options_ok = curl_setopt($ch, CURLOPT_ENCODING, '');\r\n\tlogme('cURL CURLOPT_ENCODING: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\t$options_ok = curl_setopt($ch, CURLOPT_USERAGENT, 'FreshRSS/' . FRESHRSS_VERSION . ' (' . PHP_OS . '; ' . FRESHRSS_WEBSITE . ')');\r\n\tlogme('cURL CURLOPT_USERAGENT: ' . ($options_ok ? 'OK' : 'not OK!'));\r\n\tif ($options_ok) {\r\n\t\t$response = curl_exec($ch);\r\n\t\t$info = curl_getinfo($ch);\r\n\t\t//logme(print_r($info, true));\r\n\t}\r\n\tcurl_close($ch);\r\n\treturn $response;\r\n}\r\n\r\nlogme('====');\r\n$favicon = downloadHttp3($url);\r\nif ($favicon != '') {\r\n\tlogme('Favicon retrieved successfully: ' . md5($favicon));\r\n} else {\r\n\tlogme('Error: Could not get favicon!');\r\n}\r\n\r\nlogme('====');\r\n$favicon = downloadHttp4($url);\r\nif ($favicon != '') {\r\n\tlogme('Favicon retrieved successfully: ' . md5($favicon));\r\n} else {\r\n\tlogme('Error: Could not get favicon!');\r\n}\r\n\r\nlogme('====');\r\n$favicon = downloadHttp5($url);\r\nif ($favicon != '') {\r\n\tlogme('Favicon retrieved successfully: ' . md5($favicon));\r\n} else {\r\n\tlogme('Error: Could not get favicon!');\r\n}\r\n\r\nlogme('====');\r\n$favicon = downloadHttp6($url);\r\nif ($favicon != '') {\r\n\tlogme('Favicon retrieved successfully: ' . md5($favicon));\r\n} else {\r\n\tlogme('Error: Could not get favicon!');\r\n}\r\n\r\necho 'Done.';\r\n```\r\n\r\nExpected output:\r\n\r\n```\r\nDone.\r\n```\r\n\r\nExpected log in `test-curl.log`:\r\n\r\n```\r\n2017-10-08T13:02:13+02:00\t====\r\n2017-10-08T13:02:13+02:00\tdownloadHttp3 https://alexandre.alapetite.fr/favicon.ico\r\n2017-10-08T13:02:13+02:00\tcURL options: OK\r\n2017-10-08T13:02:13+02:00\tFavicon retrieved successfully: 04f4d560cb92b40def3c50391c83ed94\r\n2017-10-08T13:02:13+02:00\t====\r\n2017-10-08T13:02:13+02:00\tdownloadHttp4 https://alexandre.alapetite.fr/favicon.ico\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_RETURNTRANSFER: OK\r\n2017-10-08T13:02:13+02:00\tFavicon retrieved successfully: 04f4d560cb92b40def3c50391c83ed94\r\n2017-10-08T13:02:13+02:00\t====\r\n2017-10-08T13:02:13+02:00\tdownloadHttp5 https://alexandre.alapetite.fr/favicon.ico\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_RETURNTRANSFER: OK\r\n2017-10-08T13:02:13+02:00\tFavicon retrieved successfully: 04f4d560cb92b40def3c50391c83ed94\r\n2017-10-08T13:02:13+02:00\t====\r\n2017-10-08T13:02:13+02:00\tdownloadHttp6 https://alexandre.alapetite.fr/favicon.ico\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_RETURNTRANSFER: OK\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_FOLLOWLOCATION: OK\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_MAXREDIRS: OK\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_TIMEOUT: OK\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_ENCODING: OK\r\n2017-10-08T13:02:13+02:00\tcURL CURLOPT_USERAGENT: OK\r\n2017-10-08T13:02:13+02:00\tFavicon retrieved successfully: 04f4d560cb92b40def3c50391c83ed94\r\n```\r\n"}}
{"actor":{"display_login":"Alkarex"}}