[{"id":"36976902318","type":"PullRequestEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"opened","number":94,"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/94","id":1796604302,"node_id":"PR_kwDOKpXc785rFgGO","html_url":"https://github.com/hirethunk/verbs/pull/94","diff_url":"https://github.com/hirethunk/verbs/pull/94.diff","patch_url":"https://github.com/hirethunk/verbs/pull/94.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/94","number":94,"state":"open","locked":false,"title":"Route state binding","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"This lets you do:\r\n\r\n```php\r\nRoute::get('/users/{user}', function (UserState $user) {\r\n // \r\n}\r\n```\r\n\r\nInstead of:\r\n\r\n```php\r\nRoute::get('/users/{user_state_id}', function (int $user_state_id) {\r\n $user = UserState::load($user_state_id);\r\n}\r\n```","created_at":"2024-03-28T17:59:16Z","updated_at":"2024-03-28T17:59:16Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/94/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/94/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/94/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/c77c82da337ed82224c366e33b70a316691ca67d","head":{"label":"hirethunk:route-state-binding","ref":"route-state-binding","sha":"c77c82da337ed82224c366e33b70a316691ca67d","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T17:59:17Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22460,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":9,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":9,"watchers":197,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"f230f5e8bb1e3b4faa0e0f350336527ac68b15bd","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T17:59:17Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22460,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":9,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":9,"watchers":197,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/94"},"html":{"href":"https://github.com/hirethunk/verbs/pull/94"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/94"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/94/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/94/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/94/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/c77c82da337ed82224c366e33b70a316691ca67d"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null,"merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":3,"additions":301,"deletions":11,"changed_files":10}},"public":true,"created_at":"2024-03-28T17:59:18Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36976851370","type":"CreateEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"ref":"route-state-binding","ref_type":"branch","master_branch":"main","description":"Verbs is an event sourcing package for PHP artisans","pusher_type":"user"},"public":true,"created_at":"2024-03-28T17:57:31Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36972724203","type":"PullRequestEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"opened","number":93,"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/93","id":1796368874,"node_id":"PR_kwDOKpXc785rEmnq","html_url":"https://github.com/hirethunk/verbs/pull/93","diff_url":"https://github.com/hirethunk/verbs/pull/93.diff","patch_url":"https://github.com/hirethunk/verbs/pull/93.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/93","number":93,"state":"open","locked":false,"title":"Allow injecting multiple states into `handle()`","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"Right now if you're dealing with multiple state objects of the same type, you need to access them via `$this->states()->get($alias)` which is cumbersome. This PR lets you inject the states by alias name:\r\n\r\n```php\r\nclass DemoState extends State\r\n{\r\n public function __construct(\r\n #[StateId(UserState::class)] $user1_id,\r\n #[StateId(UserState::class)] $user2_id,\r\n ) {}\r\n \r\n public function handle(UserState $user1, UserState $user2)\r\n {\r\n $this->assert($user1->id === $this->user1_id);\r\n $this->assert($user2->id === $this->user2_id);\r\n }\r\n}\r\n```","created_at":"2024-03-28T15:45:40Z","updated_at":"2024-03-28T15:45:40Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/93/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/93/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/93/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/13797d3f1283dd52167cea60934e867e909faaa4","head":{"label":"hirethunk:handle-injection","ref":"handle-injection","sha":"13797d3f1283dd52167cea60934e867e909faaa4","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T15:45:40Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22452,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":8,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":8,"watchers":197,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"f230f5e8bb1e3b4faa0e0f350336527ac68b15bd","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T15:45:40Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22452,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":8,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":8,"watchers":197,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/93"},"html":{"href":"https://github.com/hirethunk/verbs/pull/93"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/93"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/93/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/93/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/93/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/13797d3f1283dd52167cea60934e867e909faaa4"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null,"merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":108,"deletions":3,"changed_files":3}},"public":true,"created_at":"2024-03-28T15:45:45Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36972603951","type":"CreateEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"ref":"handle-injection","ref_type":"branch","master_branch":"main","description":"Verbs is an event sourcing package for PHP artisans","pusher_type":"user"},"public":true,"created_at":"2024-03-28T15:42:22Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36971968667","type":"PullRequestEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"opened","number":92,"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/92","id":1796328549,"node_id":"PR_kwDOKpXc785rEcxl","html_url":"https://github.com/hirethunk/verbs/pull/92","diff_url":"https://github.com/hirethunk/verbs/pull/92.diff","patch_url":"https://github.com/hirethunk/verbs/pull/92.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/92","number":92,"state":"open","locked":false,"title":"Add State::loadOrFail","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":null,"created_at":"2024-03-28T15:24:44Z","updated_at":"2024-03-28T15:24:44Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/92/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/92/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/92/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/97d0c18c3368c0daafc73adb074cadc28f7f35a0","head":{"label":"hirethunk:load-or-fail","ref":"load-or-fail","sha":"97d0c18c3368c0daafc73adb074cadc28f7f35a0","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T15:24:45Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22452,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":7,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":7,"watchers":197,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"f230f5e8bb1e3b4faa0e0f350336527ac68b15bd","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T15:24:45Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22452,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":7,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":7,"watchers":197,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/92"},"html":{"href":"https://github.com/hirethunk/verbs/pull/92"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/92"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/92/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/92/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/92/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/97d0c18c3368c0daafc73adb074cadc28f7f35a0"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null,"merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":237,"deletions":10,"changed_files":8}},"public":true,"created_at":"2024-03-28T15:24:46Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36971964003","type":"CreateEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"ref":"load-or-fail","ref_type":"branch","master_branch":"main","description":"Verbs is an event sourcing package for PHP artisans","pusher_type":"user"},"public":true,"created_at":"2024-03-28T15:24:39Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36969507448","type":"PullRequestEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"opened","number":91,"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/91","id":1796193663,"node_id":"PR_kwDOKpXc785rD71_","html_url":"https://github.com/hirethunk/verbs/pull/91","diff_url":"https://github.com/hirethunk/verbs/pull/91.diff","patch_url":"https://github.com/hirethunk/verbs/pull/91.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/91","number":91,"state":"open","locked":false,"title":"Allow for configuring serializer context","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":null,"created_at":"2024-03-28T14:17:28Z","updated_at":"2024-03-28T14:17:28Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/91/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/91/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/91/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/b84dc4c0a15be5d66937a1084e4cd5c9bcc0f0a5","head":{"label":"hirethunk:serializer-context","ref":"serializer-context","sha":"b84dc4c0a15be5d66937a1084e4cd5c9bcc0f0a5","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T14:17:29Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22449,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":6,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":6,"watchers":197,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"f230f5e8bb1e3b4faa0e0f350336527ac68b15bd","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-27T23:24:11Z","pushed_at":"2024-03-28T14:17:29Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22449,"stargazers_count":197,"watchers_count":197,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":6,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":6,"watchers":197,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/91"},"html":{"href":"https://github.com/hirethunk/verbs/pull/91"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/91"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/91/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/91/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/91/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/b84dc4c0a15be5d66937a1084e4cd5c9bcc0f0a5"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null,"merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":63,"deletions":5,"changed_files":4}},"public":true,"created_at":"2024-03-28T14:17:30Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36969501154","type":"CreateEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"ref":"serializer-context","ref_type":"branch","master_branch":"main","description":"Verbs is an event sourcing package for PHP artisans","pusher_type":"user"},"public":true,"created_at":"2024-03-28T14:17:20Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36944318412","type":"PullRequestEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"opened","number":90,"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/90","id":1794768835,"node_id":"PR_kwDOKpXc785q-f_D","html_url":"https://github.com/hirethunk/verbs/pull/90","diff_url":"https://github.com/hirethunk/verbs/pull/90.diff","patch_url":"https://github.com/hirethunk/verbs/pull/90.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/90","number":90,"state":"open","locked":false,"title":"Auto-commit on DB transaction","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"If you fire Verbs events during a database transaction, you want those events to commit to the DB inside that transaction. This PR makes Verbs auto-commit on the `TransactionCommitting` event.","created_at":"2024-03-27T19:43:10Z","updated_at":"2024-03-27T19:43:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/90/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/90/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/90/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/5fc4d24ae3a39ea9b808e8fb0b9e6f0109ccf96b","head":{"label":"hirethunk:auto-commit-db","ref":"auto-commit-db","sha":"5fc4d24ae3a39ea9b808e8fb0b9e6f0109ccf96b","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-25T08:51:14Z","pushed_at":"2024-03-27T19:43:10Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22448,"stargazers_count":195,"watchers_count":195,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":195,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"f230f5e8bb1e3b4faa0e0f350336527ac68b15bd","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-25T08:51:14Z","pushed_at":"2024-03-27T19:43:10Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22448,"stargazers_count":195,"watchers_count":195,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":195,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/90"},"html":{"href":"https://github.com/hirethunk/verbs/pull/90"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/90"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/90/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/90/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/90/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/5fc4d24ae3a39ea9b808e8fb0b9e6f0109ccf96b"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null,"merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":1,"additions":17,"deletions":4,"changed_files":2}},"public":true,"created_at":"2024-03-27T19:43:12Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36944294099","type":"CreateEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"ref":"auto-commit-db","ref_type":"branch","master_branch":"main","description":"Verbs is an event sourcing package for PHP artisans","pusher_type":"user"},"public":true,"created_at":"2024-03-27T19:42:16Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36907343738","type":"WatchEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":762355055,"name":"echolabsdev/sparkle","url":"https://api.github.com/repos/echolabsdev/sparkle"},"payload":{"action":"started"},"public":true,"created_at":"2024-03-26T20:26:52Z","org":{"id":161056614,"login":"echolabsdev","gravatar_id":"","url":"https://api.github.com/orgs/echolabsdev","avatar_url":"https://avatars.githubusercontent.com/u/161056614?"}},{"id":"36865425216","type":"PushEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":715135571,"name":"hirethunk/verbs-docs","url":"https://api.github.com/repos/hirethunk/verbs-docs"},"payload":{"repository_id":715135571,"push_id":17698117493,"size":1,"distinct_size":1,"ref":"refs/heads/main","head":"2c82438c038eefa61f527f99d05dcdaf7322a205","before":"6fa14a3f655f011a7d5e9fc0cda2e2fd862a7e13","commits":[{"sha":"2c82438c038eefa61f527f99d05dcdaf7322a205","author":{"email":"inxilpro@users.noreply.github.com","name":"Chris Morrell"},"message":"Open Graph images","distinct":true,"url":"https://api.github.com/repos/hirethunk/verbs-docs/commits/2c82438c038eefa61f527f99d05dcdaf7322a205"}]},"public":true,"created_at":"2024-03-25T18:39:37Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36865057516","type":"PushEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":715135571,"name":"hirethunk/verbs-docs","url":"https://api.github.com/repos/hirethunk/verbs-docs"},"payload":{"repository_id":715135571,"push_id":17697945815,"size":1,"distinct_size":1,"ref":"refs/heads/main","head":"6fa14a3f655f011a7d5e9fc0cda2e2fd862a7e13","before":"971a3b13265ab574df2839c03dfc3f6b750830cc","commits":[{"sha":"6fa14a3f655f011a7d5e9fc0cda2e2fd862a7e13","author":{"email":"inxilpro@users.noreply.github.com","name":"Chris Morrell"},"message":"Undo the thing Daniel broke :P","distinct":true,"url":"https://api.github.com/repos/hirethunk/verbs-docs/commits/6fa14a3f655f011a7d5e9fc0cda2e2fd862a7e13"}]},"public":true,"created_at":"2024-03-25T18:26:42Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36862906980","type":"WatchEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":724854743,"name":"ml-explore/mlx","url":"https://api.github.com/repos/ml-explore/mlx"},"payload":{"action":"started"},"public":true,"created_at":"2024-03-25T17:16:01Z","org":{"id":102832242,"login":"ml-explore","gravatar_id":"","url":"https://api.github.com/orgs/ml-explore","avatar_url":"https://avatars.githubusercontent.com/u/102832242?"}},{"id":"36856831309","type":"CreateEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":649880124,"name":"glhd/bits","url":"https://api.github.com/repos/glhd/bits"},"payload":{"ref":"0.4.1","ref_type":"tag","master_branch":"main","description":null,"pusher_type":"user"},"public":true,"created_at":"2024-03-25T14:24:56Z","org":{"id":12897665,"login":"glhd","gravatar_id":"","url":"https://api.github.com/orgs/glhd","avatar_url":"https://avatars.githubusercontent.com/u/12897665?"}},{"id":"36856828717","type":"ReleaseEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":649880124,"name":"glhd/bits","url":"https://api.github.com/repos/glhd/bits"},"payload":{"action":"published","release":{"url":"https://api.github.com/repos/glhd/bits/releases/148230338","assets_url":"https://api.github.com/repos/glhd/bits/releases/148230338/assets","upload_url":"https://uploads.github.com/repos/glhd/bits/releases/148230338/assets{?name,label}","html_url":"https://github.com/glhd/bits/releases/tag/0.4.1","id":148230338,"author":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"node_id":"RE_kwDOJrxiPM4I1dDC","tag_name":"0.4.1","target_commitish":"main","name":"0.4.1","draft":false,"prerelease":true,"created_at":"2024-03-25T14:24:22Z","published_at":"2024-03-25T14:24:50Z","assets":[],"tarball_url":"https://api.github.com/repos/glhd/bits/tarball/0.4.1","zipball_url":"https://api.github.com/repos/glhd/bits/zipball/0.4.1","body":"## What's Changed\r\n* Support Carbon v3 by @matthewpaulking in https://github.com/glhd/bits/pull/5\r\n\r\n## New Contributors\r\n* @matthewpaulking made their first contribution in https://github.com/glhd/bits/pull/5\r\n\r\n**Full Changelog**: https://github.com/glhd/bits/compare/0.4.0...0.4.1","mentions_count":1,"mentions":[{"avatar_url":"https://avatars.githubusercontent.com/u/32152670?v=4","login":"matthewpaulking","profile_name":"Matthew King","profile_url":"https://github.com/matthewpaulking","avatar_user_actor":true}],"short_description_html":"
What's Changed
\n\nNew Contributors
\n\nFull Changelog: 0.4.0...0.4.1
","is_short_description_html_truncated":false}},"public":true,"created_at":"2024-03-25T14:24:51Z","org":{"id":12897665,"login":"glhd","gravatar_id":"","url":"https://api.github.com/orgs/glhd","avatar_url":"https://avatars.githubusercontent.com/u/12897665?"}},{"id":"36856813138","type":"PushEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":649880124,"name":"glhd/bits","url":"https://api.github.com/repos/glhd/bits"},"payload":{"repository_id":649880124,"push_id":17694176649,"size":1,"distinct_size":1,"ref":"refs/heads/main","head":"c411f92f7f836559f6bffd1446b6522ef6c27d49","before":"3b276cd41235e80f1b3ea4699f6dd69c25b8e348","commits":[{"sha":"c411f92f7f836559f6bffd1446b6522ef6c27d49","author":{"email":"32152670+matthewpaulking@users.noreply.github.com","name":"Matthew King"},"message":"Support Carbon v3 (#5)\n\n* add carbon verion 3 to composer.json\r\n\r\n* cast CarbonInterval to integer\r\n\r\nsince v3 uses floats for the total* properties","distinct":true,"url":"https://api.github.com/repos/glhd/bits/commits/c411f92f7f836559f6bffd1446b6522ef6c27d49"}]},"public":true,"created_at":"2024-03-25T14:24:24Z","org":{"id":12897665,"login":"glhd","gravatar_id":"","url":"https://api.github.com/orgs/glhd","avatar_url":"https://avatars.githubusercontent.com/u/12897665?"}},{"id":"36856812742","type":"PullRequestEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":649880124,"name":"glhd/bits","url":"https://api.github.com/repos/glhd/bits"},"payload":{"action":"closed","number":5,"pull_request":{"url":"https://api.github.com/repos/glhd/bits/pulls/5","id":1779338745,"node_id":"PR_kwDOJrxiPM5qDo35","html_url":"https://github.com/glhd/bits/pull/5","diff_url":"https://github.com/glhd/bits/pull/5.diff","patch_url":"https://github.com/glhd/bits/pull/5.patch","issue_url":"https://api.github.com/repos/glhd/bits/issues/5","number":5,"state":"closed","locked":false,"title":"Support Carbon v3","user":{"login":"matthewpaulking","id":32152670,"node_id":"MDQ6VXNlcjMyMTUyNjcw","avatar_url":"https://avatars.githubusercontent.com/u/32152670?v=4","gravatar_id":"","url":"https://api.github.com/users/matthewpaulking","html_url":"https://github.com/matthewpaulking","followers_url":"https://api.github.com/users/matthewpaulking/followers","following_url":"https://api.github.com/users/matthewpaulking/following{/other_user}","gists_url":"https://api.github.com/users/matthewpaulking/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewpaulking/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewpaulking/subscriptions","organizations_url":"https://api.github.com/users/matthewpaulking/orgs","repos_url":"https://api.github.com/users/matthewpaulking/repos","events_url":"https://api.github.com/users/matthewpaulking/events{/privacy}","received_events_url":"https://api.github.com/users/matthewpaulking/received_events","type":"User","site_admin":false},"body":"I was having trouble installing `bits` in a brand new Laravel 11 app, which installed Carbon v3. Currently `bits` only supports v2.\r\n\r\nIn version 3, the Carbon `->total*` properties are now floats instead of integers (see https://github.com/laravel/framework/pull/49764/commits/d1ff9a80b28fd72f8f37aa70bd5b8ab3aa26f1b0). This was causing any test using `assertSlept` to fail (e.g, `$interval->totalMicroseconds === 1` turns into `$interval->totalMicroseconds === 1.0`). \r\n\r\nI added a cast back into an `int` to fix the failing tests--but maybe it would be better to cast to `float`?","created_at":"2024-03-19T08:43:18Z","updated_at":"2024-03-25T14:24:22Z","closed_at":"2024-03-25T14:24:22Z","merged_at":"2024-03-25T14:24:22Z","merge_commit_sha":"c411f92f7f836559f6bffd1446b6522ef6c27d49","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/glhd/bits/pulls/5/commits","review_comments_url":"https://api.github.com/repos/glhd/bits/pulls/5/comments","review_comment_url":"https://api.github.com/repos/glhd/bits/pulls/comments{/number}","comments_url":"https://api.github.com/repos/glhd/bits/issues/5/comments","statuses_url":"https://api.github.com/repos/glhd/bits/statuses/cbe8807565e3130b0fbc01f46ec3db92e3c34508","head":{"label":"matthewpaulking:carbon-v3","ref":"carbon-v3","sha":"cbe8807565e3130b0fbc01f46ec3db92e3c34508","user":{"login":"matthewpaulking","id":32152670,"node_id":"MDQ6VXNlcjMyMTUyNjcw","avatar_url":"https://avatars.githubusercontent.com/u/32152670?v=4","gravatar_id":"","url":"https://api.github.com/users/matthewpaulking","html_url":"https://github.com/matthewpaulking","followers_url":"https://api.github.com/users/matthewpaulking/followers","following_url":"https://api.github.com/users/matthewpaulking/following{/other_user}","gists_url":"https://api.github.com/users/matthewpaulking/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewpaulking/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewpaulking/subscriptions","organizations_url":"https://api.github.com/users/matthewpaulking/orgs","repos_url":"https://api.github.com/users/matthewpaulking/repos","events_url":"https://api.github.com/users/matthewpaulking/events{/privacy}","received_events_url":"https://api.github.com/users/matthewpaulking/received_events","type":"User","site_admin":false},"repo":{"id":774206592,"node_id":"R_kgDOLiV0gA","name":"bits","full_name":"matthewpaulking/bits","private":false,"owner":{"login":"matthewpaulking","id":32152670,"node_id":"MDQ6VXNlcjMyMTUyNjcw","avatar_url":"https://avatars.githubusercontent.com/u/32152670?v=4","gravatar_id":"","url":"https://api.github.com/users/matthewpaulking","html_url":"https://github.com/matthewpaulking","followers_url":"https://api.github.com/users/matthewpaulking/followers","following_url":"https://api.github.com/users/matthewpaulking/following{/other_user}","gists_url":"https://api.github.com/users/matthewpaulking/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewpaulking/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewpaulking/subscriptions","organizations_url":"https://api.github.com/users/matthewpaulking/orgs","repos_url":"https://api.github.com/users/matthewpaulking/repos","events_url":"https://api.github.com/users/matthewpaulking/events{/privacy}","received_events_url":"https://api.github.com/users/matthewpaulking/received_events","type":"User","site_admin":false},"html_url":"https://github.com/matthewpaulking/bits","description":null,"fork":true,"url":"https://api.github.com/repos/matthewpaulking/bits","forks_url":"https://api.github.com/repos/matthewpaulking/bits/forks","keys_url":"https://api.github.com/repos/matthewpaulking/bits/keys{/key_id}","collaborators_url":"https://api.github.com/repos/matthewpaulking/bits/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/matthewpaulking/bits/teams","hooks_url":"https://api.github.com/repos/matthewpaulking/bits/hooks","issue_events_url":"https://api.github.com/repos/matthewpaulking/bits/issues/events{/number}","events_url":"https://api.github.com/repos/matthewpaulking/bits/events","assignees_url":"https://api.github.com/repos/matthewpaulking/bits/assignees{/user}","branches_url":"https://api.github.com/repos/matthewpaulking/bits/branches{/branch}","tags_url":"https://api.github.com/repos/matthewpaulking/bits/tags","blobs_url":"https://api.github.com/repos/matthewpaulking/bits/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/matthewpaulking/bits/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/matthewpaulking/bits/git/refs{/sha}","trees_url":"https://api.github.com/repos/matthewpaulking/bits/git/trees{/sha}","statuses_url":"https://api.github.com/repos/matthewpaulking/bits/statuses/{sha}","languages_url":"https://api.github.com/repos/matthewpaulking/bits/languages","stargazers_url":"https://api.github.com/repos/matthewpaulking/bits/stargazers","contributors_url":"https://api.github.com/repos/matthewpaulking/bits/contributors","subscribers_url":"https://api.github.com/repos/matthewpaulking/bits/subscribers","subscription_url":"https://api.github.com/repos/matthewpaulking/bits/subscription","commits_url":"https://api.github.com/repos/matthewpaulking/bits/commits{/sha}","git_commits_url":"https://api.github.com/repos/matthewpaulking/bits/git/commits{/sha}","comments_url":"https://api.github.com/repos/matthewpaulking/bits/comments{/number}","issue_comment_url":"https://api.github.com/repos/matthewpaulking/bits/issues/comments{/number}","contents_url":"https://api.github.com/repos/matthewpaulking/bits/contents/{+path}","compare_url":"https://api.github.com/repos/matthewpaulking/bits/compare/{base}...{head}","merges_url":"https://api.github.com/repos/matthewpaulking/bits/merges","archive_url":"https://api.github.com/repos/matthewpaulking/bits/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/matthewpaulking/bits/downloads","issues_url":"https://api.github.com/repos/matthewpaulking/bits/issues{/number}","pulls_url":"https://api.github.com/repos/matthewpaulking/bits/pulls{/number}","milestones_url":"https://api.github.com/repos/matthewpaulking/bits/milestones{/number}","notifications_url":"https://api.github.com/repos/matthewpaulking/bits/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/matthewpaulking/bits/labels{/name}","releases_url":"https://api.github.com/repos/matthewpaulking/bits/releases{/id}","deployments_url":"https://api.github.com/repos/matthewpaulking/bits/deployments","created_at":"2024-03-19T06:10:42Z","updated_at":"2024-03-19T06:10:42Z","pushed_at":"2024-03-19T08:14:41Z","git_url":"git://github.com/matthewpaulking/bits.git","ssh_url":"git@github.com:matthewpaulking/bits.git","clone_url":"https://github.com/matthewpaulking/bits.git","svn_url":"https://github.com/matthewpaulking/bits","homepage":null,"size":98,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"has_discussions":false,"forks_count":0,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":0,"open_issues":0,"watchers":0,"default_branch":"main"}},"base":{"label":"glhd:main","ref":"main","sha":"3b276cd41235e80f1b3ea4699f6dd69c25b8e348","user":{"login":"glhd","id":12897665,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyODk3NjY1","avatar_url":"https://avatars.githubusercontent.com/u/12897665?v=4","gravatar_id":"","url":"https://api.github.com/users/glhd","html_url":"https://github.com/glhd","followers_url":"https://api.github.com/users/glhd/followers","following_url":"https://api.github.com/users/glhd/following{/other_user}","gists_url":"https://api.github.com/users/glhd/gists{/gist_id}","starred_url":"https://api.github.com/users/glhd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glhd/subscriptions","organizations_url":"https://api.github.com/users/glhd/orgs","repos_url":"https://api.github.com/users/glhd/repos","events_url":"https://api.github.com/users/glhd/events{/privacy}","received_events_url":"https://api.github.com/users/glhd/received_events","type":"Organization","site_admin":false},"repo":{"id":649880124,"node_id":"R_kgDOJrxiPA","name":"bits","full_name":"glhd/bits","private":false,"owner":{"login":"glhd","id":12897665,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyODk3NjY1","avatar_url":"https://avatars.githubusercontent.com/u/12897665?v=4","gravatar_id":"","url":"https://api.github.com/users/glhd","html_url":"https://github.com/glhd","followers_url":"https://api.github.com/users/glhd/followers","following_url":"https://api.github.com/users/glhd/following{/other_user}","gists_url":"https://api.github.com/users/glhd/gists{/gist_id}","starred_url":"https://api.github.com/users/glhd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glhd/subscriptions","organizations_url":"https://api.github.com/users/glhd/orgs","repos_url":"https://api.github.com/users/glhd/repos","events_url":"https://api.github.com/users/glhd/events{/privacy}","received_events_url":"https://api.github.com/users/glhd/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/glhd/bits","description":null,"fork":false,"url":"https://api.github.com/repos/glhd/bits","forks_url":"https://api.github.com/repos/glhd/bits/forks","keys_url":"https://api.github.com/repos/glhd/bits/keys{/key_id}","collaborators_url":"https://api.github.com/repos/glhd/bits/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/glhd/bits/teams","hooks_url":"https://api.github.com/repos/glhd/bits/hooks","issue_events_url":"https://api.github.com/repos/glhd/bits/issues/events{/number}","events_url":"https://api.github.com/repos/glhd/bits/events","assignees_url":"https://api.github.com/repos/glhd/bits/assignees{/user}","branches_url":"https://api.github.com/repos/glhd/bits/branches{/branch}","tags_url":"https://api.github.com/repos/glhd/bits/tags","blobs_url":"https://api.github.com/repos/glhd/bits/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/glhd/bits/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/glhd/bits/git/refs{/sha}","trees_url":"https://api.github.com/repos/glhd/bits/git/trees{/sha}","statuses_url":"https://api.github.com/repos/glhd/bits/statuses/{sha}","languages_url":"https://api.github.com/repos/glhd/bits/languages","stargazers_url":"https://api.github.com/repos/glhd/bits/stargazers","contributors_url":"https://api.github.com/repos/glhd/bits/contributors","subscribers_url":"https://api.github.com/repos/glhd/bits/subscribers","subscription_url":"https://api.github.com/repos/glhd/bits/subscription","commits_url":"https://api.github.com/repos/glhd/bits/commits{/sha}","git_commits_url":"https://api.github.com/repos/glhd/bits/git/commits{/sha}","comments_url":"https://api.github.com/repos/glhd/bits/comments{/number}","issue_comment_url":"https://api.github.com/repos/glhd/bits/issues/comments{/number}","contents_url":"https://api.github.com/repos/glhd/bits/contents/{+path}","compare_url":"https://api.github.com/repos/glhd/bits/compare/{base}...{head}","merges_url":"https://api.github.com/repos/glhd/bits/merges","archive_url":"https://api.github.com/repos/glhd/bits/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/glhd/bits/downloads","issues_url":"https://api.github.com/repos/glhd/bits/issues{/number}","pulls_url":"https://api.github.com/repos/glhd/bits/pulls{/number}","milestones_url":"https://api.github.com/repos/glhd/bits/milestones{/number}","notifications_url":"https://api.github.com/repos/glhd/bits/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/glhd/bits/labels{/name}","releases_url":"https://api.github.com/repos/glhd/bits/releases{/id}","deployments_url":"https://api.github.com/repos/glhd/bits/deployments","created_at":"2023-06-05T21:00:16Z","updated_at":"2024-03-23T07:22:22Z","pushed_at":"2024-03-25T14:24:23Z","git_url":"git://github.com/glhd/bits.git","ssh_url":"git@github.com:glhd/bits.git","clone_url":"https://github.com/glhd/bits.git","svn_url":"https://github.com/glhd/bits","homepage":null,"size":102,"stargazers_count":64,"watchers_count":64,"language":"PHP","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"has_discussions":false,"forks_count":10,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":2,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":10,"open_issues":2,"watchers":64,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/glhd/bits/pulls/5"},"html":{"href":"https://github.com/glhd/bits/pull/5"},"issue":{"href":"https://api.github.com/repos/glhd/bits/issues/5"},"comments":{"href":"https://api.github.com/repos/glhd/bits/issues/5/comments"},"review_comments":{"href":"https://api.github.com/repos/glhd/bits/pulls/5/comments"},"review_comment":{"href":"https://api.github.com/repos/glhd/bits/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/glhd/bits/pulls/5/commits"},"statuses":{"href":"https://api.github.com/repos/glhd/bits/statuses/cbe8807565e3130b0fbc01f46ec3db92e3c34508"}},"author_association":"NONE","auto_merge":null,"active_lock_reason":null,"merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":2,"additions":4,"deletions":4,"changed_files":4}},"public":true,"created_at":"2024-03-25T14:24:23Z","org":{"id":12897665,"login":"glhd","gravatar_id":"","url":"https://api.github.com/orgs/glhd","avatar_url":"https://avatars.githubusercontent.com/u/12897665?"}},{"id":"36824371723","type":"CreateEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"ref":"v0.2.0","ref_type":"tag","master_branch":"main","description":"Verbs is an event sourcing package for PHP artisans","pusher_type":"user"},"public":true,"created_at":"2024-03-23T20:37:56Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824371720","type":"ReleaseEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"published","release":{"url":"https://api.github.com/repos/hirethunk/verbs/releases/148059076","assets_url":"https://api.github.com/repos/hirethunk/verbs/releases/148059076/assets","upload_url":"https://uploads.github.com/repos/hirethunk/verbs/releases/148059076/assets{?name,label}","html_url":"https://github.com/hirethunk/verbs/releases/tag/v0.2.0","id":148059076,"author":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"node_id":"RE_kwDOKpXc784I0zPE","tag_name":"v0.2.0","target_commitish":"main","name":"v0.2.0","draft":false,"prerelease":false,"created_at":"2024-03-23T20:36:13Z","published_at":"2024-03-23T20:37:55Z","assets":[],"tarball_url":"https://api.github.com/repos/hirethunk/verbs/tarball/v0.2.0","zipball_url":"https://api.github.com/repos/hirethunk/verbs/zipball/v0.2.0","body":"## What's Changed\r\n* Auto-commit after each job is processed by @inxilpro in https://github.com/hirethunk/verbs/pull/79\r\n* Normalize how we handle states in handle & replay by @inxilpro in https://github.com/hirethunk/verbs/pull/80\r\n* Update glhd/bits for Laravel 11 compatibility by @peterfox in https://github.com/hirethunk/verbs/pull/88\r\n\r\n## New Contributors\r\n* @peterfox made their first contribution in https://github.com/hirethunk/verbs/pull/88\r\n\r\n**Full Changelog**: https://github.com/hirethunk/verbs/compare/v0.1.2...v0.2.0","mentions_count":2,"mentions":[{"avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","login":"inxilpro","profile_name":"Chris Morrell","profile_url":"https://github.com/inxilpro","avatar_user_actor":true},{"avatar_url":"https://avatars.githubusercontent.com/u/1716506?v=4","login":"peterfox","profile_name":"Peter Fox","profile_url":"https://github.com/peterfox","avatar_user_actor":true}],"short_description_html":"What's Changed
\n\n- Auto-commit after each job is processed by @inxilpro in #79\n
\n- Normalize how we handle states in handle & replay by @inxilpro in #80\n
\n- Update glhd/bits for Laravel 11 compatibility by @p…\n
\n
","is_short_description_html_truncated":true}},"public":true,"created_at":"2024-03-23T20:37:56Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824360109","type":"PushEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"repository_id":714464495,"push_id":17676447879,"size":1,"distinct_size":1,"ref":"refs/heads/main","head":"695ecf865a1a88ca69148a68d7500b3e1e755626","before":"6420725dc24dc969f6800f024604153ef0819083","commits":[{"sha":"695ecf865a1a88ca69148a68d7500b3e1e755626","author":{"email":"peter.fox@peterfox.me","name":"Peter Fox"},"message":"Update glhd/bits for Laravel 11 compatibility (#88)\n\n* Update composer.json\r\n\r\n* Update composer.json\r\n\r\n* Update composer.json","distinct":true,"url":"https://api.github.com/repos/hirethunk/verbs/commits/695ecf865a1a88ca69148a68d7500b3e1e755626"}]},"public":true,"created_at":"2024-03-23T20:36:15Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824359991","type":"PullRequestEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"closed","number":88,"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/88","id":1787756909,"node_id":"PR_kwDOKpXc785qjwFt","html_url":"https://github.com/hirethunk/verbs/pull/88","diff_url":"https://github.com/hirethunk/verbs/pull/88.diff","patch_url":"https://github.com/hirethunk/verbs/pull/88.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/88","number":88,"state":"closed","locked":false,"title":"Update glhd/bits for Laravel 11 compatibility","user":{"login":"peterfox","id":1716506,"node_id":"MDQ6VXNlcjE3MTY1MDY=","avatar_url":"https://avatars.githubusercontent.com/u/1716506?v=4","gravatar_id":"","url":"https://api.github.com/users/peterfox","html_url":"https://github.com/peterfox","followers_url":"https://api.github.com/users/peterfox/followers","following_url":"https://api.github.com/users/peterfox/following{/other_user}","gists_url":"https://api.github.com/users/peterfox/gists{/gist_id}","starred_url":"https://api.github.com/users/peterfox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peterfox/subscriptions","organizations_url":"https://api.github.com/users/peterfox/orgs","repos_url":"https://api.github.com/users/peterfox/repos","events_url":"https://api.github.com/users/peterfox/events{/privacy}","received_events_url":"https://api.github.com/users/peterfox/received_events","type":"User","site_admin":false},"body":"# Changes\r\n\r\n* sets `glhd/bits` dependency to `^0.4|^0.3` to allow the correct version.\r\n\r\n# Why\r\n\r\nWithout this any install of Laravel 11 will fail because it needs to install `glhd/bits` 0.3 as it's own dependency but 0.3 is only compatible with Laravel 10.","created_at":"2024-03-23T10:39:28Z","updated_at":"2024-03-23T20:36:13Z","closed_at":"2024-03-23T20:36:13Z","merged_at":"2024-03-23T20:36:13Z","merge_commit_sha":"695ecf865a1a88ca69148a68d7500b3e1e755626","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/88/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/88/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/88/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/8237ec830576fb25c65e5dcbb704f326717f3384","head":{"label":"peterfox:peterfox-patch-1","ref":"peterfox-patch-1","sha":"8237ec830576fb25c65e5dcbb704f326717f3384","user":{"login":"peterfox","id":1716506,"node_id":"MDQ6VXNlcjE3MTY1MDY=","avatar_url":"https://avatars.githubusercontent.com/u/1716506?v=4","gravatar_id":"","url":"https://api.github.com/users/peterfox","html_url":"https://github.com/peterfox","followers_url":"https://api.github.com/users/peterfox/followers","following_url":"https://api.github.com/users/peterfox/following{/other_user}","gists_url":"https://api.github.com/users/peterfox/gists{/gist_id}","starred_url":"https://api.github.com/users/peterfox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peterfox/subscriptions","organizations_url":"https://api.github.com/users/peterfox/orgs","repos_url":"https://api.github.com/users/peterfox/repos","events_url":"https://api.github.com/users/peterfox/events{/privacy}","received_events_url":"https://api.github.com/users/peterfox/received_events","type":"User","site_admin":false},"repo":{"id":776372377,"node_id":"R_kgDOLkaAmQ","name":"verbs","full_name":"peterfox/verbs","private":false,"owner":{"login":"peterfox","id":1716506,"node_id":"MDQ6VXNlcjE3MTY1MDY=","avatar_url":"https://avatars.githubusercontent.com/u/1716506?v=4","gravatar_id":"","url":"https://api.github.com/users/peterfox","html_url":"https://github.com/peterfox","followers_url":"https://api.github.com/users/peterfox/followers","following_url":"https://api.github.com/users/peterfox/following{/other_user}","gists_url":"https://api.github.com/users/peterfox/gists{/gist_id}","starred_url":"https://api.github.com/users/peterfox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peterfox/subscriptions","organizations_url":"https://api.github.com/users/peterfox/orgs","repos_url":"https://api.github.com/users/peterfox/repos","events_url":"https://api.github.com/users/peterfox/events{/privacy}","received_events_url":"https://api.github.com/users/peterfox/received_events","type":"User","site_admin":false},"html_url":"https://github.com/peterfox/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":true,"url":"https://api.github.com/repos/peterfox/verbs","forks_url":"https://api.github.com/repos/peterfox/verbs/forks","keys_url":"https://api.github.com/repos/peterfox/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/peterfox/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/peterfox/verbs/teams","hooks_url":"https://api.github.com/repos/peterfox/verbs/hooks","issue_events_url":"https://api.github.com/repos/peterfox/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/peterfox/verbs/events","assignees_url":"https://api.github.com/repos/peterfox/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/peterfox/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/peterfox/verbs/tags","blobs_url":"https://api.github.com/repos/peterfox/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/peterfox/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/peterfox/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/peterfox/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/peterfox/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/peterfox/verbs/languages","stargazers_url":"https://api.github.com/repos/peterfox/verbs/stargazers","contributors_url":"https://api.github.com/repos/peterfox/verbs/contributors","subscribers_url":"https://api.github.com/repos/peterfox/verbs/subscribers","subscription_url":"https://api.github.com/repos/peterfox/verbs/subscription","commits_url":"https://api.github.com/repos/peterfox/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/peterfox/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/peterfox/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/peterfox/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/peterfox/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/peterfox/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/peterfox/verbs/merges","archive_url":"https://api.github.com/repos/peterfox/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/peterfox/verbs/downloads","issues_url":"https://api.github.com/repos/peterfox/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/peterfox/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/peterfox/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/peterfox/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/peterfox/verbs/labels{/name}","releases_url":"https://api.github.com/repos/peterfox/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/peterfox/verbs/deployments","created_at":"2024-03-23T10:21:05Z","updated_at":"2024-03-23T10:21:05Z","pushed_at":"2024-03-23T10:36:46Z","git_url":"git://github.com/peterfox/verbs.git","ssh_url":"git@github.com:peterfox/verbs.git","clone_url":"https://github.com/peterfox/verbs.git","svn_url":"https://github.com/peterfox/verbs","homepage":"https://verbs.thunk.dev","size":22452,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":false,"forks_count":0,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":0,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":0,"open_issues":0,"watchers":0,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T20:36:13Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":4,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":4,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/88"},"html":{"href":"https://github.com/hirethunk/verbs/pull/88"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/88"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/88/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/88/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/88/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/8237ec830576fb25c65e5dcbb704f326717f3384"}},"author_association":"NONE","auto_merge":null,"active_lock_reason":null,"merged":true,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"comments":0,"review_comments":0,"maintainer_can_modify":false,"commits":3,"additions":1,"deletions":1,"changed_files":1}},"public":true,"created_at":"2024-03-23T20:36:14Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824327124","type":"PullRequestReviewEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","review":{"id":1956426769,"node_id":"PRR_kwDOKpXc7850nLQR","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"Here's a first pass of comments! All in all, this is a great rewrite!","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","submitted_at":"2024-03-23T20:31:01Z","state":"commented","html_url":"https://github.com/hirethunk/verbs/pull/87#pullrequestreview-1956426769","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"html":{"href":"https://github.com/hirethunk/verbs/pull/87#pullrequestreview-1956426769"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}}},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:47Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:31:48Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824321127","type":"PullRequestReviewEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","review":{"id":1956426769,"node_id":"PRR_kwDOKpXc7850nLQR","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"Here's a first pass of comments!","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","submitted_at":"2024-03-23T20:31:01Z","state":"commented","html_url":"https://github.com/hirethunk/verbs/pull/87#pullrequestreview-1956426769","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"html":{"href":"https://github.com/hirethunk/verbs/pull/87#pullrequestreview-1956426769"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}}},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:31:02Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824321356","type":"PullRequestReviewCommentEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536688345","pull_request_review_id":1956426769,"id":1536688345,"node_id":"PRRC_kwDOKpXc785bmADZ","diff_hunk":"@@ -0,0 +1,52 @@\n+\n+\n+\n+\n+\n+\n+## Hydration\n+\n+In Verbs, we use state snapshots to conveniently hydrate states in memory.\n+\n+When you `load()` a State (or retrieve a `singleton()` state)\n+- If a snapshot exists, the state is hydrated by loading and deserializing the snapshot data.\n+ - If not, it initiates event replay to rebuild the state based on currently stored events.","path":"docs/state-hydration-snapshots.md","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","original_commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"It's not really replaying events… it's only re-applying them to the state. I worry that if we say replay people will think that `handle` is called.","created_at":"2024-03-23T20:27:38Z","updated_at":"2024-03-23T20:31:01Z","html_url":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536688345","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536688345"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536688345"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}},"reactions":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536688345/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":33,"original_line":33,"side":"RIGHT","original_position":33,"position":33,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:27:38Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824321342","type":"PullRequestReviewCommentEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687945","pull_request_review_id":1956426769,"id":1536687945,"node_id":"PRRC_kwDOKpXc785bl_9J","diff_hunk":"@@ -1,27 +1,18 @@\n-Often, \"ID\" is synonymous with the auto-incrementing `id` column in your database of choice. For\n-most applications, there really is no distinction. But in event sourcing, you need to think of IDs\n-as globally-unique identity—separate from the database that you happen to be using at any given time.\n+By default, Verbs uses 64-bit integer IDs called \"Snowflakes.\"\n \n-## Globally-Unique Identity?\n+## Globally Unique Ids\n \n-If you create a new table and insert the first row into it, the `id` value is likely to be `1`. This\n-is not globally unique in your system. There are other things with an `id` of `1`.\n+We do this because an event-sourcing system needs non-sequential, globablly-unique IDs to run well. Replaying events is a massively powerful feature, but does not pair well with standard auto-incrementing IDs.\n+Unique IDs help us both minimize collisions, so that each event is executed with fidelity, and maximize interoperability.\n \n-In event sourcing, it's best to use fully unique IDs. This could be UUIDs, which have an astronomically\n-low likelihood of collision. The problem with UUIDs is that they're stored as 36-character strings in your\n-database, which isn't ideal for indexing.\n+We recommend Snowflakes because they are sortable, time-based, and are integers.\n+You may also use ULIDs or UUIDs instead; this can be configured in `config/verbs.php`. However, they each introduce some complexity. Both are strings, and UUIDs are not sortable.\n \n-While we support UUIDs and ULIDs, we recommend Snowflake IDs. Snowflakes are still unique (although you \n-need to do a little configuration if you're running many servers in parallel), but fit in a \n-`unsigned bigint` column in your database.\n+## Snowflakes in Verbs\n \n-So instead of a UUID like `4c5433c4-4cfb-4126-81be-44a3af5552a0`, a Snowflake ID will look something\n-like `113482333712809984`.\n+Verbs uses [`glhd/bits`](https://github.com/glhd/bits) under the hood, and you can use it too. Bits makes it easy to use Snowflakes in Laravel.","path":"docs/ids.md","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","original_commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"We may specifically want to call out the [Bits configuration](https://github.com/glhd/bits?tab=readme-ov-file#set-the-bits_worker_id-and-bits_datacenter_id) if they're going to run an app on more than one app server.","created_at":"2024-03-23T20:25:25Z","updated_at":"2024-03-23T20:31:01Z","html_url":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687945","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687945"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687945"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}},"reactions":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687945/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":13,"original_line":13,"side":"RIGHT","original_position":27,"position":27,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:25:25Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824321309","type":"PullRequestReviewCommentEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687329","pull_request_review_id":1956426769,"id":1536687329,"node_id":"PRRC_kwDOKpXc785bl_zh","diff_hunk":"@@ -0,0 +1,94 @@\n+### `#[StateId]`\n+\n+Link your event to its state(s) with the `StateId` attribute\n+\n+```php\n+class YourEvent extends Event\n+{\n+ #[StateId(GameState::class)]\n+ public int $game_id;\n+\n+ #[StateID(PlayerState::class)]\n+ public int $player_id;\n+}\n+```\n+\n+### `#[AppliesToState]`\n+\n+Another way to link states and events; like [`StateId`](#content-stateid), but using the attributes above the class instead of on each individual id.","path":"docs/attributes.md","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","original_commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"Second argument is the property name, which is implicitly `[state name]_id` unless set (ie. \"PlayerState\" would assume a `$player_id` property). Third and fourth args are the same as second and third in `StateId`.","created_at":"2024-03-23T20:19:29Z","updated_at":"2024-03-23T20:31:01Z","html_url":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687329","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687329"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687329"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}},"reactions":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687329/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":18,"original_line":18,"side":"RIGHT","original_position":18,"position":18,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:19:29Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824321331","type":"PullRequestReviewCommentEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687766","pull_request_review_id":1956426769,"id":1536687766,"node_id":"PRRC_kwDOKpXc785bl_6W","diff_hunk":"@@ -1,27 +1,18 @@\n-Often, \"ID\" is synonymous with the auto-incrementing `id` column in your database of choice. For\n-most applications, there really is no distinction. But in event sourcing, you need to think of IDs\n-as globally-unique identity—separate from the database that you happen to be using at any given time.\n+By default, Verbs uses 64-bit integer IDs called \"Snowflakes.\"\n \n-## Globally-Unique Identity?\n+## Globally Unique Ids\n \n-If you create a new table and insert the first row into it, the `id` value is likely to be `1`. This\n-is not globally unique in your system. There are other things with an `id` of `1`.\n+We do this because an event-sourcing system needs non-sequential, globablly-unique IDs to run well. Replaying events is a massively powerful feature, but does not pair well with standard auto-incrementing IDs.","path":"docs/ids.md","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","original_commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"They don't need to be specifically non-sequential. In general, Snowflakes are sequential.","created_at":"2024-03-23T20:23:48Z","updated_at":"2024-03-23T20:31:01Z","html_url":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687766","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687766"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687766"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}},"reactions":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687766/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":5,"original_line":5,"side":"RIGHT","original_position":11,"position":11,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:23:48Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824321325","type":"PullRequestReviewCommentEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687384","pull_request_review_id":1956426769,"id":1536687384,"node_id":"PRRC_kwDOKpXc785bl_0Y","diff_hunk":"@@ -0,0 +1,94 @@\n+### `#[StateId]`\n+\n+Link your event to its state(s) with the `StateId` attribute\n+\n+```php\n+class YourEvent extends Event\n+{\n+ #[StateId(GameState::class)]\n+ public int $game_id;\n+\n+ #[StateID(PlayerState::class)]\n+ public int $player_id;\n+}\n+```\n+\n+### `#[AppliesToState]`\n+\n+Another way to link states and events; like [`StateId`](#content-stateid), but using the attributes above the class instead of on each individual id.\n+\n+```php\n+#[AppliesToState(GameState::class)]\n+#[AppliesToState(PlayerState::class)]\n+class RolledDice extends Event\n+{\n+ use PlayerAction;\n+\n+ public function __construct(\n+ public int $game_id,\n+ public int $player_id,\n+ public array $dice,\n+ )\n+}\n+```\n+\n+### `#[AppliesToSingletonState]`\n+\n+Use the `AppliesToSingletonState` on an event class to tell Verbs that it should always be applied to a single state (`CountState`) across the entire application (as opposed to having different counts for different states).","path":"docs/attributes.md","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","original_commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"```suggestion\r\nUse the `AppliesToSingletonState` on an event class to tell Verbs that it should always be applied to a single state (eg. `CountState`) across the entire application (as opposed to having different counts for different states).\r\n```","created_at":"2024-03-23T20:19:55Z","updated_at":"2024-03-23T20:31:01Z","html_url":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687384","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687384"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687384"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}},"reactions":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687384/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":37,"original_line":37,"side":"RIGHT","original_position":37,"position":37,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:19:55Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}},{"id":"36824321324","type":"PullRequestReviewCommentEvent","actor":{"id":21592,"login":"inxilpro","display_login":"inxilpro","gravatar_id":"","url":"https://api.github.com/users/inxilpro","avatar_url":"https://avatars.githubusercontent.com/u/21592?"},"repo":{"id":714464495,"name":"hirethunk/verbs","url":"https://api.github.com/repos/hirethunk/verbs"},"payload":{"action":"created","comment":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687674","pull_request_review_id":1956426769,"id":1536687674,"node_id":"PRRC_kwDOKpXc785bl_46","diff_hunk":"@@ -0,0 +1,94 @@\n+### `#[StateId]`\n+\n+Link your event to its state(s) with the `StateId` attribute\n+\n+```php\n+class YourEvent extends Event\n+{\n+ #[StateId(GameState::class)]\n+ public int $game_id;\n+\n+ #[StateID(PlayerState::class)]\n+ public int $player_id;\n+}\n+```\n+\n+### `#[AppliesToState]`\n+\n+Another way to link states and events; like [`StateId`](#content-stateid), but using the attributes above the class instead of on each individual id.\n+\n+```php\n+#[AppliesToState(GameState::class)]\n+#[AppliesToState(PlayerState::class)]\n+class RolledDice extends Event\n+{\n+ use PlayerAction;\n+\n+ public function __construct(\n+ public int $game_id,\n+ public int $player_id,\n+ public array $dice,\n+ )\n+}\n+```\n+\n+### `#[AppliesToSingletonState]`\n+\n+Use the `AppliesToSingletonState` on an event class to tell Verbs that it should always be applied to a single state (`CountState`) across the entire application (as opposed to having different counts for different states).\n+\n+Because we're using a [singleton state](/docs/reference/states#content-singleton-states), there is no need for the event to have a `$count_id`.\n+\n+```php\n+#[AppliesToSingletonState(CountState::class)]\n+class IncrementCount extends Event\n+{\n+ public function apply(CountState $state)\n+ {\n+ $state->count++;\n+ }\n+}\n+```\n+\n+### `#[AppliesToChildState]`\n+\n+Use the `AppliesToChildState` on an event class to tell Verbs both the event's state and it's state's parent, useful in cases where multiple states rely on the same event.","path":"docs/attributes.md","commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","original_commit_id":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"inxilpro","id":21592,"node_id":"MDQ6VXNlcjIxNTky","avatar_url":"https://avatars.githubusercontent.com/u/21592?v=4","gravatar_id":"","url":"https://api.github.com/users/inxilpro","html_url":"https://github.com/inxilpro","followers_url":"https://api.github.com/users/inxilpro/followers","following_url":"https://api.github.com/users/inxilpro/following{/other_user}","gists_url":"https://api.github.com/users/inxilpro/gists{/gist_id}","starred_url":"https://api.github.com/users/inxilpro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/inxilpro/subscriptions","organizations_url":"https://api.github.com/users/inxilpro/orgs","repos_url":"https://api.github.com/users/inxilpro/repos","events_url":"https://api.github.com/users/inxilpro/events{/privacy}","received_events_url":"https://api.github.com/users/inxilpro/received_events","type":"User","site_admin":false},"body":"I think the use-case for this needs to be more clear. It's meant for nested states, but I honestly don't have a good example to use right now…","created_at":"2024-03-23T20:22:45Z","updated_at":"2024-03-23T20:31:01Z","html_url":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687674","pull_request_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687674"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87#discussion_r1536687674"},"pull_request":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"}},"reactions":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments/1536687674/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":54,"original_line":54,"side":"RIGHT","original_position":54,"position":54,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/hirethunk/verbs/pulls/87","id":1781264173,"node_id":"PR_kwDOKpXc785qK-8t","html_url":"https://github.com/hirethunk/verbs/pull/87","diff_url":"https://github.com/hirethunk/verbs/pull/87.diff","patch_url":"https://github.com/hirethunk/verbs/pull/87.patch","issue_url":"https://api.github.com/repos/hirethunk/verbs/issues/87","number":87,"state":"open","locked":false,"title":"Docs Rewrite","user":{"login":"jdiddydave","id":98569588,"node_id":"U_kgDOBeANdA","avatar_url":"https://avatars.githubusercontent.com/u/98569588?v=4","gravatar_id":"","url":"https://api.github.com/users/jdiddydave","html_url":"https://github.com/jdiddydave","followers_url":"https://api.github.com/users/jdiddydave/followers","following_url":"https://api.github.com/users/jdiddydave/following{/other_user}","gists_url":"https://api.github.com/users/jdiddydave/gists{/gist_id}","starred_url":"https://api.github.com/users/jdiddydave/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdiddydave/subscriptions","organizations_url":"https://api.github.com/users/jdiddydave/orgs","repos_url":"https://api.github.com/users/jdiddydave/repos","events_url":"https://api.github.com/users/jdiddydave/events{/privacy}","received_events_url":"https://api.github.com/users/jdiddydave/received_events","type":"User","site_admin":false},"body":"**View Verbs Docs locally:**\r\n> clone https://github.com/hirethunk/verbs-docs and reference the README\r\n\r\n## Docs Rewrite\r\n\r\nAlmost there! Search for @todo for any remaining / unsettled comments.\r\n\r\nPlease fire away with suggestions/edits if you feel inclined :)\r\n\r\n## Future Improvements:\r\n\r\nSome technical changes (mostly from @inxilpro) for the future that I think we should eventually implement:\r\n- make sub-navs available outside of examples directory (events->replaying events comes to mind)\r\n- group .md files into file subdirectories (ex references/events.md) without breaking things\r\n- establish a recommended reading order for each doc page so users could navigate linearly through docs","created_at":"2024-03-20T03:23:25Z","updated_at":"2024-03-23T20:31:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f51c39f1d7d1275657da9b4a95c96ba17f7fa351","assignee":null,"assignees":[],"requested_reviewers":[{"login":"DanielCoulbourne","id":429010,"node_id":"MDQ6VXNlcjQyOTAxMA==","avatar_url":"https://avatars.githubusercontent.com/u/429010?v=4","gravatar_id":"","url":"https://api.github.com/users/DanielCoulbourne","html_url":"https://github.com/DanielCoulbourne","followers_url":"https://api.github.com/users/DanielCoulbourne/followers","following_url":"https://api.github.com/users/DanielCoulbourne/following{/other_user}","gists_url":"https://api.github.com/users/DanielCoulbourne/gists{/gist_id}","starred_url":"https://api.github.com/users/DanielCoulbourne/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanielCoulbourne/subscriptions","organizations_url":"https://api.github.com/users/DanielCoulbourne/orgs","repos_url":"https://api.github.com/users/DanielCoulbourne/repos","events_url":"https://api.github.com/users/DanielCoulbourne/events{/privacy}","received_events_url":"https://api.github.com/users/DanielCoulbourne/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits","review_comments_url":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments","review_comment_url":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}","comments_url":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37","head":{"label":"hirethunk:docs-rewrite-2024-Feb","ref":"docs-rewrite-2024-Feb","sha":"96353cde737d53cec6c2703a83f0952fbe23bb37","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"base":{"label":"hirethunk:main","ref":"main","sha":"6420725dc24dc969f6800f024604153ef0819083","user":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"repo":{"id":714464495,"node_id":"R_kgDOKpXc7w","name":"verbs","full_name":"hirethunk/verbs","private":false,"owner":{"login":"hirethunk","id":149911170,"node_id":"O_kgDOCO92gg","avatar_url":"https://avatars.githubusercontent.com/u/149911170?v=4","gravatar_id":"","url":"https://api.github.com/users/hirethunk","html_url":"https://github.com/hirethunk","followers_url":"https://api.github.com/users/hirethunk/followers","following_url":"https://api.github.com/users/hirethunk/following{/other_user}","gists_url":"https://api.github.com/users/hirethunk/gists{/gist_id}","starred_url":"https://api.github.com/users/hirethunk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hirethunk/subscriptions","organizations_url":"https://api.github.com/users/hirethunk/orgs","repos_url":"https://api.github.com/users/hirethunk/repos","events_url":"https://api.github.com/users/hirethunk/events{/privacy}","received_events_url":"https://api.github.com/users/hirethunk/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/hirethunk/verbs","description":"Verbs is an event sourcing package for PHP artisans","fork":false,"url":"https://api.github.com/repos/hirethunk/verbs","forks_url":"https://api.github.com/repos/hirethunk/verbs/forks","keys_url":"https://api.github.com/repos/hirethunk/verbs/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hirethunk/verbs/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hirethunk/verbs/teams","hooks_url":"https://api.github.com/repos/hirethunk/verbs/hooks","issue_events_url":"https://api.github.com/repos/hirethunk/verbs/issues/events{/number}","events_url":"https://api.github.com/repos/hirethunk/verbs/events","assignees_url":"https://api.github.com/repos/hirethunk/verbs/assignees{/user}","branches_url":"https://api.github.com/repos/hirethunk/verbs/branches{/branch}","tags_url":"https://api.github.com/repos/hirethunk/verbs/tags","blobs_url":"https://api.github.com/repos/hirethunk/verbs/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hirethunk/verbs/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hirethunk/verbs/git/refs{/sha}","trees_url":"https://api.github.com/repos/hirethunk/verbs/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hirethunk/verbs/statuses/{sha}","languages_url":"https://api.github.com/repos/hirethunk/verbs/languages","stargazers_url":"https://api.github.com/repos/hirethunk/verbs/stargazers","contributors_url":"https://api.github.com/repos/hirethunk/verbs/contributors","subscribers_url":"https://api.github.com/repos/hirethunk/verbs/subscribers","subscription_url":"https://api.github.com/repos/hirethunk/verbs/subscription","commits_url":"https://api.github.com/repos/hirethunk/verbs/commits{/sha}","git_commits_url":"https://api.github.com/repos/hirethunk/verbs/git/commits{/sha}","comments_url":"https://api.github.com/repos/hirethunk/verbs/comments{/number}","issue_comment_url":"https://api.github.com/repos/hirethunk/verbs/issues/comments{/number}","contents_url":"https://api.github.com/repos/hirethunk/verbs/contents/{+path}","compare_url":"https://api.github.com/repos/hirethunk/verbs/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hirethunk/verbs/merges","archive_url":"https://api.github.com/repos/hirethunk/verbs/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hirethunk/verbs/downloads","issues_url":"https://api.github.com/repos/hirethunk/verbs/issues{/number}","pulls_url":"https://api.github.com/repos/hirethunk/verbs/pulls{/number}","milestones_url":"https://api.github.com/repos/hirethunk/verbs/milestones{/number}","notifications_url":"https://api.github.com/repos/hirethunk/verbs/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hirethunk/verbs/labels{/name}","releases_url":"https://api.github.com/repos/hirethunk/verbs/releases{/id}","deployments_url":"https://api.github.com/repos/hirethunk/verbs/deployments","created_at":"2023-11-04T23:21:00Z","updated_at":"2024-03-22T15:11:08Z","pushed_at":"2024-03-23T10:39:28Z","git_url":"git://github.com/hirethunk/verbs.git","ssh_url":"git@github.com:hirethunk/verbs.git","clone_url":"https://github.com/hirethunk/verbs.git","svn_url":"https://github.com/hirethunk/verbs","homepage":"https://verbs.thunk.dev","size":22576,"stargazers_count":194,"watchers_count":194,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":15,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":5,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":[],"visibility":"public","forks":15,"open_issues":5,"watchers":194,"default_branch":"main"}},"_links":{"self":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87"},"html":{"href":"https://github.com/hirethunk/verbs/pull/87"},"issue":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87"},"comments":{"href":"https://api.github.com/repos/hirethunk/verbs/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/hirethunk/verbs/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/hirethunk/verbs/statuses/96353cde737d53cec6c2703a83f0952fbe23bb37"}},"author_association":"COLLABORATOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-23T20:22:45Z","org":{"id":149911170,"login":"hirethunk","gravatar_id":"","url":"https://api.github.com/orgs/hirethunk","avatar_url":"https://avatars.githubusercontent.com/u/149911170?"}}]