payload: {"action":"created","comment":{"url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/comments/288120328","pull_request_review_id":242690047,"id":288120328,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDI4ODEyMDMyOA==","diff_hunk":"@@ -0,0 +1,202 @@\n+/*\n+ * Copyright (c) 2019 Nordic Semiconductor ASA\n+ *\n+ * SPDX-License-Identifier: LicenseRef-BSD-5-Clause-Nordic\n+ */\n+\n+#include <stdint.h>\n+#include <zephyr.h>\n+#include <flash.h>\n+#include <download_client.h>\n+#include <nrf_socket.h>\n+#include <dfu/mcuboot.h>\n+#include <pm_config.h>\n+#include <bsd.h>\n+#include <logging/log.h>\n+#include <fota_download.h>\n+\n+LOG_MODULE_REGISTER(fota_download, CONFIG_FOTA_DOWNLOAD_LOG_LEVEL);\n+\n+static struct\tdevice *flash_dev;\n+static bool\tis_flash_page_erased[FLASH_PAGE_MAX_CNT];\n+static\t\tfota_download_callback_t callback;\n+static struct\tdownload_client dfu;\n+\n+static void report_flash_err(int err)\n+{\n+\tstruct fota_download_evt evt = {.id = FOTA_DOWNLOAD_FLASH_ERR,\n+\t\t\t\t\t.flash_error_code = err};\n+\tcallback(&evt);\n+}\n+\n+static void report_dlc_evt(const struct download_client_evt *dlc_evt)\n+{\n+\tstruct fota_download_evt evt = {.id = FOTA_DOWNLOAD_EVT_DOWNLOAD_CLIENT,\n+\t\t\t\t\t.dlc_evt = dlc_evt};\n+\tcallback(&evt);\n+}\n+\n+static int flash_page_erase_if_needed(u32_t address)\n+{\n+\tint err;\n+\tstruct flash_pages_info info;\n+\n+\terr = flash_get_page_info_by_offs(flash_dev, address, &info);\n+\tif (err != 0) {\n+\t\tLOG_ERR(\"flash_get_page_info_by_offs returned error %d\\n\", err);\n+\t\treturn err;\n+\t}\n+\tif (!is_flash_page_erased[info.index]) {\n+\t\terr = flash_write_protection_set(flash_dev, false);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"flash_write_protection_set error %d\\n\", err);\n+\t\t\treturn err;\n+\t\t}\n+\t\terr = flash_erase(flash_dev, info.start_offset, info.size);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"flash_erase error %d at address %08x\\n\",\n+\t\t\t\terr, info.start_offset);\n+\t\t\treturn err;\n+\t\t}\n+\t\tis_flash_page_erased[info.index] = true;\n+\t\terr = flash_write_protection_set(flash_dev, true);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"flash_write_protection_set error %d\\n\", err);\n+\t\t\treturn err;\n+\t\t}\n+\t}\n+\treturn 0;\n+}\n+\n+static int download_client_callback(const struct download_client_evt *event)\n+{\n+\tint err;\n+\tstatic u32_t flash_address = PM_MCUBOOT_SECONDARY_ADDRESS;\n+\n+\t__ASSERT(event != NULL, \"invalid dfu object\\n\");\n+\n+\tswitch (event->id) {\n+\tcase DOWNLOAD_CLIENT_EVT_FRAGMENT: {\n+\t\tsize_t size;\n+\n+\t\terr = download_client_file_size_get(&dfu, &size);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"download_client_file_size_get returned error\"\n+\t\t\t\t\"%d\\n\", err);\n+\t\t\treturn err;\n+\t\t}\n+\t\tif (size > PM_MCUBOOT_SECONDARY_SIZE) {\n+\t\t\tLOG_ERR(\"Requested file too big to fit in flash\\n\");\n+\t\t\treport_flash_err(-EFBIG);\n+\t\t\treturn -EFBIG;\n+\t\t}\n+\n+\t\terr = flash_page_erase_if_needed(flash_address);\n+\t\tif (err != 0) {\n+\t\t\treport_flash_err(err);\n+\t\t\treturn err;\n+\t\t}\n+\n+\t\terr = flash_write_protection_set(flash_dev, false);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"flash_write_protection_set error %d\\n\", err);\n+\t\t\treport_flash_err(err);\n+\t\t\treturn err;\n+\t\t}\n+\n+\t\terr = flash_write(flash_dev, flash_address,\n+\t\t\t\tevent->fragment.buf, event->fragment.len);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"Flash write error %d at address %08x\\n\",\n+\t\t\t\terr, flash_address);\n+\t\t\treport_flash_err(err);\n+\t\t\treturn err;\n+\t\t}\n+\n+\t\terr = flash_write_protection_set(flash_dev, true);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"flash_write_protection_set error %d\\n\", err);\n+\t\t\treport_flash_err(err);\n+\t\t\treturn err;\n+\t\t}\n+\n+\t\treport_dlc_evt(event);\n+\t\tflash_address += event->fragment.len;\n+\t\tbreak;\n+\t}\n+\n+\tcase DOWNLOAD_CLIENT_EVT_DONE:\n+\t\tflash_address = PM_MCUBOOT_SECONDARY_ADDRESS\n+\t\t\t\t+ PM_MCUBOOT_SECONDARY_SIZE - 0x4;\n+\t\terr = flash_page_erase_if_needed(flash_address);\n+\t\tif (err != 0) {\n+\t\t\treport_flash_err(err);\n+\t\t\treturn err;\n+\t\t}\n+\t\terr = boot_request_upgrade(0);\n+\t\tif (err != 0) {\n+\t\t\tLOG_ERR(\"boot_request_upgrade error %d\\n\", err);\n+\t\t\treport_flash_err(err);\n+\t\t\treturn err;\n+\t\t}\n+\t\treport_dlc_evt(event);\n+\t\tbreak;\n+\n+\tcase DOWNLOAD_CLIENT_EVT_ERROR: {\n+\t\tdownload_client_disconnect(&dfu);\n+\t\treport_dlc_evt(event);\n+\t\tLOG_ERR(\"Download client error\\n\");\n+\t\tbreak;\n+\t}\n+\tdefault:\n+\t\tbreak;\n+\t}\n+\treturn 0;\n+}\n+\n+int fota_download_start(char *host, char *file)","path":"subsys/net/lib/fota_download/src/fota_download.c","position":163,"original_position":157,"commit_id":"946c1513e18b165edf5e199f1d6391f0f5a00591","original_commit_id":"ea1749dfa2afbb335d83a732921d77c6bc6cb1d6","user":{"login":"hakonfam","id":1547348,"node_id":"MDQ6VXNlcjE1NDczNDg=","avatar_url":"https://avatars0.githubusercontent.com/u/1547348?v=4","gravatar_id":"","url":"https://api.github.com/users/hakonfam","html_url":"https://github.com/hakonfam","followers_url":"https://api.github.com/users/hakonfam/followers","following_url":"https://api.github.com/users/hakonfam/following{/other_user}","gists_url":"https://api.github.com/users/hakonfam/gists{/gist_id}","starred_url":"https://api.github.com/users/hakonfam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hakonfam/subscriptions","organizations_url":"https://api.github.com/users/hakonfam/orgs","repos_url":"https://api.github.com/users/hakonfam/repos","events_url":"https://api.github.com/users/hakonfam/events{/privacy}","received_events_url":"https://api.github.com/users/hakonfam/received_events","type":"User","site_admin":false},"body":"Updated to check the if `dfu.fd != -1` which means that there is a download ongoing. Will return `-EALREADY` if that is the case.","created_at":"2019-05-28T14:01:09Z","updated_at":"2019-05-28T14:01:10Z","html_url":"https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/806#discussion_r288120328","pull_request_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/comments/288120328"},"html":{"href":"https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/806#discussion_r288120328"},"pull_request":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806"}},"in_reply_to_id":288089307},"pull_request":{"url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806","id":282796403,"node_id":"MDExOlB1bGxSZXF1ZXN0MjgyNzk2NDAz","html_url":"https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/806","diff_url":"https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/806.diff","patch_url":"https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/806.patch","issue_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/issues/806","number":806,"state":"open","locked":false,"title":"Fota download library","user":{"login":"hakonfam","id":1547348,"node_id":"MDQ6VXNlcjE1NDczNDg=","avatar_url":"https://avatars0.githubusercontent.com/u/1547348?v=4","gravatar_id":"","url":"https://api.github.com/users/hakonfam","html_url":"https://github.com/hakonfam","followers_url":"https://api.github.com/users/hakonfam/followers","following_url":"https://api.github.com/users/hakonfam/following{/other_user}","gists_url":"https://api.github.com/users/hakonfam/gists{/gist_id}","starred_url":"https://api.github.com/users/hakonfam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hakonfam/subscriptions","organizations_url":"https://api.github.com/users/hakonfam/orgs","repos_url":"https://api.github.com/users/hakonfam/repos","events_url":"https://api.github.com/users/hakonfam/events{/privacy}","received_events_url":"https://api.github.com/users/hakonfam/received_events","type":"User","site_admin":false},"body":"Library for downloading FOTA. Note that this PR is based on https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/769 so only the last commit should be reviewed.","created_at":"2019-05-28T11:56:25Z","updated_at":"2019-05-28T14:01:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"3dc260a41964513657b25289b857ce54025b18f6","assignee":null,"assignees":[],"requested_reviewers":[{"login":"lemrey","id":1151289,"node_id":"MDQ6VXNlcjExNTEyODk=","avatar_url":"https://avatars1.githubusercontent.com/u/1151289?v=4","gravatar_id":"","url":"https://api.github.com/users/lemrey","html_url":"https://github.com/lemrey","followers_url":"https://api.github.com/users/lemrey/followers","following_url":"https://api.github.com/users/lemrey/following{/other_user}","gists_url":"https://api.github.com/users/lemrey/gists{/gist_id}","starred_url":"https://api.github.com/users/lemrey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lemrey/subscriptions","organizations_url":"https://api.github.com/users/lemrey/orgs","repos_url":"https://api.github.com/users/lemrey/repos","events_url":"https://api.github.com/users/lemrey/events{/privacy}","received_events_url":"https://api.github.com/users/lemrey/received_events","type":"User","site_admin":false},{"login":"sigvartmh","id":3646850,"node_id":"MDQ6VXNlcjM2NDY4NTA=","avatar_url":"https://avatars2.githubusercontent.com/u/3646850?v=4","gravatar_id":"","url":"https://api.github.com/users/sigvartmh","html_url":"https://github.com/sigvartmh","followers_url":"https://api.github.com/users/sigvartmh/followers","following_url":"https://api.github.com/users/sigvartmh/following{/other_user}","gists_url":"https://api.github.com/users/sigvartmh/gists{/gist_id}","starred_url":"https://api.github.com/users/sigvartmh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sigvartmh/subscriptions","organizations_url":"https://api.github.com/users/sigvartmh/orgs","repos_url":"https://api.github.com/users/sigvartmh/repos","events_url":"https://api.github.com/users/sigvartmh/events{/privacy}","received_events_url":"https://api.github.com/users/sigvartmh/received_events","type":"User","site_admin":false},{"login":"osaether","id":16463587,"node_id":"MDQ6VXNlcjE2NDYzNTg3","avatar_url":"https://avatars1.githubusercontent.com/u/16463587?v=4","gravatar_id":"","url":"https://api.github.com/users/osaether","html_url":"https://github.com/osaether","followers_url":"https://api.github.com/users/osaether/followers","following_url":"https://api.github.com/users/osaether/following{/other_user}","gists_url":"https://api.github.com/users/osaether/gists{/gist_id}","starred_url":"https://api.github.com/users/osaether/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/osaether/subscriptions","organizations_url":"https://api.github.com/users/osaether/orgs","repos_url":"https://api.github.com/users/osaether/repos","events_url":"https://api.github.com/users/osaether/events{/privacy}","received_events_url":"https://api.github.com/users/osaether/received_events","type":"User","site_admin":false},{"login":"anangl","id":16913290,"node_id":"MDQ6VXNlcjE2OTEzMjkw","avatar_url":"https://avatars3.githubusercontent.com/u/16913290?v=4","gravatar_id":"","url":"https://api.github.com/users/anangl","html_url":"https://github.com/anangl","followers_url":"https://api.github.com/users/anangl/followers","following_url":"https://api.github.com/users/anangl/following{/other_user}","gists_url":"https://api.github.com/users/anangl/gists{/gist_id}","starred_url":"https://api.github.com/users/anangl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anangl/subscriptions","organizations_url":"https://api.github.com/users/anangl/orgs","repos_url":"https://api.github.com/users/anangl/repos","events_url":"https://api.github.com/users/anangl/events{/privacy}","received_events_url":"https://api.github.com/users/anangl/received_events","type":"User","site_admin":false},{"login":"pizi-nordic","id":18549729,"node_id":"MDQ6VXNlcjE4NTQ5NzI5","avatar_url":"https://avatars1.githubusercontent.com/u/18549729?v=4","gravatar_id":"","url":"https://api.github.com/users/pizi-nordic","html_url":"https://github.com/pizi-nordic","followers_url":"https://api.github.com/users/pizi-nordic/followers","following_url":"https://api.github.com/users/pizi-nordic/following{/other_user}","gists_url":"https://api.github.com/users/pizi-nordic/gists{/gist_id}","starred_url":"https://api.github.com/users/pizi-nordic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pizi-nordic/subscriptions","organizations_url":"https://api.github.com/users/pizi-nordic/orgs","repos_url":"https://api.github.com/users/pizi-nordic/repos","events_url":"https://api.github.com/users/pizi-nordic/events{/privacy}","received_events_url":"https://api.github.com/users/pizi-nordic/received_events","type":"User","site_admin":false},{"login":"rlubos","id":22167799,"node_id":"MDQ6VXNlcjIyMTY3Nzk5","avatar_url":"https://avatars0.githubusercontent.com/u/22167799?v=4","gravatar_id":"","url":"https://api.github.com/users/rlubos","html_url":"https://github.com/rlubos","followers_url":"https://api.github.com/users/rlubos/followers","following_url":"https://api.github.com/users/rlubos/following{/other_user}","gists_url":"https://api.github.com/users/rlubos/gists{/gist_id}","starred_url":"https://api.github.com/users/rlubos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rlubos/subscriptions","organizations_url":"https://api.github.com/users/rlubos/orgs","repos_url":"https://api.github.com/users/rlubos/repos","events_url":"https://api.github.com/users/rlubos/events{/privacy}","received_events_url":"https://api.github.com/users/rlubos/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":1326493663,"node_id":"MDU6TGFiZWwxMzI2NDkzNjYz","url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/labels/DNM","name":"DNM","color":"db7e6f","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806/commits","review_comments_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806/comments","review_comment_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/comments{/number}","comments_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/issues/806/comments","statuses_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/statuses/946c1513e18b165edf5e199f1d6391f0f5a00591","head":{"label":"hakonfam:fota-download","ref":"fota-download","sha":"946c1513e18b165edf5e199f1d6391f0f5a00591","user":{"login":"hakonfam","id":1547348,"node_id":"MDQ6VXNlcjE1NDczNDg=","avatar_url":"https://avatars0.githubusercontent.com/u/1547348?v=4","gravatar_id":"","url":"https://api.github.com/users/hakonfam","html_url":"https://github.com/hakonfam","followers_url":"https://api.github.com/users/hakonfam/followers","following_url":"https://api.github.com/users/hakonfam/following{/other_user}","gists_url":"https://api.github.com/users/hakonfam/gists{/gist_id}","starred_url":"https://api.github.com/users/hakonfam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hakonfam/subscriptions","organizations_url":"https://api.github.com/users/hakonfam/orgs","repos_url":"https://api.github.com/users/hakonfam/repos","events_url":"https://api.github.com/users/hakonfam/events{/privacy}","received_events_url":"https://api.github.com/users/hakonfam/received_events","type":"User","site_admin":false},"repo":{"id":161776892,"node_id":"MDEwOlJlcG9zaXRvcnkxNjE3NzY4OTI=","name":"fw-nrfconnect-nrf-1","full_name":"hakonfam/fw-nrfconnect-nrf-1","private":false,"owner":{"login":"hakonfam","id":1547348,"node_id":"MDQ6VXNlcjE1NDczNDg=","avatar_url":"https://avatars0.githubusercontent.com/u/1547348?v=4","gravatar_id":"","url":"https://api.github.com/users/hakonfam","html_url":"https://github.com/hakonfam","followers_url":"https://api.github.com/users/hakonfam/followers","following_url":"https://api.github.com/users/hakonfam/following{/other_user}","gists_url":"https://api.github.com/users/hakonfam/gists{/gist_id}","starred_url":"https://api.github.com/users/hakonfam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hakonfam/subscriptions","organizations_url":"https://api.github.com/users/hakonfam/orgs","repos_url":"https://api.github.com/users/hakonfam/repos","events_url":"https://api.github.com/users/hakonfam/events{/privacy}","received_events_url":"https://api.github.com/users/hakonfam/received_events","type":"User","site_admin":false},"html_url":"https://github.com/hakonfam/fw-nrfconnect-nrf-1","description":"nRF Connect SDK nrf tree","fork":true,"url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1","forks_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/forks","keys_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/teams","hooks_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/hooks","issue_events_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/issues/events{/number}","events_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/events","assignees_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/assignees{/user}","branches_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/branches{/branch}","tags_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/tags","blobs_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/git/refs{/sha}","trees_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/statuses/{sha}","languages_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/languages","stargazers_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/stargazers","contributors_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/contributors","subscribers_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/subscribers","subscription_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/subscription","commits_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/commits{/sha}","git_commits_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/git/commits{/sha}","comments_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/comments{/number}","issue_comment_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/issues/comments{/number}","contents_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/contents/{+path}","compare_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/merges","archive_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/downloads","issues_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/issues{/number}","pulls_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/pulls{/number}","milestones_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/milestones{/number}","notifications_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/labels{/name}","releases_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/releases{/id}","deployments_url":"https://api.github.com/repos/hakonfam/fw-nrfconnect-nrf-1/deployments","created_at":"2018-12-14T11:40:24Z","updated_at":"2018-12-14T11:40:26Z","pushed_at":"2019-05-28T14:00:31Z","git_url":"git://github.com/hakonfam/fw-nrfconnect-nrf-1.git","ssh_url":"git@github.com:hakonfam/fw-nrfconnect-nrf-1.git","clone_url":"https://github.com/hakonfam/fw-nrfconnect-nrf-1.git","svn_url":"https://github.com/hakonfam/fw-nrfconnect-nrf-1","homepage":"http://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/","size":4502,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"NordicPlayground:master","ref":"master","sha":"1ccddb02976ec4aaba66b8f7e11881b5029ac028","user":{"login":"NordicPlayground","id":5527425,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU1Mjc0MjU=","avatar_url":"https://avatars2.githubusercontent.com/u/5527425?v=4","gravatar_id":"","url":"https://api.github.com/users/NordicPlayground","html_url":"https://github.com/NordicPlayground","followers_url":"https://api.github.com/users/NordicPlayground/followers","following_url":"https://api.github.com/users/NordicPlayground/following{/other_user}","gists_url":"https://api.github.com/users/NordicPlayground/gists{/gist_id}","starred_url":"https://api.github.com/users/NordicPlayground/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NordicPlayground/subscriptions","organizations_url":"https://api.github.com/users/NordicPlayground/orgs","repos_url":"https://api.github.com/users/NordicPlayground/repos","events_url":"https://api.github.com/users/NordicPlayground/events{/privacy}","received_events_url":"https://api.github.com/users/NordicPlayground/received_events","type":"Organization","site_admin":false},"repo":{"id":121516035,"node_id":"MDEwOlJlcG9zaXRvcnkxMjE1MTYwMzU=","name":"fw-nrfconnect-nrf","full_name":"NordicPlayground/fw-nrfconnect-nrf","private":false,"owner":{"login":"NordicPlayground","id":5527425,"node_id":"MDEyOk9yZ2FuaXphdGlvbjU1Mjc0MjU=","avatar_url":"https://avatars2.githubusercontent.com/u/5527425?v=4","gravatar_id":"","url":"https://api.github.com/users/NordicPlayground","html_url":"https://github.com/NordicPlayground","followers_url":"https://api.github.com/users/NordicPlayground/followers","following_url":"https://api.github.com/users/NordicPlayground/following{/other_user}","gists_url":"https://api.github.com/users/NordicPlayground/gists{/gist_id}","starred_url":"https://api.github.com/users/NordicPlayground/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/NordicPlayground/subscriptions","organizations_url":"https://api.github.com/users/NordicPlayground/orgs","repos_url":"https://api.github.com/users/NordicPlayground/repos","events_url":"https://api.github.com/users/NordicPlayground/events{/privacy}","received_events_url":"https://api.github.com/users/NordicPlayground/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/NordicPlayground/fw-nrfconnect-nrf","description":"nRF Connect SDK nrf tree","fork":false,"url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf","forks_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/forks","keys_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/keys{/key_id}","collaborators_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/teams","hooks_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/hooks","issue_events_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/issues/events{/number}","events_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/events","assignees_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/assignees{/user}","branches_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/branches{/branch}","tags_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/tags","blobs_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/git/refs{/sha}","trees_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/git/trees{/sha}","statuses_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/statuses/{sha}","languages_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/languages","stargazers_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/stargazers","contributors_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/contributors","subscribers_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/subscribers","subscription_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/subscription","commits_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/commits{/sha}","git_commits_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/git/commits{/sha}","comments_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/comments{/number}","issue_comment_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/issues/comments{/number}","contents_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/contents/{+path}","compare_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/compare/{base}...{head}","merges_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/merges","archive_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/downloads","issues_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/issues{/number}","pulls_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls{/number}","milestones_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/milestones{/number}","notifications_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/labels{/name}","releases_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/releases{/id}","deployments_url":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/deployments","created_at":"2018-02-14T13:50:55Z","updated_at":"2019-05-28T10:57:04Z","pushed_at":"2019-05-28T14:00:33Z","git_url":"git://github.com/NordicPlayground/fw-nrfconnect-nrf.git","ssh_url":"git@github.com:NordicPlayground/fw-nrfconnect-nrf.git","clone_url":"https://github.com/NordicPlayground/fw-nrfconnect-nrf.git","svn_url":"https://github.com/NordicPlayground/fw-nrfconnect-nrf","homepage":"http://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/","size":4296,"stargazers_count":47,"watchers_count":47,"language":"C","has_issues":false,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":129,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":33,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":129,"open_issues":33,"watchers":47,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806"},"html":{"href":"https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/806"},"issue":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/issues/806"},"comments":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/issues/806/comments"},"review_comments":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806/comments"},"review_comment":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/pulls/806/commits"},"statuses":{"href":"https://api.github.com/repos/NordicPlayground/fw-nrfconnect-nrf/statuses/946c1513e18b165edf5e199f1d6391f0f5a00591"}},"author_association":"COLLABORATOR"}}
other: {"actor":{"display_login":"hakonfam"}}