{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":38067078,"defaultBranch":"master","name":"healthchecks","ownerLogin":"healthchecks","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-06-25T18:38:33.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/13053880?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718885937.0","currentOid":""},"activityList":{"items":[{"before":"bdb6f18a3d1b76bca81757ccd82f320229d6f52d","after":"7346994ae850d831a52b6e364a2b757054a0424c","ref":"refs/heads/master","pushedAt":"2024-07-18T15:19:12.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Fix field name in TypedDict used for type checking","shortMessageHtmlLink":"Fix field name in TypedDict used for type checking"}},{"before":"8054191be318453b6ed115648408369f40ddbbd5","after":"bdb6f18a3d1b76bca81757ccd82f320229d6f52d","ref":"refs/heads/master","pushedAt":"2024-07-18T15:16:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Add \"uuid\" field in API responses when read/write key is used\n\nThe API responses already contain ping_url, update_url, resume_url,\npause_url fields where the UUID can be extracted from, so we are\nnot exposing new information. The extraction can be finicky in,\nsay, shell-scripting scenarios. So for API user convenience we will\nnow also provide the check's code (UUID) as a separate field.\n\nFixes: #1007","shortMessageHtmlLink":"Add \"uuid\" field in API responses when read/write key is used"}},{"before":"61bdd975e8ebabdd0cc574620eb769b563ff92c4","after":"8054191be318453b6ed115648408369f40ddbbd5","ref":"refs/heads/master","pushedAt":"2024-07-18T13:21:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Remove HipChat, Pagerteam, Zendesk channel kinds\n\nHipChat and Pagerteam products have long been shut down,\nthe Zendesk integration was never fully implemented.","shortMessageHtmlLink":"Remove HipChat, Pagerteam, Zendesk channel kinds"}},{"before":"9660bc293cc217093f4364ccfa1c99c76a25b70d","after":"61bdd975e8ebabdd0cc574620eb769b563ff92c4","ref":"refs/heads/master","pushedAt":"2024-07-18T07:28:10.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Add \"(stops working Oct 2024)\" note to the old MS Teams integration","shortMessageHtmlLink":"Add \"(stops working Oct 2024)\" note to the old MS Teams integration"}},{"before":"ce5d9bcf5689282d0c15531db8061e3d929b6dc3","after":"9660bc293cc217093f4364ccfa1c99c76a25b70d","ref":"refs/heads/master","pushedAt":"2024-07-17T14:27:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Update hc.lib.s3 to retry failed requests *one time*","shortMessageHtmlLink":"Update hc.lib.s3 to retry failed requests *one time*"}},{"before":"e83f60cc0be7ddb6f8fbe1d8710375739195989e","after":"ce5d9bcf5689282d0c15531db8061e3d929b6dc3","ref":"refs/heads/master","pushedAt":"2024-07-17T14:04:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Re-enable S3 retries","shortMessageHtmlLink":"Re-enable S3 retries"}},{"before":"1877a8324f7c2f07dc241aa32e5ed7f9768b41e4","after":"e83f60cc0be7ddb6f8fbe1d8710375739195989e","ref":"refs/heads/master","pushedAt":"2024-07-17T10:35:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Implement Implement MS Teams Workflows integration\n\nWe already have a MS Teams integration but MS Teams is discontinuing\nthe incoming webhook feature used by this integration:\n\nhttps://devblogs.microsoft.com/microsoft365dev/retirement-of-office-365-connectors-within-microsoft-teams/\n\nMS Teams now recommends to use Workflows to post messages\nvia webhook. MS Teams does not provide backwards compatibility or\nan upgrade path for existing integrations.\n\nThis commit adds a new \"msteamsw\" integration which uses MS Teams\nWorkflows to post notifications. It also updates the instructions\nand illustrations in the \"Add MS Teams Integration\" page.\n\ncc: #1024","shortMessageHtmlLink":"Implement Implement MS Teams Workflows integration"}},{"before":"70c5be5c4b9b893a4e4f40ea0abace3a11c803fe","after":"1877a8324f7c2f07dc241aa32e5ed7f9768b41e4","ref":"refs/heads/master","pushedAt":"2024-07-12T00:09:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Disable S3 API request retries\n\nurrlib3's default number of retries is 3.\nIf requests to the S3 API are timing out, the retries usually\ndon't help, but a 10-second timeout turns into 10*3=30 seconds\nof python code being blocked.","shortMessageHtmlLink":"Disable S3 API request retries"}},{"before":"1b695c69706987bf9fc3286c3915747e4511ffb1","after":"70c5be5c4b9b893a4e4f40ea0abace3a11c803fe","ref":"refs/heads/master","pushedAt":"2024-07-11T14:46:01.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Fix type warning","shortMessageHtmlLink":"Fix type warning"}},{"before":"3e5080d9eb06dc3b44aa0aec5666d4a8c6431cb6","after":"1b695c69706987bf9fc3286c3915747e4511ffb1","ref":"refs/heads/master","pushedAt":"2024-07-11T14:38:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Improve performance of loading ping body previews\n\nDefer loading body_raw, instead load its first 150 bytes\nas \"body_raw_preview\". This reduces both network I/O to database,\nand disk I/O on the database host if the database contains large\nrequest bodies.\n\ncc: #1023","shortMessageHtmlLink":"Improve performance of loading ping body previews"}},{"before":"997154e3b09a857d4fd619f421cadae22ada4c6c","after":"3e5080d9eb06dc3b44aa0aec5666d4a8c6431cb6","ref":"refs/heads/master","pushedAt":"2024-07-11T13:36:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Remove Ping.body field","shortMessageHtmlLink":"Remove Ping.body field"}},{"before":"daaee30c889d2dfdebecd05c48799f111f63edb8","after":"997154e3b09a857d4fd619f421cadae22ada4c6c","ref":"refs/heads/master","pushedAt":"2024-07-11T13:17:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Remove usages of Ping.body","shortMessageHtmlLink":"Remove usages of Ping.body"}},{"before":"bc8fb90fed6be42ffa746dbe2ae7b58d05b72aef","after":"daaee30c889d2dfdebecd05c48799f111f63edb8","ref":"refs/heads/master","pushedAt":"2024-07-11T11:39:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Add data migration to move Check.body -> Check.body_raw\n\nWe used \"body\" to store request body as text.\nIn 2022 we added \"body_raw\" and started to use it to store request\nbody as bytes.\n\nIn python code we currently need to inspect both fields,\nbecause the data could be in \"body\" (for old pings) or in\n\"body_raw\" (for newer pings). My plan is to eventually get rid\nof the \"body\" field, and have \"body_raw\" only. This data migration\nis a step towards that: for any Ping objects that have non-empty\n\"body\" field, it moves the data to the \"body_raw\" field. After\napplying this migration, the \"body\" field should be empty (empty\nstring or null) for all Ping objects.","shortMessageHtmlLink":"Add data migration to move Check.body -> Check.body_raw"}},{"before":"cc51d2bd7928117a71d1e1e339acaadb995fc8a0","after":"bc8fb90fed6be42ffa746dbe2ae7b58d05b72aef","ref":"refs/heads/master","pushedAt":"2024-07-10T16:50:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Update Check.ping() to use select_for_update()\n\nWithout it, on MariaDB, concurrent pings can lead to a deadlock.\nThis results in OperationalError and HTTP 500 response to the client.\n\ncc: #1023","shortMessageHtmlLink":"Update Check.ping() to use select_for_update()"}},{"before":"3da7cf6027fb173586d8d746dc7a2942b21f6693","after":"cc51d2bd7928117a71d1e1e339acaadb995fc8a0","ref":"refs/heads/master","pushedAt":"2024-07-10T11:13:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Bump Django to 5.0.7","shortMessageHtmlLink":"Bump Django to 5.0.7"}},{"before":"b3de36d15cb7c2b9d2c8a846b518f050fffdc8e7","after":"3da7cf6027fb173586d8d746dc7a2942b21f6693","ref":"refs/heads/master","pushedAt":"2024-07-08T17:00:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Bump package versions","shortMessageHtmlLink":"Bump package versions"}},{"before":"23f3256abc08105d604e363e6e485fc7cb3a7b28","after":"b3de36d15cb7c2b9d2c8a846b518f050fffdc8e7","ref":"refs/heads/master","pushedAt":"2024-07-04T08:32:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Reorder system checks in hc.api.apps","shortMessageHtmlLink":"Reorder system checks in hc.api.apps"}},{"before":"57459b03756620aa9e2d17ab3854faf5bf8a857e","after":"23f3256abc08105d604e363e6e485fc7cb3a7b28","ref":"refs/heads/master","pushedAt":"2024-07-04T08:29:24.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Rename and clean up the apprise system check","shortMessageHtmlLink":"Rename and clean up the apprise system check"}},{"before":"3fbe8d52f01fddcfaf2aa1c462b2c876481d2433","after":"57459b03756620aa9e2d17ab3854faf5bf8a857e","ref":"refs/heads/master","pushedAt":"2024-07-04T08:12:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Show warning if apprise is enabled but apprise package is not installed (#1021)\n\n* fix: show warning if apprise is enabled and not installed in environment\r\n\r\n* renamed appraise check register\r\n\r\n* revert back changes in transport for apprise","shortMessageHtmlLink":"Show warning if apprise is enabled but apprise package is not install…"}},{"before":"8d0930c4b9a0fd4124f1c15b93dc4e9bd0a6ab62","after":"3fbe8d52f01fddcfaf2aa1c462b2c876481d2433","ref":"refs/heads/master","pushedAt":"2024-07-02T07:20:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Document criteria for accepting new integrations in CONTRIBUTING","shortMessageHtmlLink":"Document criteria for accepting new integrations in CONTRIBUTING"}},{"before":"b5eced26cf9c0d527840220aeb7e414f247d1c1f","after":"8d0930c4b9a0fd4124f1c15b93dc4e9bd0a6ab62","ref":"refs/heads/master","pushedAt":"2024-06-27T08:03:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Fix unclosed sockets in statsd tests","shortMessageHtmlLink":"Fix unclosed sockets in statsd tests"}},{"before":"324fa10ce76b6e03546ed9eb488f92da6a4a44fc","after":"b5eced26cf9c0d527840220aeb7e414f247d1c1f","ref":"refs/heads/master","pushedAt":"2024-06-27T07:20:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Fix migrations for Django 5.1","shortMessageHtmlLink":"Fix migrations for Django 5.1"}},{"before":"9a44ef1571bdba536d1446625707a879a5e9513b","after":"324fa10ce76b6e03546ed9eb488f92da6a4a44fc","ref":"refs/heads/master","pushedAt":"2024-06-20T12:58:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Fix Check.lock_and_delete() to gracefully handle already deleted check","shortMessageHtmlLink":"Fix Check.lock_and_delete() to gracefully handle already deleted check"}},{"before":"17d01ee6e25d73932c22500518cdad6169baa730","after":"9a44ef1571bdba536d1446625707a879a5e9513b","ref":"refs/heads/master","pushedAt":"2024-06-20T12:41:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Fix typos","shortMessageHtmlLink":"Fix typos"}},{"before":"9dbd961bebc8da763b33bdfd4e049d578168ccb6","after":"17d01ee6e25d73932c22500518cdad6169baa730","ref":"refs/heads/master","pushedAt":"2024-06-20T12:15:38.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Update changelog for release","shortMessageHtmlLink":"Update changelog for release"}},{"before":"475bdff87dd3713f2fbe2abec0ed8714117867f5","after":"9dbd961bebc8da763b33bdfd4e049d578168ccb6","ref":"refs/heads/master","pushedAt":"2024-06-20T12:11:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Add test case for InvalidResponseError handling","shortMessageHtmlLink":"Add test case for InvalidResponseError handling"}},{"before":"44b163cc5281ff80e11335e49952e2d70795dd31","after":"475bdff87dd3713f2fbe2abec0ed8714117867f5","ref":"refs/heads/master","pushedAt":"2024-06-18T20:50:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Add handling for minio.InvalidResponseError exceptions","shortMessageHtmlLink":"Add handling for minio.InvalidResponseError exceptions"}},{"before":"0874ced368c8794928c927e8aed50b3612f9fb89","after":"44b163cc5281ff80e11335e49952e2d70795dd31","ref":"refs/heads/master","pushedAt":"2024-06-17T11:14:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Fix JS formatting","shortMessageHtmlLink":"Fix JS formatting"}},{"before":"e007f75a703364a6e97741b21203b739ad85d185","after":"0874ced368c8794928c927e8aed50b3612f9fb89","ref":"refs/heads/master","pushedAt":"2024-06-17T11:07:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"format dates in logs to include year unless they are from current year\n\nfixes: #1008","shortMessageHtmlLink":"format dates in logs to include year unless they are from current year"}},{"before":"b2c5e91c70b6fccaa1052436c4e700220dec8c08","after":"e007f75a703364a6e97741b21203b739ad85d185","ref":"refs/heads/master","pushedAt":"2024-06-17T07:49:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cuu508","name":"Pēteris Caune","path":"/cuu508","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/661859?s=80&v=4"},"commit":{"message":"Bump package versions","shortMessageHtmlLink":"Bump package versions"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEgxG8KQA","startCursor":null,"endCursor":null}},"title":"Activity · healthchecks/healthchecks"}