{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":266752699,"defaultBranch":"main","name":"pycloudlib","ownerLogin":"canonical","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-05-25T10:40:01.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/53057619?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717451780.0","currentOid":""},"activityList":{"items":[{"before":"20b33480c838ed08b2d2422f5290b5e59b8e0b17","after":"a2486c039a0498d4fd3bfe6baecd0e69b2d845c0","ref":"refs/heads/main","pushedAt":"2024-06-03T21:56:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"fix(ec2): Define GP3 releases separately from LTS releases (#382)\n\nThey are completely unrelated. They just happened to overlap in the\r\npast.\r\nAlso drop lunar from the list as it is unsupported.\r\nThe previous commit that updated the list of LTS releases uncovered\r\nthis bug.","shortMessageHtmlLink":"fix(ec2): Define GP3 releases separately from LTS releases (#382)"}},{"before":"d65b3afad0593681a6444bafb52fb85e418b1bcd","after":"20b33480c838ed08b2d2422f5290b5e59b8e0b17","ref":"refs/heads/main","pushedAt":"2024-06-03T15:32:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"feat: Add Oracular to UBUNTU_RELEASE_VERSION_MAP (#381)\n\nAlso add noble to the LTS list","shortMessageHtmlLink":"feat: Add Oracular to UBUNTU_RELEASE_VERSION_MAP (#381)"}},{"before":"ae23932d2ad3c34445a631988565468c30b9b0e6","after":"d65b3afad0593681a6444bafb52fb85e418b1bcd","ref":"refs/heads/main","pushedAt":"2024-05-23T07:00:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"feat(ibm): improve ibm vpc baremetal behaviour (#375)\n\n## Commit Description\r\nPreviously, if baremetal instances could not be launched due to\r\nlack of capacity on the IBM Cloud, pycloudlib would fail to detect\r\nthis and just assume that the instance booted correctly.\r\nNow, pycloudlib will return a capacity exception once this is\r\ndetected, allowing for consumers of pycloudlib to properly\r\nimplement retries for BM instances on IBM VPC.\r\n\r\n## Description of Testing:\r\nThis was tested both through an external program that leverages\r\npycloudlib, and through a modified version of the ibm example script.\r\nThe external program validated the use case of implementing retries for\r\nbaremetal.","shortMessageHtmlLink":"feat(ibm): improve ibm vpc baremetal behaviour (#375)"}},{"before":"3fb46643acd9271083b29ed62cf5b7c9e7f1db9c","after":"ae23932d2ad3c34445a631988565468c30b9b0e6","ref":"refs/heads/main","pushedAt":"2024-05-22T13:51:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"Add missing `noble` image strings on Azure (#378)\n\nThis changeset adds three new entries for the dictionaries which point\r\nto the Azure images to be launched by pycloudlib, all of them `noble`:\r\n- the 24.04 Pro image\r\n- the 24.04 released server image\r\n- the 24.04 CVM image\r\n\r\nFixes: GH-376\r\n\r\n---------\r\n\r\nSigned-off-by: Renan Rodrigo ","shortMessageHtmlLink":"Add missing noble image strings on Azure (#378)"}},{"before":"a866c23491847e1bad3e6082088be031a07c3cd7","after":"3fb46643acd9271083b29ed62cf5b7c9e7f1db9c","ref":"refs/heads/main","pushedAt":"2024-05-20T10:49:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"refactor: migrate to ruff (#374)\n\nRefactor black, isort, flake8 to use ruff.\r\nApply ruff format.\r\n\r\nFixes: GH-373","shortMessageHtmlLink":"refactor: migrate to ruff (#374)"}},{"before":"177c437fd49e41e30433681c4fd304431104dc2d","after":"a866c23491847e1bad3e6082088be031a07c3cd7","ref":"refs/heads/main","pushedAt":"2024-05-08T12:40:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"chore: fix new issue link (#372)","shortMessageHtmlLink":"chore: fix new issue link (#372)"}},{"before":"0089dc5f790fc5448f61b153e2264474b54aeadb","after":"177c437fd49e41e30433681c4fd304431104dc2d","ref":"refs/heads/main","pushedAt":"2024-05-08T08:30:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"feat(PEP561)!: distribute type hints (#370)\n\nAllow consumers of the library to check type hints with tools like mypy.\r\n\r\nhttps://peps.python.org/pep-0561/#packaging-type-information","shortMessageHtmlLink":"feat(PEP561)!: distribute type hints (#370)"}},{"before":"cd4ca879a6a794600e2836ff6fdbff26890d85e5","after":"0089dc5f790fc5448f61b153e2264474b54aeadb","ref":"refs/heads/main","pushedAt":"2024-05-06T14:57:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"feat(oracle): ability to specify which fault domain to launch in (#368)\n\nFault domains are physical groupings of hardware within an availability\r\ndomain for when a compute instance is going to be created. PR allows to\r\nspecify which fault domain to use which is useful for low capacity\r\ninstances. If no fault domain is provided (the default) then oci infra\r\nwill automatically try to choose the best one.","shortMessageHtmlLink":"feat(oracle): ability to specify which fault domain to launch in (#368)"}},{"before":"f935bb51b38412aabed1e6e27e515c5c6e12a3b6","after":"cd4ca879a6a794600e2836ff6fdbff26890d85e5","ref":"refs/heads/main","pushedAt":"2024-05-01T13:12:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"feat(ibm): check if floating IP is available before creating instance (#367)\n\nPreviously, the instance would be created/launched and then the IP\r\naddress would be attached. But if an existing floating IP is specified\r\nto be used, and no IP can be found, then an instance was created for\r\nnothing.","shortMessageHtmlLink":"feat(ibm): check if floating IP is available before creating instance ("}},{"before":"12c1168cd23314a023fd6b2bf0c2b00b48a3c107","after":"f935bb51b38412aabed1e6e27e515c5c6e12a3b6","ref":"refs/heads/main","pushedAt":"2024-04-30T12:48:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"feat(ibm): Allow floating IP in toml config (#366)\n\nAllow behavior added in 383d994 to work via pycloudlib.toml","shortMessageHtmlLink":"feat(ibm): Allow floating IP in toml config (#366)"}},{"before":"383d994456c039d92819558d2184780b149e5d3c","after":"12c1168cd23314a023fd6b2bf0c2b00b48a3c107","ref":"refs/heads/main","pushedAt":"2024-04-29T16:46:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"Stricter-floating-ip-selection-per-zone (#365)\n\nMy recent change to allow for using existing floating IPs didn't take\r\ninto account the zone of the floating IP. As such, attempting to attach\r\na floating IP from zone 3 but to an instance in zone 2 would fail. But\r\nnow it will only choose floating IPs in the same zone. :D","shortMessageHtmlLink":"Stricter-floating-ip-selection-per-zone (#365)"}},{"before":"fe32687ee515cae71a1f254fa6a185ea717e2dd0","after":"383d994456c039d92819558d2184780b149e5d3c","ref":"refs/heads/main","pushedAt":"2024-04-26T14:25:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"feat(ibm): add ability to choose from existing floating ips (#364)\n\nCurrently, for IBM VPC, we only create floating IPs on the fly.\r\nAdding the ability to choose an existing floating IP that has already\r\nbeen reserved ahead of time, allows for launching instances using\r\nalready known IP addresses.","shortMessageHtmlLink":"feat(ibm): add ability to choose from existing floating ips (#364)"}},{"before":"4ac794219977efd22f291dda44095d37a2756253","after":"fe32687ee515cae71a1f254fa6a185ea717e2dd0","ref":"refs/heads/main","pushedAt":"2024-04-24T15:59:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"holmanb","name":"Brett Holman","path":"/holmanb","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16310367?s=80&v=4"},"commit":{"message":"ci: add better version check github action (#354)\n\nImproved the github CI/CD version check so that it not only ensures the\r\nversion has been bumped, but that the version bump is sane.\r\n\r\nThe following tests were run against the version check to ensure it\r\nfunctions as desired:\r\n```python\r\nclass TestVersionComparison(unittest.TestCase):\r\n def test_pass_cases(self):\r\n self.assertEqual(compare_versions(\"1!1.0.0\", \"1!1.0.1\"), \"Version bump is sane.\")\r\n self.assertEqual(compare_versions(\"1!1.0.0\", \"1!1.1.0\"), \"Version bump is sane.\")\r\n self.assertEqual(compare_versions(\"1!1.1.1\", \"1!2.0.0\"), \"Version bump is sane.\")\r\n self.assertEqual(compare_versions(\"1!1.1.0\", \"1!1.1.1\"), \"Version bump is sane.\")\r\n self.assertEqual(compare_versions(\"1!1.1.1\", \"1!1.1.2\"), \"Version bump is sane.\")\r\n\r\n def test_fail_cases(self):\r\n self.assertNotEqual(compare_versions(\"1!1.0.0\", \"1!1.0.0\"), \"Version bump is sane.\")\r\n self.assertNotEqual(compare_versions(\"1!1.0.0\", \"1!1.2.1\"), \"Version bump is sane.\")\r\n self.assertNotEqual(compare_versions(\"1!1.0.0\", \"1!2.1.0\"), \"Version bump is sane.\")\r\n self.assertNotEqual(compare_versions(\"1!1.0.0\", \"1!0.9.9\"), \"Version bump is sane.\")\r\n self.assertNotEqual(compare_versions(\"1!1.1.2\", \"1!1.1.1\"), \"Version bump is sane.\")\r\n self.assertNotEqual(compare_versions(\"1!1.2.1\", \"1!1.1.1\"), \"Version bump is sane.\")\r\n self.assertNotEqual(compare_versions(\"1!2.1.1\", \"1!1.1.1\"), \"Version bump is sane.\")\r\n```\r\n\r\nI also already opened a temporary PR against my own fork to ensure the\r\ngithub action behaved as expected.\r\n\r\nCo-authored-by: Chad Smith ","shortMessageHtmlLink":"ci: add better version check github action (#354)"}},{"before":"f244fe822aada36b9c043da7e7767b7216151da2","after":"4ac794219977efd22f291dda44095d37a2756253","ref":"refs/heads/main","pushedAt":"2024-04-23T16:25:24.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"Merge pull request #355 from aciba90/ec2-ipv6\n\nfeat(ec2): ipv6 support for new nics","shortMessageHtmlLink":"Merge pull request #355 from aciba90/ec2-ipv6"}},{"before":"294386bd6511648314f91f4174976fdfa2f27dea","after":"f244fe822aada36b9c043da7e7767b7216151da2","ref":"refs/heads/main","pushedAt":"2024-04-23T14:19:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"fix(azure): make necessary checks before creating resources (#357)\n\nFrom testing with retries, we create a number of ips with each retry. We\r\nare avoiding this by performing checks before creating the resources.\r\n\r\nCo-authored-by: Alberto Contreras ","shortMessageHtmlLink":"fix(azure): make necessary checks before creating resources (#357)"}},{"before":"679f5fcd6efa0261520bc751e32d1970aaedb1cc","after":"294386bd6511648314f91f4174976fdfa2f27dea","ref":"refs/heads/main","pushedAt":"2024-04-23T09:52:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"chore: Drop all reference to simplestreams (#356)","shortMessageHtmlLink":"chore: Drop all reference to simplestreams (#356)"}},{"before":"10721152fb3685a0f0aa38c78736a2aac551663c","after":"679f5fcd6efa0261520bc751e32d1970aaedb1cc","ref":"refs/heads/main","pushedAt":"2024-04-19T13:37:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"fix(azure): Use correct ip when creating with multiple nics (#362)\n\nUse the primary nic ip address when creating an VM with multi nics.\r\nNeeded for https://github.com/canonical/cloud-init/pull/5180","shortMessageHtmlLink":"fix(azure): Use correct ip when creating with multiple nics (#362)"}},{"before":"6c750e071c7a969fafeabb7e006f4959eb26c605","after":"10721152fb3685a0f0aa38c78736a2aac551663c","ref":"refs/heads/main","pushedAt":"2024-04-18T00:30:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"blackboxsw","name":"Chad Smith","path":"/blackboxsw","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/14128326?s=80&v=4"},"commit":{"message":"fix(azure): update azure minimal image dailies","shortMessageHtmlLink":"fix(azure): update azure minimal image dailies"}},{"before":"9714d087f3df4c7654db45def76395856f36545a","after":"6c750e071c7a969fafeabb7e006f4959eb26c605","ref":"refs/heads/main","pushedAt":"2024-04-17T20:13:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"fix(azure): Use correct source for Azure dailies (#360)\n\nOld source is a month old now 😱","shortMessageHtmlLink":"fix(azure): Use correct source for Azure dailies (#360)"}},{"before":"08c625326e661733eb3539aab27247d1189c6370","after":"9714d087f3df4c7654db45def76395856f36545a","ref":"refs/heads/main","pushedAt":"2024-03-27T13:52:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"feat(azure): removing nics from NICs (CPC-4043) (#351)","shortMessageHtmlLink":"feat(azure): removing nics from NICs (CPC-4043) (#351)"}},{"before":"fe566c5e5a83005debc9ce88a68090ac71e5d333","after":"08c625326e661733eb3539aab27247d1189c6370","ref":"refs/heads/main","pushedAt":"2024-03-26T16:22:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"Improve oracle example script's ease of use and rename it so that it can actually be run (#349)\n\nPreviously, if you try to run the oracle example script, it would throw\r\nan error because the file is named `oci.py` and this conflicts with the\r\nnaming of the `oci` module such that pycloudlib would fail to import the\r\n`oci` module. Thus, it has been renamed to `oracle.py`.\r\n\r\nAlso, the flexibility and ease of use of the script has been improved so\r\nthat the `compartment_id` and `availability_domain` values can be set\r\neither in variables in the script, or passed as cli args. And if neither\r\nof these two things are done, then the script will simply prompt the\r\nuser for the two values.","shortMessageHtmlLink":"Improve oracle example script's ease of use and rename it so that it …"}},{"before":"fec76cc7e52b4fd5397c8528727eade5ac159935","after":"fe566c5e5a83005debc9ce88a68090ac71e5d333","ref":"refs/heads/main","pushedAt":"2024-03-25T14:17:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"holmanb","name":"Brett Holman","path":"/holmanb","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16310367?s=80&v=4"},"commit":{"message":"feat(ibm): add ability to get image id from name (#353)\n\nThis change makes it much easier to select an image to launch an\r\ninstance from.","shortMessageHtmlLink":"feat(ibm): add ability to get image id from name (#353)"}},{"before":"c0fcea25149c1cf5f8a56aa12181433a560d148e","after":"fec76cc7e52b4fd5397c8528727eade5ac159935","ref":"refs/heads/main","pushedAt":"2024-03-20T10:38:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"fix(azure): add_network_interface int tests pass\n\nAzure has to deallocate the VM and resources before attaching\nthe new network interface.","shortMessageHtmlLink":"fix(azure): add_network_interface int tests pass"}},{"before":"54193d058d740a9f0a57b238271724a4f51c4b77","after":"c0fcea25149c1cf5f8a56aa12181433a560d148e","ref":"refs/heads/main","pushedAt":"2024-03-14T08:20:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"feat(azure): get boot diagnostics of instances (SC-1706) (#338)","shortMessageHtmlLink":"feat(azure): get boot diagnostics of instances (SC-1706) (#338)"}},{"before":"f21f5342150524346c33a372773a9da358cae2f3","after":"54193d058d740a9f0a57b238271724a4f51c4b77","ref":"refs/heads/main","pushedAt":"2024-03-12T19:32:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aciba90","name":"Alberto Contreras","path":"/aciba90","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/22963691?s=80&v=4"},"commit":{"message":"feat(azure): attach nics to running instance (SC-1712) (#340)","shortMessageHtmlLink":"feat(azure): attach nics to running instance (SC-1712) (#340)"}},{"before":"c875a81b9936eedfd477b75d560d00700a3409c9","after":"f21f5342150524346c33a372773a9da358cae2f3","ref":"refs/heads/main","pushedAt":"2024-02-20T16:46:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"paride","name":"Paride Legovini","path":"/paride","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7614669?s=80&v=4"},"commit":{"message":"Bump VERSION to 6.0.3\n\nI wasted version 1!6.0.2 while testing the previous PR, which required\nrunning jobs that normally only run when new commits land to the main\nbranch. We can't just delete the tag and delete the release from pypi\nbecause pypi doesn't allow version reuse. Let's just bump VERSION yet\nanother time.","shortMessageHtmlLink":"Bump VERSION to 6.0.3"}},{"before":"c875a81b9936eedfd477b75d560d00700a3409c9","after":null,"ref":"refs/tags/1!6.0.2","pushedAt":"2024-02-20T15:10:03.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"paride","name":"Paride Legovini","path":"/paride","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7614669?s=80&v=4"}},{"before":"0431a533613463032cc9e432544a212c5d5fa9ac","after":null,"ref":"refs/tags/1!6.0.2","pushedAt":"2024-02-20T15:06:47.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"paride","name":"Paride Legovini","path":"/paride","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7614669?s=80&v=4"}},{"before":"0431a533613463032cc9e432544a212c5d5fa9ac","after":"c875a81b9936eedfd477b75d560d00700a3409c9","ref":"refs/heads/main","pushedAt":"2024-02-20T15:01:39.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"paride","name":"Paride Legovini","path":"/paride","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7614669?s=80&v=4"},"commit":{"message":"Merge pull request #346 from paride/main\n\nci: fix main-check job by properly passing the GCE creds","shortMessageHtmlLink":"Merge pull request #346 from paride/main"}},{"before":"363dede089778f7fed8b37a79a2e830e540a2b09","after":"0431a533613463032cc9e432544a212c5d5fa9ac","ref":"refs/heads/main","pushedAt":"2024-02-20T14:48:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"TheRealFalcon","name":"James Falcon","path":"/TheRealFalcon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153674?s=80&v=4"},"commit":{"message":"Update README.md to use proper git clone url (#344)","shortMessageHtmlLink":"Update README.md to use proper git clone url (#344)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEW2g1EAA","startCursor":null,"endCursor":null}},"title":"Activity · canonical/pycloudlib"}