{"action":"created","comment":{"url":"https://api.github.com/repos/daurnimator/lua-http/pulls/comments/87347561","pull_request_review_id":7962580,"id":87347561,"diff_hunk":"@@ -1,21 +1,29 @@\n # Introduction\n \n-lua-http is an performant, capable Hyper Text Transfer Protocol (HTTP) and WebSocket (WS) library for Lua 5.1, 5.2, 5.3 and LuaJIT. lua-http can be utilized as a Server or Client and includes the following features: \n+lua-http is an performant, capable Hyper Text Transfer Protocol (HTTP) and WebSocket (WS) library for Lua 5.1, 5.2, 5.3 and LuaJIT. The software supports x86, x64 and Arm based systems, as well as GNU/Linux, OSX, FreeBSD and others. lua-http can be utilized as a server or client and includes the following features: \n \n -  HTTP 1 and HTTP 2 as specified by [RFC 7230](https://tools.ietf.org/html/rfc7230) and [RFC 7540](https://tools.ietf.org/html/rfc7540)\n -  WebSockets as specified by [RFC 6455](https://tools.ietf.org/html/rfc6455) and [RFC 7936](https://tools.ietf.org/html/rfc7936) including ping/pong, binary data transfer and TLS encyrption\n -  Transport Layer Security (TLS)- lua-http supports HTTPS and WSS via [luaossl](https://github.com/wahern/luaossl).  \n -  Fully asynchronous API that does not block the current thread when executing operations that typically block\n -  Easy integration into other event-loop based application models\n \n-lua-http was written to fill a gap in the Lua ecosystem by providing an asynchrounous HTTP and WebSocket capabilities to Lua applications without forcing the developer to follow a specific pattern, or even know anything about the transportation of HTTP data (other than the connection addresses). The library is simple and un-obtrusive and is designed to accommodate tens of thousands of connections on commodity hardware. This allows other developers to concentrate on line-of-business features when building Internet enabled applications, instead of worrying about the details of connection management. \n+lua-http was written to fill a gap in the Lua ecosystem by providing an HTTP and WebSocket library with the following traits:\n+- Asynchronous a performant\n+- Can be used without forcing the developer to follow a specific pattern. Conversly, the library can be adapted to many common patterns. \n+- Can be used at a very high level without need to understand the transportation of HTTP data (other than the connection addresses). \n+- Provides a rich low level API, if desired, for creating powerful HTTP based tools at the protocol level.\n+\n+As a result of these design goals, the library is simple and un-obtrusive and can accommodate tens of thousands of connections on commodity hardware. \n+\n+lua-http is a flexible HTTP and WebSocket library that allows developers to concentrate on line-of-business features when building Internet enabled applications. If you are looking for a way to streamline development of an internet enabled application, enable HTTP networking in your game, create a new Internet Of Things (IoT) system, or write a performant custom web server for a specific use case, lua-http has the tools you need.","path":"doc/index.md","position":null,"original_position":21,"commit_id":"d91e1325fdecc5c619fef7a86939de841a456e36","original_commit_id":"d91e1325fdecc5c619fef7a86939de841a456e36","user":{"login":"daurnimator","id":127971,"avatar_url":"https://avatars.githubusercontent.com/u/127971?v=3","gravatar_id":"","url":"https://api.github.com/users/daurnimator","html_url":"https://github.com/daurnimator","followers_url":"https://api.github.com/users/daurnimator/followers","following_url":"https://api.github.com/users/daurnimator/following{/other_user}","gists_url":"https://api.github.com/users/daurnimator/gists{/gist_id}","starred_url":"https://api.github.com/users/daurnimator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daurnimator/subscriptions","organizations_url":"https://api.github.com/users/daurnimator/orgs","repos_url":"https://api.github.com/users/daurnimator/repos","events_url":"https://api.github.com/users/daurnimator/events{/privacy}","received_events_url":"https://api.github.com/users/daurnimator/received_events","type":"User","site_admin":false},"body":":grin: the fluff is real :P","created_at":"2016-11-10T08:32:21Z","updated_at":"2016-11-10T08:32:21Z","html_url":"https://github.com/daurnimator/lua-http/pull/49#discussion_r87347561","pull_request_url":"https://api.github.com/repos/daurnimator/lua-http/pulls/49","_links":{"self":{"href":"https://api.github.com/repos/daurnimator/lua-http/pulls/comments/87347561"},"html":{"href":"https://github.com/daurnimator/lua-http/pull/49#discussion_r87347561"},"pull_request":{"href":"https://api.github.com/repos/daurnimator/lua-http/pulls/49"}}},"pull_request":{"url":"https://api.github.com/repos/daurnimator/lua-http/pulls/49","id":92446449,"html_url":"https://github.com/daurnimator/lua-http/pull/49","diff_url":"https://github.com/daurnimator/lua-http/pull/49.diff","patch_url":"https://github.com/daurnimator/lua-http/pull/49.patch","issue_url":"https://api.github.com/repos/daurnimator/lua-http/issues/49","number":49,"state":"open","locked":false,"title":"Documentation updates","user":{"login":"RussellHaley","id":2166039,"avatar_url":"https://avatars.githubusercontent.com/u/2166039?v=3","gravatar_id":"","url":"https://api.github.com/users/RussellHaley","html_url":"https://github.com/RussellHaley","followers_url":"https://api.github.com/users/RussellHaley/followers","following_url":"https://api.github.com/users/RussellHaley/following{/other_user}","gists_url":"https://api.github.com/users/RussellHaley/gists{/gist_id}","starred_url":"https://api.github.com/users/RussellHaley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RussellHaley/subscriptions","organizations_url":"https://api.github.com/users/RussellHaley/orgs","repos_url":"https://api.github.com/users/RussellHaley/repos","events_url":"https://api.github.com/users/RussellHaley/events{/privacy}","received_events_url":"https://api.github.com/users/RussellHaley/received_events","type":"User","site_admin":false},"body":"Updated introduction. Moved Common Use Cases into introduction to keep peoples interest. Updated interface blurbs as per daurnimators notes.","created_at":"2016-11-05T08:16:18Z","updated_at":"2016-11-10T08:32:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f2de66ca768b9e6b9191418a06ea02411b826f89","assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/daurnimator/lua-http/milestones/2","html_url":"https://github.com/daurnimator/lua-http/milestones/First%20release","labels_url":"https://api.github.com/repos/daurnimator/lua-http/milestones/2/labels","id":1849299,"number":2,"title":"First release","description":"","creator":{"login":"daurnimator","id":127971,"avatar_url":"https://avatars.githubusercontent.com/u/127971?v=3","gravatar_id":"","url":"https://api.github.com/users/daurnimator","html_url":"https://github.com/daurnimator","followers_url":"https://api.github.com/users/daurnimator/followers","following_url":"https://api.github.com/users/daurnimator/following{/other_user}","gists_url":"https://api.github.com/users/daurnimator/gists{/gist_id}","starred_url":"https://api.github.com/users/daurnimator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daurnimator/subscriptions","organizations_url":"https://api.github.com/users/daurnimator/orgs","repos_url":"https://api.github.com/users/daurnimator/repos","events_url":"https://api.github.com/users/daurnimator/events{/privacy}","received_events_url":"https://api.github.com/users/daurnimator/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":5,"state":"open","created_at":"2016-06-27T01:00:45Z","updated_at":"2016-11-09T14:55:26Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/daurnimator/lua-http/pulls/49/commits","review_comments_url":"https://api.github.com/repos/daurnimator/lua-http/pulls/49/comments","review_comment_url":"https://api.github.com/repos/daurnimator/lua-http/pulls/comments{/number}","comments_url":"https://api.github.com/repos/daurnimator/lua-http/issues/49/comments","statuses_url":"https://api.github.com/repos/daurnimator/lua-http/statuses/d91e1325fdecc5c619fef7a86939de841a456e36","head":{"label":"RussellHaley:master","ref":"master","sha":"d91e1325fdecc5c619fef7a86939de841a456e36","user":{"login":"RussellHaley","id":2166039,"avatar_url":"https://avatars.githubusercontent.com/u/2166039?v=3","gravatar_id":"","url":"https://api.github.com/users/RussellHaley","html_url":"https://github.com/RussellHaley","followers_url":"https://api.github.com/users/RussellHaley/followers","following_url":"https://api.github.com/users/RussellHaley/following{/other_user}","gists_url":"https://api.github.com/users/RussellHaley/gists{/gist_id}","starred_url":"https://api.github.com/users/RussellHaley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RussellHaley/subscriptions","organizations_url":"https://api.github.com/users/RussellHaley/orgs","repos_url":"https://api.github.com/users/RussellHaley/repos","events_url":"https://api.github.com/users/RussellHaley/events{/privacy}","received_events_url":"https://api.github.com/users/RussellHaley/received_events","type":"User","site_admin":false},"repo":{"id":72906723,"name":"lua-http","full_name":"RussellHaley/lua-http","owner":{"login":"RussellHaley","id":2166039,"avatar_url":"https://avatars.githubusercontent.com/u/2166039?v=3","gravatar_id":"","url":"https://api.github.com/users/RussellHaley","html_url":"https://github.com/RussellHaley","followers_url":"https://api.github.com/users/RussellHaley/followers","following_url":"https://api.github.com/users/RussellHaley/following{/other_user}","gists_url":"https://api.github.com/users/RussellHaley/gists{/gist_id}","starred_url":"https://api.github.com/users/RussellHaley/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RussellHaley/subscriptions","organizations_url":"https://api.github.com/users/RussellHaley/orgs","repos_url":"https://api.github.com/users/RussellHaley/repos","events_url":"https://api.github.com/users/RussellHaley/events{/privacy}","received_events_url":"https://api.github.com/users/RussellHaley/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/RussellHaley/lua-http","description":"HTTP Library for Lua. Supports HTTP(S) 1.0, 1.1 and 2.0; client and server.","fork":true,"url":"https://api.github.com/repos/RussellHaley/lua-http","forks_url":"https://api.github.com/repos/RussellHaley/lua-http/forks","keys_url":"https://api.github.com/repos/RussellHaley/lua-http/keys{/key_id}","collaborators_url":"https://api.github.com/repos/RussellHaley/lua-http/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/RussellHaley/lua-http/teams","hooks_url":"https://api.github.com/repos/RussellHaley/lua-http/hooks","issue_events_url":"https://api.github.com/repos/RussellHaley/lua-http/issues/events{/number}","events_url":"https://api.github.com/repos/RussellHaley/lua-http/events","assignees_url":"https://api.github.com/repos/RussellHaley/lua-http/assignees{/user}","branches_url":"https://api.github.com/repos/RussellHaley/lua-http/branches{/branch}","tags_url":"https://api.github.com/repos/RussellHaley/lua-http/tags","blobs_url":"https://api.github.com/repos/RussellHaley/lua-http/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/RussellHaley/lua-http/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/RussellHaley/lua-http/git/refs{/sha}","trees_url":"https://api.github.com/repos/RussellHaley/lua-http/git/trees{/sha}","statuses_url":"https://api.github.com/repos/RussellHaley/lua-http/statuses/{sha}","languages_url":"https://api.github.com/repos/RussellHaley/lua-http/languages","stargazers_url":"https://api.github.com/repos/RussellHaley/lua-http/stargazers","contributors_url":"https://api.github.com/repos/RussellHaley/lua-http/contributors","subscribers_url":"https://api.github.com/repos/RussellHaley/lua-http/subscribers","subscription_url":"https://api.github.com/repos/RussellHaley/lua-http/subscription","commits_url":"https://api.github.com/repos/RussellHaley/lua-http/commits{/sha}","git_commits_url":"https://api.github.com/repos/RussellHaley/lua-http/git/commits{/sha}","comments_url":"https://api.github.com/repos/RussellHaley/lua-http/comments{/number}","issue_comment_url":"https://api.github.com/repos/RussellHaley/lua-http/issues/comments{/number}","contents_url":"https://api.github.com/repos/RussellHaley/lua-http/contents/{+path}","compare_url":"https://api.github.com/repos/RussellHaley/lua-http/compare/{base}...{head}","merges_url":"https://api.github.com/repos/RussellHaley/lua-http/merges","archive_url":"https://api.github.com/repos/RussellHaley/lua-http/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/RussellHaley/lua-http/downloads","issues_url":"https://api.github.com/repos/RussellHaley/lua-http/issues{/number}","pulls_url":"https://api.github.com/repos/RussellHaley/lua-http/pulls{/number}","milestones_url":"https://api.github.com/repos/RussellHaley/lua-http/milestones{/number}","notifications_url":"https://api.github.com/repos/RussellHaley/lua-http/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/RussellHaley/lua-http/labels{/name}","releases_url":"https://api.github.com/repos/RussellHaley/lua-http/releases{/id}","deployments_url":"https://api.github.com/repos/RussellHaley/lua-http/deployments","created_at":"2016-11-05T05:17:37Z","updated_at":"2016-11-06T17:47:38Z","pushed_at":"2016-11-10T08:24:20Z","git_url":"git://github.com/RussellHaley/lua-http.git","ssh_url":"git@github.com:RussellHaley/lua-http.git","clone_url":"https://github.com/RussellHaley/lua-http.git","svn_url":"https://github.com/RussellHaley/lua-http","homepage":"","size":1011,"stargazers_count":0,"watchers_count":0,"language":"Lua","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":"daurnimator:master","ref":"master","sha":"fd2a92fd61c4243ba1c1d77122f3c692c17f2956","user":{"login":"daurnimator","id":127971,"avatar_url":"https://avatars.githubusercontent.com/u/127971?v=3","gravatar_id":"","url":"https://api.github.com/users/daurnimator","html_url":"https://github.com/daurnimator","followers_url":"https://api.github.com/users/daurnimator/followers","following_url":"https://api.github.com/users/daurnimator/following{/other_user}","gists_url":"https://api.github.com/users/daurnimator/gists{/gist_id}","starred_url":"https://api.github.com/users/daurnimator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daurnimator/subscriptions","organizations_url":"https://api.github.com/users/daurnimator/orgs","repos_url":"https://api.github.com/users/daurnimator/repos","events_url":"https://api.github.com/users/daurnimator/events{/privacy}","received_events_url":"https://api.github.com/users/daurnimator/received_events","type":"User","site_admin":false},"repo":{"id":29999057,"name":"lua-http","full_name":"daurnimator/lua-http","owner":{"login":"daurnimator","id":127971,"avatar_url":"https://avatars.githubusercontent.com/u/127971?v=3","gravatar_id":"","url":"https://api.github.com/users/daurnimator","html_url":"https://github.com/daurnimator","followers_url":"https://api.github.com/users/daurnimator/followers","following_url":"https://api.github.com/users/daurnimator/following{/other_user}","gists_url":"https://api.github.com/users/daurnimator/gists{/gist_id}","starred_url":"https://api.github.com/users/daurnimator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daurnimator/subscriptions","organizations_url":"https://api.github.com/users/daurnimator/orgs","repos_url":"https://api.github.com/users/daurnimator/repos","events_url":"https://api.github.com/users/daurnimator/events{/privacy}","received_events_url":"https://api.github.com/users/daurnimator/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/daurnimator/lua-http","description":"HTTP Library for Lua. Supports HTTP(S) 1.0, 1.1 and 2.0; client and server.","fork":false,"url":"https://api.github.com/repos/daurnimator/lua-http","forks_url":"https://api.github.com/repos/daurnimator/lua-http/forks","keys_url":"https://api.github.com/repos/daurnimator/lua-http/keys{/key_id}","collaborators_url":"https://api.github.com/repos/daurnimator/lua-http/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/daurnimator/lua-http/teams","hooks_url":"https://api.github.com/repos/daurnimator/lua-http/hooks","issue_events_url":"https://api.github.com/repos/daurnimator/lua-http/issues/events{/number}","events_url":"https://api.github.com/repos/daurnimator/lua-http/events","assignees_url":"https://api.github.com/repos/daurnimator/lua-http/assignees{/user}","branches_url":"https://api.github.com/repos/daurnimator/lua-http/branches{/branch}","tags_url":"https://api.github.com/repos/daurnimator/lua-http/tags","blobs_url":"https://api.github.com/repos/daurnimator/lua-http/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/daurnimator/lua-http/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/daurnimator/lua-http/git/refs{/sha}","trees_url":"https://api.github.com/repos/daurnimator/lua-http/git/trees{/sha}","statuses_url":"https://api.github.com/repos/daurnimator/lua-http/statuses/{sha}","languages_url":"https://api.github.com/repos/daurnimator/lua-http/languages","stargazers_url":"https://api.github.com/repos/daurnimator/lua-http/stargazers","contributors_url":"https://api.github.com/repos/daurnimator/lua-http/contributors","subscribers_url":"https://api.github.com/repos/daurnimator/lua-http/subscribers","subscription_url":"https://api.github.com/repos/daurnimator/lua-http/subscription","commits_url":"https://api.github.com/repos/daurnimator/lua-http/commits{/sha}","git_commits_url":"https://api.github.com/repos/daurnimator/lua-http/git/commits{/sha}","comments_url":"https://api.github.com/repos/daurnimator/lua-http/comments{/number}","issue_comment_url":"https://api.github.com/repos/daurnimator/lua-http/issues/comments{/number}","contents_url":"https://api.github.com/repos/daurnimator/lua-http/contents/{+path}","compare_url":"https://api.github.com/repos/daurnimator/lua-http/compare/{base}...{head}","merges_url":"https://api.github.com/repos/daurnimator/lua-http/merges","archive_url":"https://api.github.com/repos/daurnimator/lua-http/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/daurnimator/lua-http/downloads","issues_url":"https://api.github.com/repos/daurnimator/lua-http/issues{/number}","pulls_url":"https://api.github.com/repos/daurnimator/lua-http/pulls{/number}","milestones_url":"https://api.github.com/repos/daurnimator/lua-http/milestones{/number}","notifications_url":"https://api.github.com/repos/daurnimator/lua-http/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/daurnimator/lua-http/labels{/name}","releases_url":"https://api.github.com/repos/daurnimator/lua-http/releases{/id}","deployments_url":"https://api.github.com/repos/daurnimator/lua-http/deployments","created_at":"2015-01-29T02:09:13Z","updated_at":"2016-11-09T07:26:04Z","pushed_at":"2016-11-10T08:24:20Z","git_url":"git://github.com/daurnimator/lua-http.git","ssh_url":"git@github.com:daurnimator/lua-http.git","clone_url":"https://github.com/daurnimator/lua-http.git","svn_url":"https://github.com/daurnimator/lua-http","homepage":"","size":1075,"stargazers_count":105,"watchers_count":105,"language":"Lua","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":12,"mirror_url":null,"open_issues_count":17,"forks":12,"open_issues":17,"watchers":105,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/daurnimator/lua-http/pulls/49"},"html":{"href":"https://github.com/daurnimator/lua-http/pull/49"},"issue":{"href":"https://api.github.com/repos/daurnimator/lua-http/issues/49"},"comments":{"href":"https://api.github.com/repos/daurnimator/lua-http/issues/49/comments"},"review_comments":{"href":"https://api.github.com/repos/daurnimator/lua-http/pulls/49/comments"},"review_comment":{"href":"https://api.github.com/repos/daurnimator/lua-http/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/daurnimator/lua-http/pulls/49/commits"},"statuses":{"href":"https://api.github.com/repos/daurnimator/lua-http/statuses/d91e1325fdecc5c619fef7a86939de841a456e36"}}}}
{"actor":{"display_login":"daurnimator"}}