{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":597455260,"defaultBranch":"main","name":"YouTube-playlists-playback-tracker","ownerLogin":"rybak","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-02-04T15:56:31.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/624072?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1694199183.0","currentOid":""},"activityList":{"items":[{"before":"6961efcd2b6f8b66c5cd7f1a1d60ac7470c9ab1a","after":"d4f6d01ea220a0de1b24fa928620842f8b797f49","ref":"refs/heads/main","pushedAt":"2023-12-27T14:28:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"README: drop Tampermonkey recommendation\n\nI've been using Tampermonkey mostly for it development-related features.\nIt would seem that nowadays for users of userscripts (as opposed to\ndevelopers of userscripts), Violentmonkey is a much better proposition,\nwith less bloat and less potential privacy-violating tracking.\n\nSo drop the Tampermonkey recommendation from README.md.","shortMessageHtmlLink":"README: drop Tampermonkey recommendation"}},{"before":"7c9d67053dabd54fa5db7a7e00b362ab285cc66b","after":"6961efcd2b6f8b66c5cd7f1a1d60ac7470c9ab1a","ref":"refs/heads/main","pushedAt":"2023-09-08T19:45:29.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"add @supportURL to metadata\n\nAdd a `@supportURL` to UserScript metadata. Some of the browser\nextensions for managing userscripts include a clickable link in the list\nor table of the userscripts. For example, Tampermonkey has a button\nwith a bug icon [1] on it, that leads to @supportURL of userscripts.\n\n[1] https://fontawesome.com/v4/icon/bug","shortMessageHtmlLink":"add @supportURL to metadata"}},{"before":"c3ae72207777bd46a2d9d85598d0321d8102bb65","after":"7c9d67053dabd54fa5db7a7e00b362ab285cc66b","ref":"refs/heads/main","pushedAt":"2023-09-08T18:58:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"README: fix name of the script\n\nThe script's `@name` has been \"YouTube playlists playback tracker\" with\nplural playlists since f42fdd9 (initial commit, 2023-02-04). Correct\nthe spelling of the script's full name in the heading of README.md.","shortMessageHtmlLink":"README: fix name of the script"}},{"before":"c3ae72207777bd46a2d9d85598d0321d8102bb65","after":null,"ref":"refs/heads/readme-badges","pushedAt":"2023-09-08T18:53:03.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"}},{"before":"ef9f4f0c6edaf1e73388cfc2e029d3b1cabda5e1","after":"c3ae72207777bd46a2d9d85598d0321d8102bb65","ref":"refs/heads/main","pushedAt":"2023-09-08T18:52:52.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"README: add badge with version number","shortMessageHtmlLink":"README: add badge with version number"}},{"before":"bcd78d27f04387a6c160394e8f38871eebb7485f","after":"c3ae72207777bd46a2d9d85598d0321d8102bb65","ref":"refs/heads/readme-badges","pushedAt":"2023-09-08T18:48:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"README: add badge with version number","shortMessageHtmlLink":"README: add badge with version number"}},{"before":"d2067dd57d8b898d02d626627f038b43073ec135","after":"bcd78d27f04387a6c160394e8f38871eebb7485f","ref":"refs/heads/readme-badges","pushedAt":"2023-09-08T18:35:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"README: add badge with the version number","shortMessageHtmlLink":"README: add badge with the version number"}},{"before":null,"after":"d2067dd57d8b898d02d626627f038b43073ec135","ref":"refs/heads/readme-badges","pushedAt":"2023-09-08T18:34:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"README: add badge with the version number","shortMessageHtmlLink":"README: add badge with the version number"}},{"before":"7d64955516a9733fca855966a0016ce688db4355","after":"ef9f4f0c6edaf1e73388cfc2e029d3b1cabda5e1","ref":"refs/heads/main","pushedAt":"2023-09-08T18:28:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"README: direct users to install via Greasy Fork","shortMessageHtmlLink":"README: direct users to install via Greasy Fork"}},{"before":"5181c329b03441699ce2d9ea5f199e99bda6c4d8","after":"7d64955516a9733fca855966a0016ce688db4355","ref":"refs/heads/main","pushedAt":"2023-05-05T23:13:45.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"handle continuous playlist playback\n\nWhen a video changes on YouTube, it isn't a full scale page load, so the\nscript doesn't run. Add an observer to run the processing on every\nchange of the tag .","shortMessageHtmlLink":"handle continuous playlist playback"}},{"before":"d9de02568f876adcdec4e4ff558e53d05081da8e","after":"5181c329b03441699ce2d9ea5f199e99bda6c4d8","ref":"refs/heads/main","pushedAt":"2023-05-05T19:01:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"clean up line breaks in channelName\n\nFor some reasons, some channels _sometimes_ (but not always!) generate a\nweird channelName, with the name itself being repeated and verification\nmark, if present also included as the word \"Verified\". In such cases\nboth the duplicate names and the word \"Verified\" are separated by\nmultiple line breaks, which causes the list item for that playlist to\nstretch vertically.\n\nAddress this by removing whitespace from the channel name both on\nloading JSON from storage and on extracting it from HTML before saving\nto storage.","shortMessageHtmlLink":"clean up line breaks in channelName"}},{"before":"d72bf60c0f1c24ab15605e83b0c201247da158ed","after":"d9de02568f876adcdec4e4ff558e53d05081da8e","ref":"refs/heads/main","pushedAt":"2023-04-07T01:23:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"fix getVideoChannelName()\n\nIn previous commit I forgot to replace the call to \".getElementById\"\nwith \".querySelector\".","shortMessageHtmlLink":"fix getVideoChannelName()"}},{"before":"0886e559d68cd9e52be6c937d168e6f96732bfe5","after":"d72bf60c0f1c24ab15605e83b0c201247da158ed","ref":"refs/heads/main","pushedAt":"2023-04-07T01:14:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"rybak","name":"Andrei Rybak","path":"/rybak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/624072?s=80&v=4"},"commit":{"message":"fix channel name extraction\n\nSomething changed in HTML layout of YouTube, and now on a video page,\nchannel name is being extracted from some hidden HTML nodes, where\n\".outerText\" returns the channel name with extra line breaks. On a\nplaylist page, these line breaks get turned into <br> tags when showing\nthe channel name in the \"Continue watching\" section.\n\nUse a more specific selector for finding the channel name HTML element.\nWhile we're here, tweak logging for stored objects (that's how I\nrealized that channel name is being stored with line breaks).","shortMessageHtmlLink":"fix channel name extraction"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyMy0xMi0yN1QxNDoyODoyMS4wMDAwMDBazwAAAAPS0ugq","startCursor":"Y3Vyc29yOnYyOpK7MjAyMy0xMi0yN1QxNDoyODoyMS4wMDAwMDBazwAAAAPS0ugq","endCursor":"Y3Vyc29yOnYyOpK7MjAyMy0wNC0wN1QwMToxNDowMy4wMDAwMDBazwAAAAMT53Ni"}},"title":"Activity ยท rybak/YouTube-playlists-playback-tracker"}