{"action":"opened","number":70,"pull_request":{"url":"https://api.github.com/repos/markuspoerschke/iCal/pulls/70","id":67989418,"html_url":"https://github.com/markuspoerschke/iCal/pull/70","diff_url":"https://github.com/markuspoerschke/iCal/pull/70.diff","patch_url":"https://github.com/markuspoerschke/iCal/pull/70.patch","issue_url":"https://api.github.com/repos/markuspoerschke/iCal/issues/70","number":70,"state":"open","locked":false,"title":"Fix for UID not unique with uniqid()","user":{"login":"c33s","id":649209,"avatar_url":"https://avatars.githubusercontent.com/u/649209?v=3","gravatar_id":"","url":"https://api.github.com/users/c33s","html_url":"https://github.com/c33s","followers_url":"https://api.github.com/users/c33s/followers","following_url":"https://api.github.com/users/c33s/following{/other_user}","gists_url":"https://api.github.com/users/c33s/gists{/gist_id}","starred_url":"https://api.github.com/users/c33s/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c33s/subscriptions","organizations_url":"https://api.github.com/users/c33s/orgs","repos_url":"https://api.github.com/users/c33s/repos","events_url":"https://api.github.com/users/c33s/events{/privacy}","received_events_url":"https://api.github.com/users/c33s/received_events","type":"User","site_admin":false},"body":"on my windows php, the generated events in the ical file all have the same UID.\r\n\r\nmaybe it has something to do with this:\r\n> Under Cygwin, the more_entropy must be set to TRUE for this function to work. \r\nhttps://secure.php.net/manual/en/function.uniqid.php\r\n\r\nthe rfc5545 also shows more complex UID examples, maybe the complete UID generation should be refactored:\r\n> `UID:20070313T123432Z-456553@example.com`\r\n\r\n```\r\n3.8.4.7.  Unique Identifier\r\n\r\n   Property Name:  UID\r\n\r\n   Purpose:  This property defines the persistent, globally unique\r\n      identifier for the calendar component.\r\n\r\n   Value Type:  TEXT\r\n\r\n   Property Parameters:  IANA and non-standard property parameters can\r\n      be specified on this property.\r\n\r\n   Conformance:  The property MUST be specified in the \"VEVENT\",\r\n      \"VTODO\", \"VJOURNAL\", or \"VFREEBUSY\" calendar components.\r\n\r\n   Description:  The \"UID\" itself MUST be a globally unique identifier.\r\n      The generator of the identifier MUST guarantee that the identifier\r\n      is unique.  There are several algorithms that can be used to\r\n      accomplish this.  A good method to assure uniqueness is to put the\r\n      domain name or a domain literal IP address of the host on which\r\n      the identifier was created on the right-hand side of an \"@\", and\r\n      on the left-hand side, put a combination of the current calendar\r\n      date and time of day (i.e., formatted in as a DATE-TIME value)\r\n      along with some other currently unique (perhaps sequential)\r\n      identifier available on the system (for example, a process id\r\n      number).  Using a DATE-TIME value on the left-hand side and a\r\n      domain name or domain literal on the right-hand side makes it\r\n      possible to guarantee uniqueness since no two hosts should be\r\n      using the same domain name or IP address at the same time.  Though\r\n      other algorithms will work, it is RECOMMENDED that the right-hand\r\n      side contain some domain identifier (either of the host itself or\r\n      otherwise) such that the generator of the message identifier can\r\n      guarantee the uniqueness of the left-hand side within the scope of\r\n      that domain.\r\n```\r\nhttps://www.ietf.org/rfc/rfc5545.txt","created_at":"2016-04-27T02:55:28Z","updated_at":"2016-04-27T02:55:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/markuspoerschke/iCal/pulls/70/commits","review_comments_url":"https://api.github.com/repos/markuspoerschke/iCal/pulls/70/comments","review_comment_url":"https://api.github.com/repos/markuspoerschke/iCal/pulls/comments{/number}","comments_url":"https://api.github.com/repos/markuspoerschke/iCal/issues/70/comments","statuses_url":"https://api.github.com/repos/markuspoerschke/iCal/statuses/9a367e269a3e21bd306e581dd9ce58738c290a73","head":{"label":"c33s:patch-1","ref":"patch-1","sha":"9a367e269a3e21bd306e581dd9ce58738c290a73","user":{"login":"c33s","id":649209,"avatar_url":"https://avatars.githubusercontent.com/u/649209?v=3","gravatar_id":"","url":"https://api.github.com/users/c33s","html_url":"https://github.com/c33s","followers_url":"https://api.github.com/users/c33s/followers","following_url":"https://api.github.com/users/c33s/following{/other_user}","gists_url":"https://api.github.com/users/c33s/gists{/gist_id}","starred_url":"https://api.github.com/users/c33s/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c33s/subscriptions","organizations_url":"https://api.github.com/users/c33s/orgs","repos_url":"https://api.github.com/users/c33s/repos","events_url":"https://api.github.com/users/c33s/events{/privacy}","received_events_url":"https://api.github.com/users/c33s/received_events","type":"User","site_admin":false},"repo":{"id":57177897,"name":"iCal","full_name":"c33s/iCal","owner":{"login":"c33s","id":649209,"avatar_url":"https://avatars.githubusercontent.com/u/649209?v=3","gravatar_id":"","url":"https://api.github.com/users/c33s","html_url":"https://github.com/c33s","followers_url":"https://api.github.com/users/c33s/followers","following_url":"https://api.github.com/users/c33s/following{/other_user}","gists_url":"https://api.github.com/users/c33s/gists{/gist_id}","starred_url":"https://api.github.com/users/c33s/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/c33s/subscriptions","organizations_url":"https://api.github.com/users/c33s/orgs","repos_url":"https://api.github.com/users/c33s/repos","events_url":"https://api.github.com/users/c33s/events{/privacy}","received_events_url":"https://api.github.com/users/c33s/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/c33s/iCal","description":"iCal-creator for PHP","fork":true,"url":"https://api.github.com/repos/c33s/iCal","forks_url":"https://api.github.com/repos/c33s/iCal/forks","keys_url":"https://api.github.com/repos/c33s/iCal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/c33s/iCal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/c33s/iCal/teams","hooks_url":"https://api.github.com/repos/c33s/iCal/hooks","issue_events_url":"https://api.github.com/repos/c33s/iCal/issues/events{/number}","events_url":"https://api.github.com/repos/c33s/iCal/events","assignees_url":"https://api.github.com/repos/c33s/iCal/assignees{/user}","branches_url":"https://api.github.com/repos/c33s/iCal/branches{/branch}","tags_url":"https://api.github.com/repos/c33s/iCal/tags","blobs_url":"https://api.github.com/repos/c33s/iCal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/c33s/iCal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/c33s/iCal/git/refs{/sha}","trees_url":"https://api.github.com/repos/c33s/iCal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/c33s/iCal/statuses/{sha}","languages_url":"https://api.github.com/repos/c33s/iCal/languages","stargazers_url":"https://api.github.com/repos/c33s/iCal/stargazers","contributors_url":"https://api.github.com/repos/c33s/iCal/contributors","subscribers_url":"https://api.github.com/repos/c33s/iCal/subscribers","subscription_url":"https://api.github.com/repos/c33s/iCal/subscription","commits_url":"https://api.github.com/repos/c33s/iCal/commits{/sha}","git_commits_url":"https://api.github.com/repos/c33s/iCal/git/commits{/sha}","comments_url":"https://api.github.com/repos/c33s/iCal/comments{/number}","issue_comment_url":"https://api.github.com/repos/c33s/iCal/issues/comments{/number}","contents_url":"https://api.github.com/repos/c33s/iCal/contents/{+path}","compare_url":"https://api.github.com/repos/c33s/iCal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/c33s/iCal/merges","archive_url":"https://api.github.com/repos/c33s/iCal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/c33s/iCal/downloads","issues_url":"https://api.github.com/repos/c33s/iCal/issues{/number}","pulls_url":"https://api.github.com/repos/c33s/iCal/pulls{/number}","milestones_url":"https://api.github.com/repos/c33s/iCal/milestones{/number}","notifications_url":"https://api.github.com/repos/c33s/iCal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/c33s/iCal/labels{/name}","releases_url":"https://api.github.com/repos/c33s/iCal/releases{/id}","deployments_url":"https://api.github.com/repos/c33s/iCal/deployments","created_at":"2016-04-27T02:41:03Z","updated_at":"2016-04-27T02:41:04Z","pushed_at":"2016-04-27T02:51:08Z","git_url":"git://github.com/c33s/iCal.git","ssh_url":"git@github.com:c33s/iCal.git","clone_url":"https://github.com/c33s/iCal.git","svn_url":"https://github.com/c33s/iCal","homepage":"","size":267,"stargazers_count":0,"watchers_count":0,"language":"PHP","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":"markuspoerschke:master","ref":"master","sha":"390de179516f792c5dc087ba5ac3cd7877add963","user":{"login":"markuspoerschke","id":1222377,"avatar_url":"https://avatars.githubusercontent.com/u/1222377?v=3","gravatar_id":"","url":"https://api.github.com/users/markuspoerschke","html_url":"https://github.com/markuspoerschke","followers_url":"https://api.github.com/users/markuspoerschke/followers","following_url":"https://api.github.com/users/markuspoerschke/following{/other_user}","gists_url":"https://api.github.com/users/markuspoerschke/gists{/gist_id}","starred_url":"https://api.github.com/users/markuspoerschke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markuspoerschke/subscriptions","organizations_url":"https://api.github.com/users/markuspoerschke/orgs","repos_url":"https://api.github.com/users/markuspoerschke/repos","events_url":"https://api.github.com/users/markuspoerschke/events{/privacy}","received_events_url":"https://api.github.com/users/markuspoerschke/received_events","type":"User","site_admin":false},"repo":{"id":5752129,"name":"iCal","full_name":"markuspoerschke/iCal","owner":{"login":"markuspoerschke","id":1222377,"avatar_url":"https://avatars.githubusercontent.com/u/1222377?v=3","gravatar_id":"","url":"https://api.github.com/users/markuspoerschke","html_url":"https://github.com/markuspoerschke","followers_url":"https://api.github.com/users/markuspoerschke/followers","following_url":"https://api.github.com/users/markuspoerschke/following{/other_user}","gists_url":"https://api.github.com/users/markuspoerschke/gists{/gist_id}","starred_url":"https://api.github.com/users/markuspoerschke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markuspoerschke/subscriptions","organizations_url":"https://api.github.com/users/markuspoerschke/orgs","repos_url":"https://api.github.com/users/markuspoerschke/repos","events_url":"https://api.github.com/users/markuspoerschke/events{/privacy}","received_events_url":"https://api.github.com/users/markuspoerschke/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/markuspoerschke/iCal","description":"iCal-creator for PHP","fork":false,"url":"https://api.github.com/repos/markuspoerschke/iCal","forks_url":"https://api.github.com/repos/markuspoerschke/iCal/forks","keys_url":"https://api.github.com/repos/markuspoerschke/iCal/keys{/key_id}","collaborators_url":"https://api.github.com/repos/markuspoerschke/iCal/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/markuspoerschke/iCal/teams","hooks_url":"https://api.github.com/repos/markuspoerschke/iCal/hooks","issue_events_url":"https://api.github.com/repos/markuspoerschke/iCal/issues/events{/number}","events_url":"https://api.github.com/repos/markuspoerschke/iCal/events","assignees_url":"https://api.github.com/repos/markuspoerschke/iCal/assignees{/user}","branches_url":"https://api.github.com/repos/markuspoerschke/iCal/branches{/branch}","tags_url":"https://api.github.com/repos/markuspoerschke/iCal/tags","blobs_url":"https://api.github.com/repos/markuspoerschke/iCal/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/markuspoerschke/iCal/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/markuspoerschke/iCal/git/refs{/sha}","trees_url":"https://api.github.com/repos/markuspoerschke/iCal/git/trees{/sha}","statuses_url":"https://api.github.com/repos/markuspoerschke/iCal/statuses/{sha}","languages_url":"https://api.github.com/repos/markuspoerschke/iCal/languages","stargazers_url":"https://api.github.com/repos/markuspoerschke/iCal/stargazers","contributors_url":"https://api.github.com/repos/markuspoerschke/iCal/contributors","subscribers_url":"https://api.github.com/repos/markuspoerschke/iCal/subscribers","subscription_url":"https://api.github.com/repos/markuspoerschke/iCal/subscription","commits_url":"https://api.github.com/repos/markuspoerschke/iCal/commits{/sha}","git_commits_url":"https://api.github.com/repos/markuspoerschke/iCal/git/commits{/sha}","comments_url":"https://api.github.com/repos/markuspoerschke/iCal/comments{/number}","issue_comment_url":"https://api.github.com/repos/markuspoerschke/iCal/issues/comments{/number}","contents_url":"https://api.github.com/repos/markuspoerschke/iCal/contents/{+path}","compare_url":"https://api.github.com/repos/markuspoerschke/iCal/compare/{base}...{head}","merges_url":"https://api.github.com/repos/markuspoerschke/iCal/merges","archive_url":"https://api.github.com/repos/markuspoerschke/iCal/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/markuspoerschke/iCal/downloads","issues_url":"https://api.github.com/repos/markuspoerschke/iCal/issues{/number}","pulls_url":"https://api.github.com/repos/markuspoerschke/iCal/pulls{/number}","milestones_url":"https://api.github.com/repos/markuspoerschke/iCal/milestones{/number}","notifications_url":"https://api.github.com/repos/markuspoerschke/iCal/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/markuspoerschke/iCal/labels{/name}","releases_url":"https://api.github.com/repos/markuspoerschke/iCal/releases{/id}","deployments_url":"https://api.github.com/repos/markuspoerschke/iCal/deployments","created_at":"2012-09-10T16:12:39Z","updated_at":"2016-04-26T15:43:34Z","pushed_at":"2016-04-27T02:55:29Z","git_url":"git://github.com/markuspoerschke/iCal.git","ssh_url":"git@github.com:markuspoerschke/iCal.git","clone_url":"https://github.com/markuspoerschke/iCal.git","svn_url":"https://github.com/markuspoerschke/iCal","homepage":"","size":283,"stargazers_count":185,"watchers_count":185,"language":"PHP","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":61,"mirror_url":null,"open_issues_count":16,"forks":61,"open_issues":16,"watchers":185,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/markuspoerschke/iCal/pulls/70"},"html":{"href":"https://github.com/markuspoerschke/iCal/pull/70"},"issue":{"href":"https://api.github.com/repos/markuspoerschke/iCal/issues/70"},"comments":{"href":"https://api.github.com/repos/markuspoerschke/iCal/issues/70/comments"},"review_comments":{"href":"https://api.github.com/repos/markuspoerschke/iCal/pulls/70/comments"},"review_comment":{"href":"https://api.github.com/repos/markuspoerschke/iCal/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/markuspoerschke/iCal/pulls/70/commits"},"statuses":{"href":"https://api.github.com/repos/markuspoerschke/iCal/statuses/9a367e269a3e21bd306e581dd9ce58738c290a73"}},"merged":false,"mergeable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"commits":1,"additions":1,"deletions":1,"changed_files":1}}