{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":819372081,"defaultBranch":"master","name":"rust-analyzer","ownerLogin":"mckenfra","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2024-06-24T11:24:23.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/439593?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1719639070.0","currentOid":""},"activityList":{"items":[{"before":"e29f323d0331f82f87137bdf940a656c4abd4bdf","after":"e77752eaf0a5b815b716554d6213a95126287732","ref":"refs/heads/github_issue_17497_fix_v5","pushedAt":"2024-07-27T16:32:50.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Fix for #17497 - Invalid RA diagnostic error: expected 2 arguments, found 1\n\nThe issue occurs because in some configurations of traits where one of them has Deref as a supertrait, RA's type inference algorithm fails to resolve the Deref::Target type, and instead uses a TyKind::BoundVar (i.e. an unknown type). This \"autoderefed\" type then incorrectly acts as if it implements all traits in scope.\n\nThe fix is to re-apply the same sanity-check that is done in iterate_method_candidates_with_autoref(), that is: don't try to resolve methods on unknown types. This same sanity-check is now done on each autoderefed type for which trait methods are about to be checked. If the autoderefed type is unknown, then the iterating of the trait methods for that type is skipped.\n\nIncludes a unit test that only passes after applying the fixes in this commit.\n\nIncludes a change to the assertion count in test syntax_highlighting::tests::benchmark_syntax_highlighting_parser as suggested by Lukas Wirth during review.\n\nIncludes a change to the sanity-check code as suggested by Florian Diebold during review.","shortMessageHtmlLink":"Fix for rust-lang#17497 - Invalid RA diagnostic error: expected 2 arg…"}},{"before":"f46af90ba83f38cb7fa55ba9e5620b2ceed58f2b","after":"9fcaab3704f813415c78eb81296dc254e2599514","ref":"refs/heads/master","pushedAt":"2024-07-27T16:32:13.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Auto merge of #17714 - Throne3d:patch-1, r=Veykril\n\ndocs: Reference cov_mark crate instead of test_utils/mark\n\nSeems this was switched over in https://github.com/rust-lang/rust-analyzer/issues/7922\n\nI'm guessing this should skip the changelog because it's so minor, right? Reading through https://github.com/rust-lang/rust-analyzer/blob/master/docs/dev/style.md and trying to get up to speed here =)","shortMessageHtmlLink":"Auto merge of rust-lang#17714 - Throne3d:patch-1, r=Veykril"}},{"before":"3b9f130e6eb3212462b9c36d49e94cddaf4708dc","after":"e29f323d0331f82f87137bdf940a656c4abd4bdf","ref":"refs/heads/github_issue_17497_fix_v5","pushedAt":"2024-07-26T15:58:20.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Fix for #17497 - Invalid RA diagnostic error: expected 2 arguments, found 1\n\nThe issue occurs because in some configurations of traits where one of them has Deref as a supertrait, RA's type inference algorithm fails to resolve the Deref::Target type, and instead uses a TyKind::BoundVar (i.e. an unknown type). This \"autoderefed\" type then incorrectly acts as if it implements all traits in scope.\n\nThe fix is to re-apply the same sanity-check that is done in iterate_method_candidates_with_autoref(), that is: don't try to resolve methods on unknown types. This same sanity-check is now done on each autoderefed type for which trait methods are about to be checked. If the autoderefed type is unknown, then the iterating of the trait methods for that type is skipped.\n\nIncludes a unit test that only passes after applying the fixes in this commit.\n\nIncludes a change to the assertion count in test syntax_highlighting::tests::benchmark_syntax_highlighting_parser as suggested by Lukas Wirth during review.","shortMessageHtmlLink":"Fix for rust-lang#17497 - Invalid RA diagnostic error: expected 2 arg…"}},{"before":"9463d9eea4b87e651e7d8ed8425a9c92f23b1cdf","after":"f46af90ba83f38cb7fa55ba9e5620b2ceed58f2b","ref":"refs/heads/master","pushedAt":"2024-07-26T15:45:59.000Z","pushType":"push","commitsCount":401,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Auto merge of #17706 - Veykril:fragment-include-fix, r=Veykril\n\nfix: Fix includes not working with expr fragment inputs\n\nTemporary workaround for https://github.com/rust-lang/rust-analyzer/issues/17701","shortMessageHtmlLink":"Auto merge of rust-lang#17706 - Veykril:fragment-include-fix, r=Veykril"}},{"before":"03794ba2d15b26bb01ce121864d0c61d1d068d0a","after":"3b9f130e6eb3212462b9c36d49e94cddaf4708dc","ref":"refs/heads/github_issue_17497_fix_v5","pushedAt":"2024-06-29T10:43:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Fix for #17497 - Invalid RA diagnostic error: expected 2 arguments, found 1\n\nThe issue occurs because in some configurations of traits where one of them has Deref as a supertrait, RA's type inference algorithm fails to resolve the Deref::Target type, and instead uses a TyKind::BoundVar (i.e. an unknown type). This \"autoderefed\" type then incorrectly acts as if it implements all traits in scope.\n\nThe fix is to re-apply the same sanity-check that is done in iterate_method_candidates_with_autoref(), that is: don't try to resolve methods on unknown types. This same sanity-check is now done on each autoderefed type for which trait methods are about to be checked. If the autoderefed type is unknown, then the iterating of the trait methods for that type is skipped.\n\nHowever, if the eventual receiver of the candidate method is also unknown then we have incomplete information, so no extra sanity-check is done and the trait method traversal is allowed to proceed.\n\nIncludes a unit test that only passes after applying the fixes in this commit.","shortMessageHtmlLink":"Fix for rust-lang#17497 - Invalid RA diagnostic error: expected 2 arg…"}},{"before":"f2695c1c3efc4612c3ec892b02b65ae79aa2bf15","after":"03794ba2d15b26bb01ce121864d0c61d1d068d0a","ref":"refs/heads/github_issue_17497_fix_v5","pushedAt":"2024-06-29T10:35:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Fix for #17497 - Invalid RA diagnostic error: expected 2 arguments, found 1\n\nThe issue occurs because in some configurations of traits where one of them has Deref as a supertrait, RA's type inference algorithm fails to resolve the Deref::Target type, and instead uses a TyKind::BoundVar (i.e. an unknown type). This \"autoderefed\" type then incorrectly acts as if it implements all traits in scope.\n\nThe fix is to re-apply the same sanity-check that is done in iterate_method_candidates_with_autoref(), that is: don't try to resolve methods on unknown types. This same sanity-check is now done on each autoderefed type for which trait methods are about to be checked. If the autoderefed type is unknown, then the iterating of the trait methods for that type is skipped.\n\nHowever, if the eventual receiver of the candidate method is also unknown then we have incomplete information, so no extra sanity-check is done and the trait method traversal is allowed to proceed.\n\nIncludes a unit test that only passes after applying the fixes in this commit.","shortMessageHtmlLink":"Fix for rust-lang#17497 - Invalid RA diagnostic error: expected 2 arg…"}},{"before":"b9ba002bb768a6958f523b0d332fb48a9703f5c1","after":"f2695c1c3efc4612c3ec892b02b65ae79aa2bf15","ref":"refs/heads/github_issue_17497_fix_v5","pushedAt":"2024-06-29T06:43:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Fix for #17497 - Invalid RA diagnostic error: expected 2 arguments, found 1\n\nThe issue occurs because in some configurations of traits where one of them has Deref as a supertrait, RA's type inference algorithm fails to resolve the Deref::Target type, and instead uses a TyKind::BoundVar (i.e. an unknown type). This \"autoderefed\" type then incorrectly acts as if it implements all traits in scope.\n\nThe fix is to re-apply the same sanity-check that is done in iterate_method_candidates_with_autoref(), that is: don't try to resolve methods on unknown types. This same sanity-check is now done on each autoderefed type for which trait methods are about to be checked. If the autoderefed type is unknown, then the iterating of the trait methods for that type is skipped.\n\nIncludes a unit test that only passes after applying the fixes in this commit.","shortMessageHtmlLink":"Fix for rust-lang#17497 - Invalid RA diagnostic error: expected 2 arg…"}},{"before":"4e836c622a7bdab41be8e82733dd9fe40af128b2","after":"9463d9eea4b87e651e7d8ed8425a9c92f23b1cdf","ref":"refs/heads/master","pushedAt":"2024-06-29T06:43:01.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"mckenfra","name":"Francis McKenzie","path":"/mckenfra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/439593?s=80&v=4"},"commit":{"message":"Auto merge of #17505 - ShoyuVanilla:issue-17199, r=Veykril\n\nUse proper `ImplTraits` in `insert_inference_vars_for_impl_trait`\n\nFixes #17199 and fixes #17403\n\nIn the previous implementation, I passed `rpits` as a function parameter and used `idx` of `ImplTraitId` for indexing `ImplTrait`.\n\nhttps://github.com/rust-lang/rust-analyzer/blob/4e836c622a7bdab41be8e82733dd9fe40af128b2/crates/hir-ty/src/infer.rs#L881-L887\n\nBut that `idx` is rather a \"local\" one, so in the cases like mentioned issues, the async function that can be expanded roughly as\n\n```rust\ntype TypeAlias = impl Something;\nfn expanded_async() -> impl Future