{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":523043277,"defaultBranch":"main","name":"ruff","ownerLogin":"astral-sh","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-08-09T17:17:44.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/115962839?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1717197534.0","currentOid":""},"activityList":{"items":[{"before":"ccacf478020f7713a20a23210633e602cdd48053","after":null,"ref":"refs/heads/charlie/red","pushedAt":"2024-05-31T23:18:54.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"}},{"before":"312f6640b837eb1189748980707cfed70d1f5ffb","after":"b80bf22c4d34d3bb1a68d8a44bddc566d2bde4c4","ref":"refs/heads/main","pushedAt":"2024-05-31T23:18:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Omit `red-knot` PRs from the changelog (#11666)\n\n## Summary\r\n\r\nThis just ensures that PRs labelled with `red-knot` are automatically\r\nfiltered out from the auto-generated changelog (which we then manually\r\nfinalize anyway).","shortMessageHtmlLink":"Omit red-knot PRs from the changelog (#11666)"}},{"before":null,"after":"ccacf478020f7713a20a23210633e602cdd48053","ref":"refs/heads/charlie/red","pushedAt":"2024-05-31T23:13:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Omit red-knot PRs from the changelog","shortMessageHtmlLink":"Omit red-knot PRs from the changelog"}},{"before":"91a5fdee7a80a7a83827eb7a651bce9b3226bfe8","after":"312f6640b837eb1189748980707cfed70d1f5ffb","ref":"refs/heads/main","pushedAt":"2024-05-31T21:48:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"[`flake8-bugbear`] Implement `return-in-generator` (`B901`) (#11644)\n\n## Summary\r\n\r\nThis PR implements the rule B901, which is part of the opinionated rules\r\nof `flake8-bugbear`.\r\n\r\nThis rule seems to be desired in `ruff` as per\r\nhttps://github.com/astral-sh/ruff/issues/3758 and\r\nhttps://github.com/astral-sh/ruff/issues/2954#issuecomment-1441162976.\r\n\r\n## Test Plan\r\n\r\nAs this PR was made closely following the\r\n[CONTRIBUTING.md](https://github.com/astral-sh/ruff/blob/8a25531a7144fd4a6b62c54efde1ef28e2dc18c4/CONTRIBUTING.md),\r\nit tests using the snapshot approach, that is described there.\r\n\r\n## Sources\r\n\r\nThe implementation is inspired by [the original implementation in the\r\n`flake8-bugbear`\r\nrepository](https://github.com/PyCQA/flake8-bugbear/blob/d1aec4cbef7c4a49147c428b7e4a97e497b5d163/bugbear.py#L1092).\r\nThe error message and [test\r\nfile](https://github.com/PyCQA/flake8-bugbear/blob/d1aec4cbef7c4a49147c428b7e4a97e497b5d163/tests/b901.py)\r\nwhere also copied from there.\r\n\r\nThe documentation I came up with on my own and needs improvement. Maybe\r\nthe example given in\r\nhttps://github.com/astral-sh/ruff/issues/2954#issuecomment-1441162976\r\ncould be used, but maybe they are too complex, I'm not sure.\r\n\r\n## Open Questions\r\n\r\n- [ ] Documentation. (See above.)\r\n\r\n- [x] Can I access the parent in a visitor?\r\n\r\nThe [original\r\nimplementation](https://github.com/PyCQA/flake8-bugbear/blob/d1aec4cbef7c4a49147c428b7e4a97e497b5d163/bugbear.py#L1100)\r\nreferences the `yield` statement's parent to check if it is an\r\nexpression statement. I didn't find a way to do this in `ruff` and used\r\nthe `is_expresssion_statement` field on the visitor instead. What are\r\nyour thoughts on this? Is it possible and / or desired to access the\r\nparent node here?\r\n\r\n- [x] Is `Option::is_some(...)` -> `...unwrap()` the right thing to do?\r\n\r\nReferring to [this piece of\r\ncode](https://github.com/tobb10001/ruff/blob/9d5a280f71103ef33df5676d00a6c68c601261ac/crates/ruff_linter/src/rules/flake8_bugbear/rules/return_x_in_generator.rs?plain=1#L91-L96).\r\nFrom my understanding, the `.unwrap()` is safe, because it is checked\r\nthat `return_` is not `None`. However, I feel like I missed a more\r\nelegant solution that does both in one.\r\n\r\n## Other\r\n\r\nI don't know a lot about this rule, I just implemented it because I\r\nfound it in a\r\nhttps://github.com/astral-sh/ruff/labels/good%20first%20issue.\r\n\r\nI'm new to Rust, so any constructive critisism is appreciated.\r\n\r\n---------\r\n\r\nCo-authored-by: Charlie Marsh ","shortMessageHtmlLink":"[flake8-bugbear] Implement return-in-generator (B901) (#11644)"}},{"before":"e74101affaefe9c9e05c082c1ec8e3a09bcff3d0","after":null,"ref":"refs/heads/charlie/p","pushedAt":"2024-05-31T20:35:19.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"}},{"before":"1ad5f9c0382f5fa8ed4f38c972a3799be89a7172","after":"91a5fdee7a80a7a83827eb7a651bce9b3226bfe8","ref":"refs/heads/main","pushedAt":"2024-05-31T20:35:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Use find in indent detection (#11650)","shortMessageHtmlLink":"Use find in indent detection (#11650)"}},{"before":"daaeacb39bfe82990757b656e63800c2e27f89f5","after":"e74101affaefe9c9e05c082c1ec8e3a09bcff3d0","ref":"refs/heads/charlie/p","pushedAt":"2024-05-31T20:31:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Use find in indent detection","shortMessageHtmlLink":"Use find in indent detection"}},{"before":null,"after":"daaeacb39bfe82990757b656e63800c2e27f89f5","ref":"refs/heads/charlie/p","pushedAt":"2024-05-31T20:31:17.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Use find in indent detection","shortMessageHtmlLink":"Use find in indent detection"}},{"before":"85fb11e9bab33efca0ed30a236df616be4547913","after":null,"ref":"refs/heads/charlie/bump","pushedAt":"2024-05-31T20:30:36.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"}},{"before":"e914bc300b46840b0d48c5ece1c0e63418820ce0","after":"1ad5f9c0382f5fa8ed4f38c972a3799be89a7172","ref":"refs/heads/main","pushedAt":"2024-05-31T20:30:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Bump version to v0.4.7 (#11646)","shortMessageHtmlLink":"Bump version to v0.4.7 (#11646)"}},{"before":"cbc6fe75ebf3cef3b735ee8f1169761515dce544","after":null,"ref":"refs/heads/ruff.f401.nondet2","pushedAt":"2024-05-31T20:29:09.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"}},{"before":"27f6f048f0bd6fd340e7010a96517340491ec119","after":"e914bc300b46840b0d48c5ece1c0e63418820ce0","ref":"refs/heads/main","pushedAt":"2024-05-31T20:29:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"F401 sort bindings before adding to __all__ (#11648)\n\nSort the binding IDs before passing them to the add-to-`__all__`\r\nfunction to address #11619.","shortMessageHtmlLink":"F401 sort bindings before adding to __all__ (#11648)"}},{"before":"d62a617938fbf56169af6fb8bd0900e3a9cb1526","after":"27f6f048f0bd6fd340e7010a96517340491ec119","ref":"refs/heads/main","pushedAt":"2024-05-31T20:27:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"carljm","name":"Carl Meyer","path":"/carljm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61586?s=80&v=4"},"commit":{"message":"[red-knot] initial (very incomplete) flow graph (#11624)\n\n\r\n\r\n## Summary\r\n\r\nIntroduces the skeleton of the flow graph. So far it doesn't actually\r\nhandle any non-linear control flow :) But it does show how we can go\r\nfrom an expression that references a symbol, backward through the flow\r\ngraph, to find reachable definitions of that symbol.\r\n\r\nAdding non-linear control flow will mean adding flow nodes with multiple\r\npredecessors, which will introduce more complexity into\r\n`ReachableDefinitionsIterator.next()`. But one step at a time.\r\n\r\n## Test Plan\r\n\r\nAdded a (very basic) test.","shortMessageHtmlLink":"[red-knot] initial (very incomplete) flow graph (#11624)"}},{"before":"15977ed2bae6c53b9b70520699d54d1ce995896c","after":"cbc6fe75ebf3cef3b735ee8f1169761515dce544","ref":"refs/heads/ruff.f401.nondet2","pushedAt":"2024-05-31T20:25:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Use vec","shortMessageHtmlLink":"Use vec"}},{"before":"ea56e1011053314d55b1e3b16efff7c45c0ca061","after":null,"ref":"refs/heads/module-rs-comments","pushedAt":"2024-05-31T20:04:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"AlexWaygood","name":"Alex Waygood","path":"/AlexWaygood","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/66076021?s=80&v=4"}},{"before":"16a926d138108b22214a3c010c4d739baa56fe4a","after":"d62a617938fbf56169af6fb8bd0900e3a9cb1526","ref":"refs/heads/main","pushedAt":"2024-05-31T20:04:47.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AlexWaygood","name":"Alex Waygood","path":"/AlexWaygood","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/66076021?s=80&v=4"},"commit":{"message":"red-knot: Don't refer to `Module` instances as IDs (#11649)","shortMessageHtmlLink":"red-knot: Don't refer to Module instances as IDs (#11649)"}},{"before":"5a85e81c92138117334f682837fe43f8bd4f8242","after":"ea56e1011053314d55b1e3b16efff7c45c0ca061","ref":"refs/heads/module-rs-comments","pushedAt":"2024-05-31T20:01:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AlexWaygood","name":"Alex Waygood","path":"/AlexWaygood","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/66076021?s=80&v=4"},"commit":{"message":"A few more tweaks","shortMessageHtmlLink":"A few more tweaks"}},{"before":"05566c6075d6e4a22af95f9e3600253ce247f16a","after":"16a926d138108b22214a3c010c4d739baa56fe4a","ref":"refs/heads/main","pushedAt":"2024-05-31T19:52:29.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"carljm","name":"Carl Meyer","path":"/carljm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/61586?s=80&v=4"},"commit":{"message":"[red-knot] infer int literal types (#11623)\n\n## Summary\r\n\r\nGive red-knot the ability to infer int literal types. This is quick and\r\neasy, mostly because these types are a convenient way to observe\r\ncontrol-flow handling with simple assignments.\r\n\r\n## Test Plan\r\n\r\nAdded test.","shortMessageHtmlLink":"[red-knot] infer int literal types (#11623)"}},{"before":"7ce17b773643556d9d2c7aab1506ece87991c0f0","after":"05566c6075d6e4a22af95f9e3600253ce247f16a","ref":"refs/heads/main","pushedAt":"2024-05-31T19:33:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Update `Who's Using Ruff?` section to include `Godot` (#11647)\n\n## Summary\r\n\r\n- Ever since https://github.com/godotengine/godot/pull/90457 was merged\r\ninto the `master` branch, Godot has been using ruff for linting and\r\nformatting Python files. As such, this PR adds Godot to the \"Who's Using\r\nRuff?\" section of the main `README.md` file.\r\n\r\n## Test Plan\r\n\r\n- N/A","shortMessageHtmlLink":"Update Who's Using Ruff? section to include Godot (#11647)"}},{"before":null,"after":"5a85e81c92138117334f682837fe43f8bd4f8242","ref":"refs/heads/module-rs-comments","pushedAt":"2024-05-31T19:30:18.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"AlexWaygood","name":"Alex Waygood","path":"/AlexWaygood","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/66076021?s=80&v=4"},"commit":{"message":"red-knot: Don't refer to instances as IDs","shortMessageHtmlLink":"red-knot: Don't refer to instances as IDs"}},{"before":null,"after":"15977ed2bae6c53b9b70520699d54d1ce995896c","ref":"refs/heads/ruff.f401.nondet2","pushedAt":"2024-05-31T19:24:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"plredmond","name":null,"path":"/plredmond","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/51248199?s=80&v=4"},"commit":{"message":"sort bindings before adding to __all__","shortMessageHtmlLink":"sort bindings before adding to __all__"}},{"before":"353fdbd85f654dc56e73ba5a7c461351227abf2f","after":"85fb11e9bab33efca0ed30a236df616be4547913","ref":"refs/heads/charlie/bump","pushedAt":"2024-05-31T19:12:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Bump version to v0.4.7","shortMessageHtmlLink":"Bump version to v0.4.7"}},{"before":null,"after":"353fdbd85f654dc56e73ba5a7c461351227abf2f","ref":"refs/heads/charlie/bump","pushedAt":"2024-05-31T19:12:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Bump version to v0.4.7","shortMessageHtmlLink":"Bump version to v0.4.7"}},{"before":"f9a64503c82873a73358cd8d910fc5a4b80f3f59","after":"7ce17b773643556d9d2c7aab1506ece87991c0f0","ref":"refs/heads/main","pushedAt":"2024-05-31T19:06:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Add Vim and Kate setup guide for `ruff server` (#11615)\n\n## Summary\r\n\r\nIn the [roadmap for `ruff\r\nserver`](https://github.com/astral-sh/ruff/discussions/10581) support\r\nfor vim and kate is listed. Therefore I added setup guides for them\r\nbased on the neovim guide. As I don't use pyright I wasn't able to\r\ntranslate the corresponding part from the neovim guide.\r\n\r\n## Test Plan\r\n\r\nDoesn't apply.","shortMessageHtmlLink":"Add Vim and Kate setup guide for ruff server (#11615)"}},{"before":"32e8f2f53c94ec004a1a1ea094d955fc759f79e8","after":null,"ref":"refs/heads/charlie/pos","pushedAt":"2024-05-31T19:04:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"}},{"before":"8a25531a7144fd4a6b62c54efde1ef28e2dc18c4","after":"f9a64503c82873a73358cd8d910fc5a4b80f3f59","ref":"refs/heads/main","pushedAt":"2024-05-31T19:04:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Use char index rather than position for indent slice (#11645)\n\n## Summary\r\n\r\nA beginner's mistake :)\r\n\r\nCloses https://github.com/astral-sh/ruff/issues/11641.","shortMessageHtmlLink":"Use char index rather than position for indent slice (#11645)"}},{"before":null,"after":"32e8f2f53c94ec004a1a1ea094d955fc759f79e8","ref":"refs/heads/charlie/pos","pushedAt":"2024-05-31T19:00:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"charliermarsh","name":"Charlie Marsh","path":"/charliermarsh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1309177?s=80&v=4"},"commit":{"message":"Use char index rather than position for indent slice","shortMessageHtmlLink":"Use char index rather than position for indent slice"}},{"before":"449dbaf2fee118e540b3bb4a67e09540e7216fb7","after":null,"ref":"refs/heads/module-resolver","pushedAt":"2024-05-31T16:11:19.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"AlexWaygood","name":"Alex Waygood","path":"/AlexWaygood","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/66076021?s=80&v=4"}},{"before":"9b6d2ce1f2aa0db3d9b388b443e70fe760ada35c","after":"8a25531a7144fd4a6b62c54efde1ef28e2dc18c4","ref":"refs/heads/main","pushedAt":"2024-05-31T16:11:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AlexWaygood","name":"Alex Waygood","path":"/AlexWaygood","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/66076021?s=80&v=4"},"commit":{"message":"red-knot: improve internal documentation in `module.rs` (#11638)","shortMessageHtmlLink":"red-knot: improve internal documentation in module.rs (#11638)"}},{"before":"796160342329a53fada5c0fbc726090f399ab15a","after":"449dbaf2fee118e540b3bb4a67e09540e7216fb7","ref":"refs/heads/module-resolver","pushedAt":"2024-05-31T16:07:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AlexWaygood","name":"Alex Waygood","path":"/AlexWaygood","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/66076021?s=80&v=4"},"commit":{"message":"Update module.rs","shortMessageHtmlLink":"Update module.rs"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEWXWc4gA","startCursor":null,"endCursor":null}},"title":"Activity ยท astral-sh/ruff"}