{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":656864724,"defaultBranch":"main","name":"learning-spark","ownerLogin":"SergiyKolesnikov","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-06-21T19:59:32.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/6048022?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1687378192.0968032","currentOid":""},"activityList":{"items":[{"before":"b914011cfb5ef741f4f239e4769267a7eb896e08","after":"1d25558fdc0c683e3fa1ab883d0ec12279028e3c","ref":"refs/heads/main","pushedAt":"2023-09-11T12:58:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"docs: update setup instructions using asdf+poetry combo","shortMessageHtmlLink":"docs: update setup instructions using asdf+poetry combo"}},{"before":"31d2de9049b871388e87e1820a80f6c55fc3049a","after":"b914011cfb5ef741f4f239e4769267a7eb896e08","ref":"refs/heads/main","pushedAt":"2023-09-11T10:05:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"docs: update setup instructions using asdf+poetry combo","shortMessageHtmlLink":"docs: update setup instructions using asdf+poetry combo"}},{"before":"9a03595068eec36e76d5124d85b2049ddb91288d","after":"31d2de9049b871388e87e1820a80f6c55fc3049a","ref":"refs/heads/main","pushedAt":"2023-08-09T22:39:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"chore: remove empty cells","shortMessageHtmlLink":"chore: remove empty cells"}},{"before":"5db32b9e25723cbd188c9aa2863250e4069ecec2","after":"9a03595068eec36e76d5124d85b2049ddb91288d","ref":"refs/heads/main","pushedAt":"2023-08-07T17:42:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"docs: switch to archive.org for the book PDF","shortMessageHtmlLink":"docs: switch to archive.org for the book PDF"}},{"before":"1defa76dc3963f3e5ff287e80811fd6b84e2c974","after":"5db32b9e25723cbd188c9aa2863250e4069ecec2","ref":"refs/heads/main","pushedAt":"2023-08-07T17:36:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add Chapter 11, 'Model Management'","shortMessageHtmlLink":"feat: add Chapter 11, 'Model Management'"}},{"before":"acb124d8dbbaf71707f96ca41a841b52637462d8","after":"1defa76dc3963f3e5ff287e80811fd6b84e2c974","ref":"refs/heads/main","pushedAt":"2023-08-07T17:35:20.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add Chapter 11, 'Model Management'","shortMessageHtmlLink":"feat: add Chapter 11, 'Model Management'"}},{"before":"35043a8a7b12dd85ee45aec65faa3c20c61bb36a","after":"acb124d8dbbaf71707f96ca41a841b52637462d8","ref":"refs/heads/main","pushedAt":"2023-08-04T20:10:37.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add 'Chapter 10. Machine Learning with MLlib'","shortMessageHtmlLink":"feat: add 'Chapter 10. Machine Learning with MLlib'"}},{"before":"a053ebbf44fb4bbd97ff97d0acab74f5393665f8","after":"35043a8a7b12dd85ee45aec65faa3c20c61bb36a","ref":"refs/heads/main","pushedAt":"2023-07-30T15:07:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"chore: rename notebooks for correct ordering","shortMessageHtmlLink":"chore: rename notebooks for correct ordering"}},{"before":"7614b165fab9b1ee81573f8d7d863abda85604c6","after":"a053ebbf44fb4bbd97ff97d0acab74f5393665f8","ref":"refs/heads/main","pushedAt":"2023-07-30T14:59:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add a notebook for \"Building Reliable Data Lakes with Apache Spark\"","shortMessageHtmlLink":"feat: add a notebook for \"Building Reliable Data Lakes with Apache Sp…"}},{"before":"5348e0959489080721ab47a79aeef13014fdfd66","after":"7614b165fab9b1ee81573f8d7d863abda85604c6","ref":"refs/heads/main","pushedAt":"2023-07-23T13:15:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add \"flatMapGroupsWithState() Example from the Book Reimplemented in Python\"","shortMessageHtmlLink":"feat: add \"flatMapGroupsWithState() Example from the Book Reimplement…"}},{"before":"bed81da873f11ad0120ba5e020375b1250a397bb","after":"5348e0959489080721ab47a79aeef13014fdfd66","ref":"refs/heads/main","pushedAt":"2023-07-21T16:00:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add \"Arbitrary Stateful Computations\"","shortMessageHtmlLink":"feat: add \"Arbitrary Stateful Computations\""}},{"before":"a9db64fd2f9cd8ac943a74e40616c3aeb303b7be","after":"bed81da873f11ad0120ba5e020375b1250a397bb","ref":"refs/heads/main","pushedAt":"2023-07-18T21:09:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add \"Stream-Stream Joins\"","shortMessageHtmlLink":"feat: add \"Stream-Stream Joins\""}},{"before":"928dd3a334ddf7d083bb7cb75f536cea44c0db3c","after":"a9db64fd2f9cd8ac943a74e40616c3aeb303b7be","ref":"refs/heads/main","pushedAt":"2023-07-17T19:24:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add Stream-Static Joins","shortMessageHtmlLink":"feat: add Stream-Static Joins"}},{"before":"caf29cf6cce49a7d6af6e2688954806bc85bab45","after":"928dd3a334ddf7d083bb7cb75f536cea44c0db3c","ref":"refs/heads/main","pushedAt":"2023-07-16T14:59:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add \"Stateful Streaming Aggregations\"","shortMessageHtmlLink":"feat: add \"Stateful Streaming Aggregations\""}},{"before":"487df59e21397f963e8ab28412e1e98050788385","after":"caf29cf6cce49a7d6af6e2688954806bc85bab45","ref":"refs/heads/main","pushedAt":"2023-07-13T21:22:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add Custom Streaming Sources and Sinks","shortMessageHtmlLink":"feat: add Custom Streaming Sources and Sinks"}},{"before":"b1d9fbe1ba0a6e611590dea541bbba04a39bdd67","after":"487df59e21397f963e8ab28412e1e98050788385","ref":"refs/heads/main","pushedAt":"2023-07-13T21:20:55.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"build: update Python packages","shortMessageHtmlLink":"build: update Python packages"}},{"before":"b887eef4fb99ac1cc81cf2bf4d9003ea53efd64a","after":"b1d9fbe1ba0a6e611590dea541bbba04a39bdd67","ref":"refs/heads/main","pushedAt":"2023-07-13T21:19:25.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add Custom Streaming Sources and Sinks","shortMessageHtmlLink":"feat: add Custom Streaming Sources and Sinks"}},{"before":"1322c3e6470891b8627b801dd2730b8cc24b2a1a","after":"b887eef4fb99ac1cc81cf2bf4d9003ea53efd64a","ref":"refs/heads/main","pushedAt":"2023-07-09T11:12:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add writing to Apache Kafka","shortMessageHtmlLink":"feat: add writing to Apache Kafka"}},{"before":"c3e918927033c02501826f7193dc72b7cef6241e","after":"1322c3e6470891b8627b801dd2730b8cc24b2a1a","ref":"refs/heads/main","pushedAt":"2023-07-07T16:03:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add reading from Apache Kafka","shortMessageHtmlLink":"feat: add reading from Apache Kafka"}},{"before":"74974df0465409bb789d4617193d5dd4afcc5f07","after":"c3e918927033c02501826f7193dc72b7cef6241e","ref":"refs/heads/main","pushedAt":"2023-07-06T17:47:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add writing to files with structured streaming","shortMessageHtmlLink":"feat: add writing to files with structured streaming"}},{"before":"6d02b3074052eb44dd105140e54f8732e2216cf4","after":"74974df0465409bb789d4617193d5dd4afcc5f07","ref":"refs/heads/main","pushedAt":"2023-07-04T17:18:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add reading from files with structured streaming","shortMessageHtmlLink":"feat: add reading from files with structured streaming"}},{"before":"c2d82b5690b80631d80a7bc091347f1df0fa113d","after":"6d02b3074052eb44dd105140e54f8732e2216cf4","ref":"refs/heads/main","pushedAt":"2023-07-02T14:16:33.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: finish \"The Fundamentals of a Structured Streaming Query\"","shortMessageHtmlLink":"feat: finish \"The Fundamentals of a Structured Streaming Query\""}},{"before":"bd23e14c6fe6796cc8aa5497df016a11591000a4","after":"c2d82b5690b80631d80a7bc091347f1df0fa113d","ref":"refs/heads/main","pushedAt":"2023-06-25T15:02:22.793Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"Init with notebooks for the first 8 chapters","shortMessageHtmlLink":"Init with notebooks for the first 8 chapters"}},{"before":"c541c6ea455830d1a5ea9267c90b09cfc0a64aae","after":"bd23e14c6fe6796cc8aa5497df016a11591000a4","ref":"refs/heads/main","pushedAt":"2023-06-22T17:42:57.063Z","pushType":"push","commitsCount":2,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"feat: add Chapter 7, A Family of Spark Joins","shortMessageHtmlLink":"feat: add Chapter 7, A Family of Spark Joins"}},{"before":"982c17f7df92a08b7692a4adc765e2d73864d95b","after":null,"ref":"refs/heads/master","pushedAt":"2023-06-21T20:09:52.096Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"}},{"before":"1450b65115c07b05441f1d4e41d50fd0e247a743","after":"c541c6ea455830d1a5ea9267c90b09cfc0a64aae","ref":"refs/heads/main","pushedAt":"2023-06-21T20:09:05.099Z","pushType":"push","commitsCount":1,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"docs: add LICENSE","shortMessageHtmlLink":"docs: add LICENSE"}},{"before":null,"after":"1450b65115c07b05441f1d4e41d50fd0e247a743","ref":"refs/heads/main","pushedAt":"2023-06-21T20:03:47.317Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"docs: add Docker Compose instructions to README","shortMessageHtmlLink":"docs: add Docker Compose instructions to README"}},{"before":null,"after":"982c17f7df92a08b7692a4adc765e2d73864d95b","ref":"refs/heads/master","pushedAt":"2023-06-21T19:59:32.767Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"SergiyKolesnikov","name":"Sergiy Kolesnikov","path":"/SergiyKolesnikov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6048022?s=80&v=4"},"commit":{"message":"Initial commit","shortMessageHtmlLink":"Initial commit"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADfdwRXQA","startCursor":null,"endCursor":null}},"title":"Activity · SergiyKolesnikov/learning-spark"}