{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":146546932,"defaultBranch":"main","name":"ethical-ad-server","ownerLogin":"readthedocs","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-08-29T04:53:39.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/366329?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1720042277.0","currentOid":""},"activityList":{"items":[{"before":"1c037bb6ad03b89039c110b7fc8452f0de07eedb","after":null,"ref":"refs/heads/davidfischer/improve-image-uploading","pushedAt":"2024-07-03T21:31:17.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"}},{"before":"1a4ff7db50e66c5217a02da80f05cfbd0b49e727","after":"d2f3d85ee35f1708d165f51faa98f928760ef046","ref":"refs/heads/main","pushedAt":"2024-07-03T21:31:16.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Merge pull request #886 from readthedocs/davidfischer/improve-image-uploading\n\nImprove image uploading","shortMessageHtmlLink":"Merge pull request #886 from readthedocs/davidfischer/improve-image-u…"}},{"before":"acef920709db2192fbec87259fb048178a89bb5a","after":null,"ref":"refs/heads/davidfischer/add-image-cropper-resizer","pushedAt":"2024-07-03T21:12:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"}},{"before":"709eca98e4da0954acedaaa38363288c0eb33701","after":"1c037bb6ad03b89039c110b7fc8452f0de07eedb","ref":"refs/heads/davidfischer/improve-image-uploading","pushedAt":"2024-07-03T21:12:04.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Merge pull request #887 from readthedocs/davidfischer/add-image-cropper-resizer\n\nAdd a crop/resize widget for uploading ads","shortMessageHtmlLink":"Merge pull request #887 from readthedocs/davidfischer/add-image-cropp…"}},{"before":"a152cb4d2b872fcd7ca8fcb8d4f8ac3b7c0d6fc5","after":null,"ref":"refs/heads/swap-pip-tools","pushedAt":"2024-07-01T21:38:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"}},{"before":"cb3eb98fb8e2adcd2faf13971234e19fc9501759","after":"1a4ff7db50e66c5217a02da80f05cfbd0b49e727","ref":"refs/heads/main","pushedAt":"2024-07-01T21:38:36.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Merge pull request #884 from readthedocs/swap-pip-tools\n\nHandle all requirements with pip-tools","shortMessageHtmlLink":"Merge pull request #884 from readthedocs/swap-pip-tools"}},{"before":null,"after":"acef920709db2192fbec87259fb048178a89bb5a","ref":"refs/heads/davidfischer/add-image-cropper-resizer","pushedAt":"2024-06-27T19:52:43.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Add a crop/resize widget for uploading ads\n\n- Uploading a \"wrong-sized\" image triggers the crop tool\n- Cropped image is saved to the form and uploaded as normal\n- Uses cropperjs.","shortMessageHtmlLink":"Add a crop/resize widget for uploading ads"}},{"before":null,"after":"709eca98e4da0954acedaaa38363288c0eb33701","ref":"refs/heads/davidfischer/improve-image-uploading","pushedAt":"2024-06-26T22:37:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Improve image uploading\n\n- Give immediate feedback on the image size\n- Show the uploaded image in the image preview","shortMessageHtmlLink":"Improve image uploading"}},{"before":"d465474f0f63cbf9783e3cff5ecc74d282871ad8","after":null,"ref":"refs/heads/niche-targeting","pushedAt":"2024-06-26T21:52:53.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"}},{"before":"8cd2165b7d8b21d0c81bd5da104a8c2c10fd33f3","after":"cb3eb98fb8e2adcd2faf13971234e19fc9501759","ref":"refs/heads/main","pushedAt":"2024-06-26T21:52:51.000Z","pushType":"pr_merge","commitsCount":7,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Merge pull request #865 from readthedocs/niche-targeting\n\nAdd support for niche targeting","shortMessageHtmlLink":"Merge pull request #865 from readthedocs/niche-targeting"}},{"before":"167195ed0b65822737832dcfa0e0e76a00043b47","after":"d465474f0f63cbf9783e3cff5ecc74d282871ad8","ref":"refs/heads/niche-targeting","pushedAt":"2024-06-26T21:02:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Move noqa","shortMessageHtmlLink":"Move noqa"}},{"before":"4048aa8e54d1aeec7e8d39323e6cf793c2d3b4be","after":"167195ed0b65822737832dcfa0e0e76a00043b47","ref":"refs/heads/niche-targeting","pushedAt":"2024-06-25T23:12:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Apply suggestions from code review\n\nCo-authored-by: David Fischer ","shortMessageHtmlLink":"Apply suggestions from code review"}},{"before":"c997e9f7d85eb690fdb358e910527a975b75e7dc","after":null,"ref":"refs/heads/clarify-copy","pushedAt":"2024-06-24T22:48:59.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"}},{"before":"4ffe11be9d7a0c9d17bf14742eac4d381b346614","after":"8cd2165b7d8b21d0c81bd5da104a8c2c10fd33f3","ref":"refs/heads/main","pushedAt":"2024-06-24T22:48:58.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Merge pull request #885 from readthedocs/clarify-copy\n\nClarify copy around payouts","shortMessageHtmlLink":"Merge pull request #885 from readthedocs/clarify-copy"}},{"before":"e9234e8803fae852e0f12e304f85f8057ed9d356","after":"4048aa8e54d1aeec7e8d39323e6cf793c2d3b4be","ref":"refs/heads/niche-targeting","pushedAt":"2024-06-24T22:18:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Fix tests","shortMessageHtmlLink":"Fix tests"}},{"before":"fc4d75ffcc4e08e1d97b3e9bed538560f5162cce","after":"e9234e8803fae852e0f12e304f85f8057ed9d356","ref":"refs/heads/niche-targeting","pushedAt":"2024-06-24T21:26:38.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Only run if the set of flights targeting has weights.","shortMessageHtmlLink":"Only run if the set of flights targeting has weights."}},{"before":"66cf03ab5c366924630247adbbdafbc7af0c69aa","after":"fc4d75ffcc4e08e1d97b3e9bed538560f5162cce","ref":"refs/heads/niche-targeting","pushedAt":"2024-06-24T21:25:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Only run if the set of flights targeting has weights.","shortMessageHtmlLink":"Only run if the set of flights targeting has weights."}},{"before":"662636b394f303dbdc3b366921c270817b049252","after":"66cf03ab5c366924630247adbbdafbc7af0c69aa","ref":"refs/heads/niche-targeting","pushedAt":"2024-06-24T21:08:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Make targeting smarter.\n\nOnly run queries when a flight actually has niche_targeting set.","shortMessageHtmlLink":"Make targeting smarter."}},{"before":"77b510df0d276a4bd7943245ce92608dffbe66ab","after":"662636b394f303dbdc3b366921c270817b049252","ref":"refs/heads/niche-targeting","pushedAt":"2024-06-24T21:07:45.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Make targeting smarter.\n\nOnly run queries when a flight actually has niche_targeting set.","shortMessageHtmlLink":"Make targeting smarter."}},{"before":"5128f78038e7ca5c42afc5b97a4e11de8682efd7","after":"c997e9f7d85eb690fdb358e910527a975b75e7dc","ref":"refs/heads/clarify-copy","pushedAt":"2024-06-24T18:22:23.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Clarify copy around payouts","shortMessageHtmlLink":"Clarify copy around payouts"}},{"before":null,"after":"5128f78038e7ca5c42afc5b97a4e11de8682efd7","ref":"refs/heads/clarify-copy","pushedAt":"2024-06-24T18:01:11.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Clarify copy around payouts","shortMessageHtmlLink":"Clarify copy around payouts"}},{"before":null,"after":"e2197c404983a25ae48ad4ff9b6088a1c422aac7","ref":"refs/heads/davidfischer/remove-mismatched-security-logs","pushedAt":"2024-06-20T22:30:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Log mismatched browser/os at lower level\n\n- These happen at pretty low rates in prod\n Browser: ~10/day, OS: ~30/day\n- This change just logs them at a lower level\n- These impressions are not billed both before this change and after","shortMessageHtmlLink":"Log mismatched browser/os at lower level"}},{"before":"9974b03e284a9dfaac8e48e6bc1cccfe22159ec8","after":"a152cb4d2b872fcd7ca8fcb8d4f8ac3b7c0d6fc5","ref":"refs/heads/swap-pip-tools","pushedAt":"2024-06-20T21:51:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Update python version","shortMessageHtmlLink":"Update python version"}},{"before":"cd48f08c35e57eebff2a07353ea563246b943127","after":"9974b03e284a9dfaac8e48e6bc1cccfe22159ec8","ref":"refs/heads/swap-pip-tools","pushedAt":"2024-06-20T21:07:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"A few more cleanup updates","shortMessageHtmlLink":"A few more cleanup updates"}},{"before":"bd5aed399d5150c3f7e680b233aac16a0ad80989","after":"cd48f08c35e57eebff2a07353ea563246b943127","ref":"refs/heads/swap-pip-tools","pushedAt":"2024-06-20T20:51:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Add auto-update script from RTD","shortMessageHtmlLink":"Add auto-update script from RTD"}},{"before":null,"after":"bd5aed399d5150c3f7e680b233aac16a0ad80989","ref":"refs/heads/swap-pip-tools","pushedAt":"2024-06-20T20:48:57.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ericholscher","name":"Eric Holscher","path":"/ericholscher","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/25510?s=80&v=4"},"commit":{"message":"Handle all requirements with pip-tools\n\nThis adds a short little update.sh script which runs pip-compile for each file.\n\nThis pins all our transitive dependencies,\nwhich is really nice for reproducible deployments,\nso we'll never get broken from a dependency breaking in the middle.","shortMessageHtmlLink":"Handle all requirements with pip-tools"}},{"before":"9346292576a407362220db280746bfbfe0cbfa30","after":"4ffe11be9d7a0c9d17bf14742eac4d381b346614","ref":"refs/heads/rel","pushedAt":"2024-06-20T20:05:26.000Z","pushType":"push","commitsCount":7,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Merge pull request #883 from readthedocs/rel-v5.4.0\n\nRelease v5.4.0","shortMessageHtmlLink":"Merge pull request #883 from readthedocs/rel-v5.4.0"}},{"before":"5cc37bf359b03eb7a71709eb052ef66e849e4bde","after":null,"ref":"refs/heads/rel-v5.4.0","pushedAt":"2024-06-20T20:04:19.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"}},{"before":"1562bdc1ce071e32e17fe84da69929af64d5abf8","after":"4ffe11be9d7a0c9d17bf14742eac4d381b346614","ref":"refs/heads/main","pushedAt":"2024-06-20T20:04:19.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Merge pull request #883 from readthedocs/rel-v5.4.0\n\nRelease v5.4.0","shortMessageHtmlLink":"Merge pull request #883 from readthedocs/rel-v5.4.0"}},{"before":null,"after":"5cc37bf359b03eb7a71709eb052ef66e849e4bde","ref":"refs/heads/rel-v5.4.0","pushedAt":"2024-06-20T19:56:48.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"davidfischer","name":"David Fischer","path":"/davidfischer","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/185043?s=80&v=4"},"commit":{"message":"Release v5.4.0","shortMessageHtmlLink":"Release v5.4.0"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEdlEsBwA","startCursor":null,"endCursor":null}},"title":"Activity · readthedocs/ethical-ad-server"}