profile
viewpoint
Igor Matuszewski Xanewok @paritytech Warsaw, Poland xanewok.github.io

rust-lang/rls 2976

Repository for the Rust Language Server (aka RLS)

rust-lang/rls-vscode 1031

Rust extension for Visual Studio Code

gluon-lang/lsp-types 63

Types for communicating with a language server

rust-dev-tools/rls-analysis 36

Core functionality for handling rustc's save-analysis data

rust-dev-tools/rls-vfs 14

Virtual File System for the RLS

rust-dev-tools/rls-data 10

Data structures used by the RLS and Rust compiler

rust-dev-tools/rls-span 8

Types for identifying code spans/ranges.

rust-dev-tools/rls-rustc 2

A simple shim around rustc to allow using save-analysis with a stable toolchain

Xanewok/IO2017 2

A simple 2.5D twin stick shooter game made with Unity

rust-dev-tools/rls-blacklist 1

Blacklist of crates for the RLS to skip

push eventXanewok/win-crypto-ng

Igor Matuszewski

commit sha d65f6bc69d3deadbdb304c7d3647911dbc0fba42

LEL

view details

Igor Matuszewski

commit sha 72d9ae7bc7c7a912394859cf7c8c92cc07a4a097

LEL2

view details

Igor Matuszewski

commit sha 99f12e08b1685321abc3a0d1b2651f947e489e55

CACA

view details

Igor Matuszewski

commit sha fadcfb4bccb032ea9a9985edc40e6311cd28634b

Use only autogenerated traits for asymmetric keys

view details

Igor Matuszewski

commit sha 8c805620d6a8632847887cb3efd9ce7d05931dd6

Move dyn_struct to helpers module

view details

Igor Matuszewski

commit sha 2b6bbc296723942641d7dbb318de544f586db0f9

WIP: Add more concrete/high-level asymmetric key types

view details

push time in 4 days

push eventXanewok/win-crypto-ng

Igor Matuszewski

commit sha 1bec3043d749ba63f1e7eeda4bda82413ff92067

Add a macro that can define dynamic contiguous structs

view details

Igor Matuszewski

commit sha 4544b4345b80e4fcb0520ad579d0b0017a183cb8

Don't use a dedicated private module in key.rs

view details

Igor Matuszewski

commit sha 936ad963cbb9abcd0ab79e26190fdecb6ce35306

Use generated macro instead

view details

push time in 4 days

pull request commentrust-lang/rust

submodules: Update RLS and Rustfmt

@topecongiro I'm getting the undefined CFG_RELEASE errors:

 error: environment variable `CFG_RELEASE` not defined
   --> /cargo/registry/src/github.com-1ecc6299db9ec823/rustc-ap-rustc_attr-659.0.0/builtin.rs:657:48
    |
657 |             let rustc_version = Version::parse(env!("CFG_RELEASE")).unwrap();
    |                                                ^^^^^^^^^^^^^^^^^^^

error: aborting due to previous error

error: could not compile `rustc-ap-rustc_attr`.

Did you come to any conclusion how to solve that in your environment or how we can fix that here?

Xanewok

comment created time in 5 days

PR opened rust-lang/rust

submodules: Update RLS and Rustfmt

Fixes #72231 Fixes #72232

r? @ghost

cc @topecongiro

+47 -47

0 comment

3 changed files

pr created time in 5 days

push eventXanewok/rust

Dylan DPC

commit sha 58d955e6cc84b92a6013a3e170e076f65a0c1b18

Rollup merge of #71540 - ldm0:ref2ptr, r=oli-obk Suggest deref when coercing `ty::Ref` to `ty::RawPtr` Fixes #32122 Currently we do autoderef when casting `ty::Ref` ->`ty::Ref`, but we don't autoderef when casting `ty::Ref` -> `ty::RawPtr`. This PR make the compiler suggests deref when coercing `ty::Ref` to `ty::RawPtr`

view details

Dylan DPC

commit sha 71bf986f4b2949a1eaf7db339e6995065b3d1988

Rollup merge of #71655 - RalfJung:const-pattern-soundness, r=oli-obk Miri: better document and fix dynamic const pattern soundness checks https://github.com/rust-lang/const-eval/issues/42 got me thinking about soundness for consts being used in patterns, and I found a hole in our existing dynamic checks: a const referring to a mutable static *in a different crate* was not caught. This PR fixes that. It also adds some comments that explain which invariants are crucial for soundness of const-patterns. Curiously, trying to weaponize this soundness hole failed: pattern matching compilation ICEd when encountering the cross-crate static, saying "expected allocation ID alloc0 to point to memory". I don't know why that would happen, statics *should* be entirely normal memory for pattern matching to access. r? @oli-obk Cc @rust-lang/wg-const-eval

view details

Dylan DPC

commit sha e2333a974a569a2db40d23876eda060037a3e942

Rollup merge of #71672 - lcnr:instrinsics-wow, r=Dylan-DPC document missing stable counterparts of intrinsics Notes the stable counterpart of each intrinsic in case one exists. Implements #34338 r? @Dylan-DPC

view details

Dylan DPC

commit sha 8f6eabfbaee893af88dde33294d7cc34ab2dd81a

Rollup merge of #71692 - dfreese:cfgdocs, r=kennytm Add clarification on std::cfg macro docs v. #[cfg] attribute The wording was discussed, to a limited degree in #71679. This tries to address some confusion I as well as someone else had independently when looking at this macro. Fixes #71679

view details

bors

commit sha eece58a8e35c444afba6fa34873bc0244e32cd29

Auto merge of #71707 - Dylan-DPC:rollup-hk8itvo, r=Dylan-DPC Rollup of 5 pull requests Successful merges: - #71205 (rustc: fix check_attr() for methods, closures and foreign functions) - #71540 (Suggest deref when coercing `ty::Ref` to `ty::RawPtr`) - #71655 (Miri: better document and fix dynamic const pattern soundness checks) - #71672 (document missing stable counterparts of intrinsics) - #71692 (Add clarification on std::cfg macro docs v. #[cfg] attribute) Failed merges: r? @ghost

view details

Mark Rousskov

commit sha 70fafed3c8c48062617a2811d0cd3e0fafcf3319

Remove unsized enum test This was already tested (at least) by src/test/ui/unsized/unsized-enum2.rs

view details

Mark Rousskov

commit sha bfed215cedceecb4e4c45ccf48d86b4a8df3ae38

Remove ignored type alias test This is tracked by a GH issue 17164, and having an ignored test for it isn't helpful.

view details

Oliver Scherer

commit sha 582d52f0bdead9f40600d468bbe8c3be7842248a

Separate miri/ctfe unsupported operations

view details

Oliver Scherer

commit sha b2395a5ea6031d541ae8ee0c47caba7fdf20e19e

Add a convenience function for testing whether a static is `#[thread_local]`

view details

Oliver Scherer

commit sha a91bad6542e40805b68fc9841fdee59a015fca2b

Highlight an error that can only happen in CTFE

view details

Oliver Scherer

commit sha 9cdc9321fd5af26c6d3cee40f98f799b3bc5a0c2

Address review comments

view details

Oliver Scherer

commit sha 8079dd8afe711d736736c522626d3e6052fb0ea4

A test now fails during check instead of build

view details

bors

commit sha be8589fc31162bb71b0f765beba6ce73ec8ba93a

Auto merge of #71675 - pietroalbini:ci-fix-shrink-regression, r=Mark-Simulacrum ci: use bash when executing the "bors build finished" jobs We don't clone the repository in those builders, so the default shell (`src/ci/exec-with-shell.py`) is not present there. This fixes a GHA regression introduced in #71434. r? @Mark-Simulacrum

view details

Bastian Kauschke

commit sha 01b3637f6e9c01c003f8d9f9bba6d4a6e3c780a9

coerce documentation

view details

Bastian Kauschke

commit sha a08bccb3c142fb98193eed202dbdde85386dd91a

handle ByRef in relate

view details

Ralf Jung

commit sha 30b32c6570ded694362e21fc35101c106c4cd8b8

Miri: port error backtraces to std::backtrace

view details

Ralf Jung

commit sha e2c99f0debfa6b13dc01565e18fc554373d57009

unleashed Miri: open all the gates

view details

Ralf Jung

commit sha 9273962aef4451e67b72539feb463f74e8e790ac

remove no longer needed feature flags

view details

Ralf Jung

commit sha c7eb91652fd26ccee708720ffcaf30954ac43f82

deduplicate warnings

view details

Dylan DPC

commit sha 09f3c908bb4e65154d974a8a9d38e57f00d8ae04

Rollup merge of #70950 - nikomatsakis:leak-check-nll-2, r=matthewjasper extend NLL checker to understand `'empty` combined with universes This PR extends the NLL region checker to understand `'empty` combined with universes. In particular, it means that the NLL region checker no longer considers `exists<R2> { forall<R1> { R1: R2 } }` to be provable. This is work towards https://github.com/rust-lang/rust/issues/59490, but we're not all the way there. One thing in particular it does not address is error messages. The modifications to the NLL region inference code turned out to be simpler than expected. The main change is to require that if `R1: R2` then `universe(R1) <= universe(R2)`. This constraint follows from the region lattice (shown below), because we assume then that `R2` is "at least" `empty(Universe(R2))`, and hence if `R1: R2` (i.e., `R1 >= R2` on the lattice) then `R1` must be in some universe that can name `'empty(Universe(R2))`, which requires that `Universe(R1) <= Universe(R2)`. ``` static ----------+-----...------+ (greatest) | | | early-bound and | | free regions | | | | | scope regions | | | | | empty(root) placeholder(U1) | | / | | / placeholder(Un) empty(U1) -- / | / ... / | / empty(Un) -------- (smallest) ``` I also made what turned out to be a somewhat unrelated change to add a special region to represent `'empty(U0)`, which we use (somewhat hackily) to indicate well-formedness checks in some parts of the compiler. This fixes #68550. I did some investigation into fixing the error message situation. That's a bit trickier: the existing "nice region error" code around placeholders relies on having better error tracing than NLL currently provides, so that it knows (e.g.) that the constraint arose from applying a trait impl and things like that. I feel like I was hoping *not* to do such fine-grained tracing in NLL, and it seems like we...largely...got away with that. I'm not sure yet if we'll have to add more tracing information or if there is some sort of alternative. It's worth pointing out though that I've not kind of shifted my opinion on whose job it should be to enforce lifetimes: I tend to think we ought to be moving back towards *something like* the leak-check (just not the one we *had*). If we took that approach, it would actually resolve this aspect of the error message problem, because we would be resolving 'higher-ranked errors' in the trait solver itself, and hence we wouldn't have to thread as much causal information back to the region checker. I think it would also help us with removing the leak check while not breaking some of the existing crates out there. Regardless, I think it's worth landing this change, because it was relatively simple and it aligns the set of programs that NLL accepts with those that are accepted by the main region checker, and hence should at least *help* us in migration (though I guess we still also have to resolve the existing crates that rely on leak check for coherence). r? @matthewjasper

view details

push time in 5 days

create barnchXanewok/rust

branch : update-rls

created branch time in 5 days

push eventrust-lang/rls

Igor Matuszewski

commit sha 23985c621cfd4baa15729ea593b12243c2fd3b6f

Bump rustfmt and racer

view details

push time in 5 days

Pull request review commentrust-lang/rust

Remove all uses of `NodeId` in `ResolverOutputs`

 impl Definitions {      #[inline]     pub fn local_def_id(&self, node: ast::NodeId) -> LocalDefId {-        self.opt_local_def_id(node).unwrap()+        self.opt_local_def_id(node).unwrap_or_else(|| {+            panic!("no entry for node id: `{:?}` / `{:?}`", node, self.opt_node_id_to_hir_id(node))

I don't think you can lazily format with expect, though

marmeladema

comment created time in 5 days

issue commentracer-rust/racer

Build Failing with Cargo Nightly

Nightly build should be fixed with https://github.com/racer-rust/racer/pull/1110

ajohnston1219

comment created time in 5 days

issue commentracer-rust/racer

Fails to compile as a library due to rustc-ap-rustc_span-654.0.0

Should be fixed with https://github.com/racer-rust/racer/pull/1110

nitsuga5124

comment created time in 5 days

delete branch Xanewok/racer

delete branch : bump-parking-lot

delete time in 5 days

push eventXanewok/rls

yankuu

commit sha 6e159cc251e8dae7a9f62efdfd55a195be15dd18

Update link to official LSP spec

view details

David Tolnay

commit sha 5ab73ef66cc78ae8234a93198f2d3ccd0d4bac4b

Remove description() methods from Error trait impls

view details

Igor Matuszewski

commit sha e4a2ba9fd1f91c6a59c731293b365b5887b1e002

Merge pull request #1602 from yankuu/patch-1 Update link to official LSP spec

view details

Igor Matuszewski

commit sha fed7a31cd93bbd3c8a9f38871838b59b5dce2a35

Merge pull request #1603 from dtolnay/error Remove description() methods from Error trait impls

view details

Christoph Schmidler

commit sha 77a2f46f901bd72ae9d1394fbd5ba72d7806b1ad

Correct two links to the json-error-emitter

view details

Eric Huss

commit sha d8d095195aad81a35d2472b9f14eb99e03a9fbe6

Update cargo.

view details

Igor Matuszewski

commit sha 038f51119935d30110ea5063e159f1edd937b0c8

Merge pull request #1605 from TheSamsa/fix-error-emitter-links Correct two links to the json-error-emitter

view details

Igor Matuszewski

commit sha e659cdc59a7ade7717087e87f702596da28cc6f8

Merge pull request #1608 from ehuss/update-cargo Update cargo.

view details

Igor Matuszewski

commit sha 7010eeeb8736ae4a8f6e4d746dcf9e1255a3159d

Update Clippy

view details

Matthias Krüger

commit sha d792c2d5f9b12c44fad3317b43788cd5f727c329

deps: update clippy

view details

Matthias Krüger

commit sha 5cc3183fc6604ec916f236ecc88c2146cf35d082

rustup https://github.com/rust-lang/rust/pull/67853

view details

Igor Matuszewski

commit sha 7c0489c5ff4f5c594e65a3b22efd9ce373deab9b

Merge pull request #1610 from matthiaskrgr/rustup_3 Rustup https://github.com/rust-lang/rust/pull/67786

view details

Yuki Okushi

commit sha 100c25927799301ff9d696f9dd1063697f7d4cdf

Rustup to rust-lang/rust#68024

view details

Yuki Okushi

commit sha e4ae9fcbf1cc63721812f8e5ab89c779caad62d5

Install `rustc-dev` component on pipelines

view details

Eric Huss

commit sha d42a6a750a38c70bc577295b13a21fbb0e8bb827

Update Cargo

view details

Igor Matuszewski

commit sha d8afef54c9dc049b10de4e341ca26045cbb46f57

Merge pull request #1612 from JohnTitor/rustup-0110 Rustup to rust-lang/rust#68024

view details

Igor Matuszewski

commit sha b27e1173969639448cd2e486b1c5f0fcb1b3b17c

Merge pull request #1613 from ehuss/update-cargo Update Cargo

view details

Matthias Krüger

commit sha 7b5471b646818445c13363d4cdf16f3bb162e1ac

deps: update cargo

view details

Igor Matuszewski

commit sha d60b6c98f6ba0805279bb83b5a34b526c3230d57

Merge pull request #1626 from matthiaskrgr/update_cargo deps: update cargo

view details

Igor Matuszewski

commit sha 22e2bbee280c826fbb38d2c83f3ed204d3188308

Remove Travis configuration

view details

push time in 5 days

issue commentrust-lang/rust

`rls` no longer builds after rust-lang/rust#69659

rls-span uses Step directly, so needs to be updated.

This is fixed in https://github.com/rust-lang/rls/commit/27869c5929a06ab9e53e87e24adcf642dd25d500. What remains is a coordinated bump to rustc-ap-* crates with rustfmt/racer.

rust-highfive

comment created time in 5 days

pull request commentracer-rust/racer

Bump version to 2.1.34

Let me know once you release the 2.1.34 with the fix so I can coordinate the update with RLS/rustfmt

kngwyu

comment created time in 5 days

delete branch Xanewok/mdBook

delete branch : bump-deps

delete time in 5 days

pull request commentracer-rust/racer

Bump version to 2.1.34

Needs #1112 to fix the nightly build

kngwyu

comment created time in 5 days

PR opened racer-rust/racer

Bump parking_lot to 0.10.2

Fixes nightly build by fixing the asm! warning

+10 -10

0 comment

1 changed file

pr created time in 5 days

create barnchXanewok/racer

branch : bump-parking-lot

created branch time in 5 days

push eventrust-lang/rls

Igor Matuszewski

commit sha 27869c5929a06ab9e53e87e24adcf642dd25d500

rls-span: Fix nightly breakage

view details

push time in 5 days

create barnchXanewok/rls

branch : fix-rls-span

created branch time in 5 days

push eventparitytech/substrate

Alexander Popiak

commit sha 34567133e7666dfb1e49ce7e3565e66a7e5f9542

Collective weights (#5802)

view details

Pierre Krieger

commit sha e1e38487c1c4f371e824ac1d0716e900daa04df3

Don't log the yamux errors by default (#6034)

view details

Demi Obenour

commit sha ea501c2d61d27e7f0f76f93e5fa7e5c90882da2f

Add ‘transaction_version’ to the signed transaction (#5979) * Add ‘transaction_version’ to the signed transaction This allows hardware wallets to know which transactions they can safely sign. To reduce transaction size, I reduced it to a ‘u8’ from a ‘u32’. Fixes #5951. * Restore transaction_version to a u32 * Fix comments `transaction_version` is not part of a tx, but is still signed. Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * Fix the test suite I had forgotten to change the production of transactions in the test code. * Fix benchmarks * Improve docs for `CheckTxVersion` in `frame_system` Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com> * Remove spurious cast Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

view details

gabriel klawitter

commit sha 0ce6dbff288ae5b3a75207ca3a5b34d475b1829b

ci: github api use token for pull requests (#6037)

view details

Shawn Tabrizi

commit sha 940e52110464cefaae4c1ab98db3cfaacf4d8287

Update Staking Weights (#5964)

view details

Andrew Plaza

commit sha d9ec920f37bdc4225b01e88a3e307f5cb1822922

bump kvdb-* versions (#6017)

view details

Benjamin Kampmann

commit sha dbf2163250833e6ac898e7f6c3c8f89f08a7c19d

Relax substrate licensing scheme (#5947)

view details

thiolliere

commit sha d84147099734c8df1f52d3b7707d4d589002e88a

Democracy weight (#5828)

view details

Pierre Krieger

commit sha f63db92d8009901d705c1e395feb102fdbfef962

Fix lots of small nits in sc-network (#6028) * Fix lots of small nits in sc-network * Update client/network/src/protocol/sync/blocks.rs Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com> * Fix warning * Yes. The line width. Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com>

view details

Kian Paimani

commit sha a4f1c7a45e2a39685e0774e43c8606045cdbace1

Put some graphics in the README? (#5930) * Update README.md I didn't do a good job at making the gif, but this is just a proposal. If accepted, I can make a better one or ask Max to help with it. * better gif file * New file

view details

Kian Paimani

commit sha 5353480eee102b7ff6cce7b16c8654a63fc7a4e4

Benchmarks for elections-phragmen pallet (#5845) * Fist benchmark barely working * Debug checkpoint * add rest of benchmarks * Add to runtime * Fix build * Update frame/elections-phragmen/src/benchmarking.rs Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com> * Update frame/elections-phragmen/src/benchmarking.rs Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com> * major imp * Make them run on release * Help finish phragmen benchmarks (#5886) * update caller, account, and member/runner-up creation * remove stuff * ocd * make it work with real run * relax the numbers a bit * New and improved version * Make elections-phragmen weighable and secure. (#5949) * Make elections-phragmen weighable. * Update frame/elections-phragmen/src/lib.rs Co-authored-by: Alexander Popiak <alexander.popiak@parity.io> * Update frame/elections-phragmen/src/lib.rs Co-authored-by: Alexander Popiak <alexander.popiak@parity.io> * Fix all tests * Fix everything * Add note Co-authored-by: Alexander Popiak <alexander.popiak@parity.io> * Doc update * Fix some complexity params * Once more ready to benchmark * ready for bench * final tunes * Update frame/elections-phragmen/src/lib.rs * Fix fix * Update frame/elections-phragmen/src/lib.rs * Update frame/elections-phragmen/src/benchmarking.rs Co-authored-by: Alexander Popiak <alexander.popiak@parity.io> * Update frame/elections-phragmen/src/benchmarking.rs Co-authored-by: Alexander Popiak <alexander.popiak@parity.io> * Update to latest weights * Some fixes * Fix dual voter read from @thiolliere * Remove todos * review from @shawntabrizi * Fix bench tests. Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com> Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

view details

Rakan Alhneiti

commit sha 82ec8edf2cbbf2c69aa2961dc846ebb2f5884124

Use `sign_with` in consensus (#6008) * Add derive_more to sp_core * Convert Vec to Signature * Use sign_with in AURA and BABE * Signing errors * Update slots to return consensus result * Fix use * Clone public key * Match block_params * WIP * Use to_public_crypto_pair * Pass public key only to block import params * Address PR review * Fix consensus RPC * Fix babe tests * adjust uses * Fix line widths

view details

satellitex

commit sha 61a72486dfcfc09dd2ea6265bcd406dc8406d5ac

Added RuntimePublic for ecdsa public key. (#6029) * add generate ecdsa, etc to keystore * impl ecdsa needed traits * add ecdsa to sr_io * add ecdsa to application-crypto * add ecdsa to test-utils * add ecdsa debug derive * fix ecdsa public

view details

Benjamin Kampmann

commit sha 3f71d1ea54a653f78c2f6e1186204fb33f907520

Meter block import results via prometheus (#6025)

view details

Benjamin Kampmann

commit sha 7e9a2ae78d27cc56e053fbec3b34a1a258b89561

Releasing Alpha.8 (#6048)

view details

Arkadiy Paronyan

commit sha 1291fbf5c711f6b3f26599aa771d8ad8c45efe8d

Remove on_block_imported (#6039) * remove on_block_imported * Update client/network/src/service.rs Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com> Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>

view details

Rakan Alhneiti

commit sha 6d91909fabb0810b11a0c82aadb5dee41ac08ec8

Aura fix: make sure the key exists locally (#6054) * Fix AURA * Add test to make sure claim slot works as expected

view details

Benjamin Kampmann

commit sha 8345611570c69134edbad05eab3001e17d9b908c

resetting to -dev (#6050)

view details

Wei Tang

commit sha 5a7600912b7fd50091990899e8ad93ad618f40c4

Remove file accounts.scale (#6053)

view details

Denis Pisarev

commit sha 5e62f2961072270951636bc875ca72c855ca2825

Fail test on warnings (#6043) * fix (ci): hotfix Docker release * change (ci): fail test on warnings * change (config): stderr msgs * Fix the warnings properly Co-authored-by: Bastian Köcher <git@kchr.de>

view details

push time in 5 days

Pull request review commentparitytech/substrate

Fix some flaky offchain HTTP tests

 mod tests { 					let server = hyper::Server::bind(&"127.0.0.1:0".parse().unwrap()) 						.serve(hyper::service::make_service_fn(|_| { async move { 							Ok::<_, Infallible>(hyper::service::service_fn(move |_req| async move {+								// Take at least *a bit* of time so that we can test the non-blocking+								// nature of the HTTP. Sometimes we receive the answer immediately,+								// which means we can't know if we blockingly waited for a response+								// or we did it in a non-blocking fashion but it arrived immediately.+								tokio::time::delay_for(std::time::Duration::from_millis(10)).await;

Changed the internals of future deadline calculation so that we can immediately return on

https://github.com/paritytech/substrate/blob/74eebfa42e9b94d60814b322a2e1c44472785f13/client/offchain/src/api/http.rs#L299 https://github.com/paritytech/substrate/blob/74eebfa42e9b94d60814b322a2e1c44472785f13/client/offchain/src/api/http.rs#L323-L340

Because we implicitly wait with a deadline of timestamp::now https://github.com/paritytech/substrate/blob/74eebfa42e9b94d60814b322a2e1c44472785f13/client/offchain/src/api/http.rs#L396

So this behaves as expected as in we immediately return result with a zero timeout.

Xanewok

comment created time in 5 days

delete branch paritytech/substrate

delete branch : fix-flaky-http-tests

delete time in 5 days

push eventparitytech/substrate

Igor Matuszewski

commit sha 32baadf7d5dfee6d919d8b81d490d595a19f87e7

http: Use the same async runtime when testing HTTP API/worker

view details

Igor Matuszewski

commit sha 74eebfa42e9b94d60814b322a2e1c44472785f13

http: Return a future Delay only for non-zero Duration This allows to short-circuit in the response_wait logic and only send/not wait for response.

view details

push time in 5 days

push eventparitytech/substrate

Igor Matuszewski

commit sha 74eebfa42e9b94d60814b322a2e1c44472785f13

http: Return a future Delay only for non-zero Duration This allows to short-circuit in the response_wait logic and only send/not wait for response.

view details

push time in 5 days

PR opened emgre/win-crypto-ng

Generate and export various asymmetric keys

Based on #15 and #16 (and https://github.com/emgre/win-crypto-ng/pull/17/commits/6b3323fa750576fa1e9632af41a962dec3b15d3e from #17).

Opening a draft pull request to track work and to incrementally improve the design.

+834 -36

0 comment

5 changed files

pr created time in 8 days

create barnchXanewok/win-crypto-ng

branch : asymmetric-keys

created branch time in 8 days

push eventXanewok/win-crypto-ng

Igor Matuszewski

commit sha 86ebbaf6e992d075ccf4a42895319665d4cf2aff

Implement hash signature generation/verification

view details

Igor Matuszewski

commit sha 76e2e864346d90090a72e2bbef5243f6cf3e04c4

Handle more CNG errors

view details

push time in 8 days

push eventXanewok/win-crypto-ng

Igor Matuszewski

commit sha 6b3323fa750576fa1e9632af41a962dec3b15d3e

Move key handle wrapper to a separate module

view details

Igor Matuszewski

commit sha e40727b2a1d2c1d03498e934d3da043db70e2410

Make HashAlgorithmId::to_str public

view details

Igor Matuszewski

commit sha ac990db22f4a7bedd701b5abd7ab3d080f52f16f

impl Default for WindowsString

view details

Igor Matuszewski

commit sha 2d17acf14f581d2718a2d966387e782d0cf25f15

Implement hash signature generation/verification

view details

Igor Matuszewski

commit sha 4f07acc5a06f16f593a4be6a5c34d8b7aebc88a3

Handle more CNG errors

view details

push time in 8 days

PR opened emgre/win-crypto-ng

Introduce a dedicated error module

To bring this more in line with often used dedicated module for library-specific errors as encountered in other crates.

I also added an IntoResult trait that converts the numeric error codes returned by the CNG to library-specific Error type for ease of chaining and to be slightly more Rust idiomatic when we transform the relevant data.

+120 -105

0 comment

6 changed files

pr created time in 8 days

create barnchXanewok/win-crypto-ng

branch : errors

created branch time in 8 days

PR opened emgre/win-crypto-ng

Hash signature generation/verification

Based on #16.

For now wraps the low-level functions and FFI concerns - the rest work remains to be coming up with a robust signer/verifier trait design (I'd like to do that in a separate PR for now, though).

+368 -34

0 comment

8 changed files

pr created time in 8 days

create barnchXanewok/win-crypto-ng

branch : signing

created branch time in 8 days

push eventXanewok/win-crypto-ng

Igor Matuszewski

commit sha 6aeafbf401c4e3cc6d5d11c95ca0a3e944b3af8f

Add asymmetric crypto stub

view details

push time in 9 days

PR opened emgre/win-crypto-ng

Add asymmetric crypto stub

Just to get the ball rolling and increase the velocity a bit. I'll push more PRs once I have something more complete/satisfactory.

+133 -0

0 comment

2 changed files

pr created time in 9 days

create barnchXanewok/win-crypto-ng

branch : asymmetric-stub

created branch time in 9 days

issue commentrust-lang/rls

Linux memory usage regression

The fix hasn’t been backported, so stable and beta are not fixed and have the memory issue.

On Sat, 16 May 2020 at 21:50, buckle2000 notifications@github.com wrote:

I'm using stable, and the memory usage is still terrible.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/rust-lang/rls/issues/1188#issuecomment-629697611, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAXTFXND7JYG4SSLNHWNPTDRR3VBBANCNFSM4GKNBBFQ .

alexheretic

comment created time in 9 days

pull request commentrust-lang/rust

Update transitive dependency to work towards removing syn <1.0 dep

Caused by:
  failed to fetch `https://github.com/rust-lang/crates.io-index`

@bors r+ rollup

Xanewok

comment created time in 10 days

create barnchparitytech/substrate

branch : fix-flaky-http-tests

created branch time in 11 days

issue commentrust-lang/rls

Linux memory usage regression

Could you try using nightly RLS and see if that’s still the issue?

On Fri, 15 May 2020 at 10:52, Fabian Keller notifications@github.com wrote:

In case tougher reproductions are needed: In projects using godot-rust https://github.com/GodotNativeTools/godot-rust I'm hitting 6 GB (often sending my machine into swap-freezes).

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/rust-lang/rls/issues/1188#issuecomment-629116245, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAXTFXIW5UCGWCL3IYX42NDRRT7DVANCNFSM4GKNBBFQ .

alexheretic

comment created time in 11 days

Pull request review commentparitytech/substrate

Fix some flaky offchain HTTP tests

 mod tests { 					let server = hyper::Server::bind(&"127.0.0.1:0".parse().unwrap()) 						.serve(hyper::service::make_service_fn(|_| { async move { 							Ok::<_, Infallible>(hyper::service::service_fn(move |_req| async move {+								// Take at least *a bit* of time so that we can test the non-blocking+								// nature of the HTTP. Sometimes we receive the answer immediately,+								// which means we can't know if we blockingly waited for a response+								// or we did it in a non-blocking fashion but it arrived immediately.+								tokio::time::delay_for(std::time::Duration::from_millis(10)).await;

This is not limited to a single test in one instance - the note applies to every test where we assert that headers for a valid request is still empty due to the nature of the API.

As I understand it, making the answer configurable misses the point. We'll need to sprinkle every call site with the same dummy logic making it more verbose.

We don't need anything else from the endpoint to be a dead simple HTTP server. What's being 'broken' here is that we immediately ask for response headers in a non-blocking fashion and expect the answer to not arrive immediately.

We could not implicitly wait in response_headers or not test for empty headers in so many instances but making the answer configurable will not allow us anything here IIUC.

FWIW I can confirm that with this patch the test isn't flaky locally when executed for some time but can bump the delay if needed.

Xanewok

comment created time in 11 days

PR opened paritytech/substrate

Reviewers
Fix some flaky offchain HTTP tests A0-pleasereview B0-silent F4-tests 🎯

Fixes #5380 Fixes #5517

I believe this just hits the situation described here https://github.com/paritytech/substrate/blob/e1e38487c1c4f371e824ac1d0716e900daa04df3/client/offchain/src/api/http.rs#L929-L932

and this got unearthed after https://github.com/paritytech/substrate/pull/4860 was merged - maybe upgrading hyper 0.12 -> 0.13 meant upgrade of underlying runtime of tokio 0.1 to now-explicit tokio 0.2 sped up things enough? :shrug:

Not a fan of timeout-based bug fixing in general but I feel like it's reasonable here, seeing what kind of an edge case we're encountering (and only in tests, specifically).

Feel free to drop the matches! commit, it's just a drive-by commit and a matter of a personal preference.

+23 -21

0 comment

1 changed file

pr created time in 11 days

create barnchparitytech/substrate

branch : igor/fix-flaky-http-tests

created branch time in 11 days

pull request commentrust-lang/rust

Introduce the assert_matches! macro family

Since matches! made its way into libstd, is there an interest to reopen this PR?

I'd imagine it'd be just as useful as assert_eq for manual inspection if it were to print the mismatched values, rather the plain token tree for assert!(matches!(...)).

Kerollmops

comment created time in 11 days

Pull request review commentrust-lang/rls-vscode

Support rust-analyzer as alternate LSP engine

+import * as child_process from 'child_process';+import * as fs from 'fs';+import * as path from 'path';+import { promisify } from 'util';++import * as vs from 'vscode';+import * as lc from 'vscode-languageclient';++import { WorkspaceProgress } from './extension';+import { download, fetchRelease } from './net';+import * as rustup from './rustup';+import { Observable } from './utils/observable';++const stat = promisify(fs.stat);+const mkdir = promisify(fs.mkdir);+const readFile = promisify(fs.readFile);+const writeFile = promisify(fs.writeFile);++const REQUIRED_COMPONENTS = ['rust-src'];++/** Returns a path where rust-analyzer should be installed. */+function installDir(): string | undefined {+  if (process.platform === 'linux' || process.platform === 'darwin') {+    // Prefer, in this order:+    // 1. $XDG_BIN_HOME (proposed addition to XDG spec)+    // 2. $XDG_DATA_HOME/../bin/+    // 3. $HOME/.local/bin/+    const { HOME, XDG_DATA_HOME, XDG_BIN_HOME } = process.env;+    if (XDG_BIN_HOME) {+      return path.resolve(XDG_BIN_HOME);+    }++    const baseDir = XDG_DATA_HOME+      ? path.join(XDG_DATA_HOME, '..')+      : HOME && path.join(HOME, '.local');+    return baseDir && path.resolve(path.join(baseDir, 'bin'));+  } else if (process.platform === 'win32') {+    // %LocalAppData%\rust-analyzer\+    const { LocalAppData } = process.env;+    return (+      LocalAppData && path.resolve(path.join(LocalAppData, 'rust-analyzer'))+    );+  }++  return undefined;+}++/** Returns a path where persistent data for rust-analyzer should be installed. */+function metadataDir(): string | undefined {

Shouldn't this be handled by VS Code persistance mechanism?

You're absolutely right! What I did at the beginning was to implement everything except the persistence just to get it working; while polishing it I just bolted it on thinking it's implemented similarly (didn't know about the Memento API). It'd be a good idea to drop this altogether :)

Xanewok

comment created time in 12 days

issue commentrust-lang/rls-vscode

Intellisense/autocompletion not working for extenral crates with optional features

(As a side note, you can set "rust-client.engine": "rust-analyzer" and use it directly from the same extension)

spamwax

comment created time in 12 days

pull request commentrust-analyzer/rust-analyzer

Enhanced coloring

It might be worth doing the same distinction for const/let as it's done by default in the newest VSCode April update: https://code.visualstudio.com/updates/v1_45#_new-color-for-constants-in-the-default-dark-theme

georgewfraser

comment created time in 12 days

issue commenteditor-rs/vscode-rust

Please deprecate?

Thanks a lot for your work @KalitaAlexey :)

strega-nil

comment created time in 12 days

pull request commentmattico/elasticlunr-rs

Allow to opt-out of Chinese/Japanese support

Thanks for merging and releasing a new version!

Xanewok

comment created time in 12 days

delete branch Xanewok/elasticlunr-rs

delete branch : lean-and-mean

delete time in 12 days

created tagrust-lang/rls-vscode

tagv0.7.8

Rust extension for Visual Studio Code

created time in 12 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 01c2acaf388fc3e596db90792b4fca1e7f7307ca

Add missing semantic token types in package.json

view details

Igor Matuszewski

commit sha ed9a05232992316b1898795f87091911ec10c474

Rebrand extension as RLS-agnostic Fixes #781 Refs: https://github.com/editor-rs/vscode-rust/issues/397

view details

Igor Matuszewski

commit sha dec6c2e41b4ffd33c62086eb450c5a3b5a0955af

Fix links to repository in package.json

view details

Igor Matuszewski

commit sha 1566b750465a3e31d90829c0baeeb88a20e194a1

Bump version to 0.7.8

view details

push time in 12 days

issue closedrust-lang/rls-vscode

Rebrand the extension to be RLS-agnostic

Part of #780.

If we decide to implement Rust Analyzer and move towards it as our main engine, we need to stop marketing this extension as an RLS-specific client.

closed time in 12 days

Xanewok

pull request commentrust-lang/mdBook

Bump deps

Technically no - wasn't sure how long you wanted to gather the feedback for the other PR and just wanted to help with landing the other trivial dependency upgrades in the meantime.

Feel free to close this if you'd rather resolve everything at once there!

Xanewok

comment created time in 12 days

Pull request review commentrust-lang/rust

Forbid stage arguments to check

 Arguments:             }         }; +        if let Subcommand::Check { .. } = &cmd {+            if matches.opt_str("stage").is_some() {

I'm not sure how much values this gives but maybe erroring out on stage > 0 and allowing --stage 0 would be better?

Mark-Simulacrum

comment created time in 12 days

pull request commentemgre/win-crypto-ng

Typed blob improvements

Rebased, sorry for the delay

Xanewok

comment created time in 12 days

push eventXanewok/win-crypto-ng

Igor Matuszewski

commit sha da9439c460cd82073bcd39da429455d66f240bb3

Use sized variant of TypedBlob when property is bigger than its sizeof We should be using the sized variant here - we need to see if the allocation is big enough to hold a structure of that size. The sizes of the allocation and the concrete T type may be different if we're dealing with a 'header type with more data following' kind of struct, as is often the case in the CNG API.

view details

Émile Grégoire

commit sha 83eccc88d723a4f839ef89dfab55bf97fab9a44b

Merge pull request #14 from Xanewok/property-blob-fix Use sized variant of TypedBlob when property is bigger than its sizeof

view details

Igor Matuszewski

commit sha e6add86cc2ae0d1c490f44208752291cff55c2b7

Add TypedBlob::as_bytes This is a convenience function that can be later used to dynamically access fields for a dynamic structs.

view details

Igor Matuszewski

commit sha fd0f637cf6335b522cf386dc72b104d6658bae50

Implement Deref<Target = T> for TypedBlob<T> After all, this is more of a smart pointer facility rather than anything else - we shouldn't get through the hassle of repeatedly doing .as_ref() only to access relevant fields or methods.

view details

Igor Matuszewski

commit sha 05718974456e57dc3758e74d909b999701312be2

Implement AsRef for TypedBlob in terms of the inner AsRef target instead This allows us to cut through a layer of abstraction, where the inner type is possibly a newtype wrapper on its own. While technically this doesn't make the code more expressive (we could've used `blob.deref().as_ref()` directly), it does allow us to express more generic trait bounds, e.g. `AsRef<BCRYPT_DH_KEY_BLOB>` for some `TypedBlob<DhWrapper>` that may carry additional compile-time information.

view details

Igor Matuszewski

commit sha 364daaf4140b715f1ba08357b35bac251afd3b47

Add a note that we only support slices in TypedBlob

view details

push time in 12 days

issue closedrust-lang/rls-vscode

Unknown RLS configuration: `rust_analyzer`

extended version:0.7.6 vscode version:1.45 rustc --version rustc 1.45.0-nightly (769d12eec 2020-05-12)

0.7.5 will not have this problem Please let me know if you need other parameters

closed time in 13 days

shuaixr

issue commentrust-lang/rls-vscode

Unknown RLS configuration: `rust_analyzer`

Should be fixed in 0.7.7 (https://github.com/rust-lang/rls-vscode/commit/5f132862baf199bdd1aa4f4f816de6a49c5b7254). Sorry about that, it seems that a commit has been lost while I worked on the RLS/rust-analyzer engine support!

shuaixr

comment created time in 13 days

PR opened rust-lang/mdBook

Bump deps

Trivial changes separated from #1211

Opened this PR to already merge things that don't require any review and focus only on the breaking changes there.

+41 -34

0 comment

4 changed files

pr created time in 13 days

push eventXanewok/mdBook

Igor Matuszewski

commit sha ecc87ac2a3b0637dc31ebd5cd8601d38d5137942

Bump elasticlunr-rs

view details

Eric Huss

commit sha 251dc0751f661aef37c58f3ec0813b365772657e

Bump env_logger.

view details

Eric Huss

commit sha 1c781f568f8f9fb71e32b54cc65ad8dc564f4297

Update pulldown-cmark to 0.7

view details

push time in 13 days

create barnchXanewok/mdBook

branch : bump-deps

created branch time in 13 days

Pull request review commentrust-lang/mdBook

Update dependencies.

 pub fn execute(args: &ArgMatches) -> Result<()> {         info!("Building book...");          // FIXME: This area is really ugly because we need to re-set livereload :(

Is this still applicable? Do we need to re-set this again?

ehuss

comment created time in 13 days

created tagrust-lang/rls-vscode

tagv0.7.7

Rust extension for Visual Studio Code

created time in 13 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 5e5712c0db2b3f4516c0958d7ea0f90462b080c9

Reword configuration title to just use Rust That's similar to what most of the other extensions are using and it's a lot easier on the eyes and to spot in the graphical vscode settings pane.

view details

Igor Matuszewski

commit sha 5f132862baf199bdd1aa4f4f816de6a49c5b7254

Only synchronize options relevant to RLS

view details

Igor Matuszewski

commit sha bf80b6c461635a0cc5eb6cd3a494c9e213695aa8

Cut a 0.7.7 release

view details

push time in 13 days

pull request commentutkarshkukreti/select.rs

Update the html5ever dependency

Hey @utkarshkukreti :wave: Will you have a couple of minutes to merge this and release a new patch version with this fix?

This is a rather mechanical change and as @Razican mentioned it allows too prune <1 proc macro dependency crates which can take a substantial amount to compile (especially if someone is already using ^1.0 version of them).

Thanks for your work and thanks in advance for taking a look! 😍

nuxeh

comment created time in 13 days

pull request commentrust-lang/mdBook

Update dependencies.

A 2.3.8 version of elasticlunr-rs is released which allows to opt out of the extra crates needed to support Chinese/Japanese, so we might cut down the number new of dependencies.

ehuss

comment created time in 13 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 33230ef74551bdc257c884978aeec91c1db50edc

Fix link in README.md

view details

push time in 13 days

pull request commentrust-lang/rls-vscode

Support rust-analyzer as alternate LSP engine

@kjeremy I've had some problems with module imports while hacking up the prototype and just used more broad registerProposedFeatures for the lsp client: https://github.com/rust-lang/rls-vscode/pull/793/files#diff-f18ac56573e8e79333ee19a04a9a70f1R275

This covers more features than call hierarchy and semantic token but does include it as well and looks to be working (although only sending that after modifying the file? might have to do with not porting the busy middleware workaround for semantic tokens, idk :shrug: )

Xanewok

comment created time in 13 days

issue commentrust-analyzer/rust-analyzer

Tracking issue fo RFC2912, transition to rust-analyzer as our official LSP

We can somewhat tick the blocking issue box:

rust-lang.rust extension should work with both rust-analyzer and rls

Implementation

Also posted it in the RFC thread: https://github.com/rust-lang/rfcs/pull/2912#issuecomment-627297657

It doesn't provide exact feature parity since it doesn't work yet with messages such as rust-analyzer.applySourceChange and other custom extensions that are not LSP-proposed.

matklad

comment created time in 14 days

pull request commentrust-lang/rfcs

Transition to rust-analyzer as our official LSP (Language Server Protocol) implementation

Support for Rust Analyzer has landed in the official VSCode extension and should be available in the newly released 0.7.6 version :tada:

nikomatsakis

comment created time in 14 days

created tagrust-lang/rls-vscode

tagv0.7.6

Rust extension for Visual Studio Code

created time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 28db9d600fbd0fbb56c64566737f373713573672

Fix formatting in README.md

view details

Igor Matuszewski

commit sha 49ea26dfbd0406051d9a917bad0307d2cf8bb4d4

Bump version to 0.7.6

view details

Igor Matuszewski

commit sha 8a014f220e9450d46ddbdd852f52950543cbd774

Separate 0.7.6 section in CHANGELOG.md

view details

push time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 87bc532855915b03de45c03ea76a0c1e3073b8b5

Ignore more irrelevant files in resulting .vsix package

view details

Igor Matuszewski

commit sha 9cebf3adb35e00f8b5a1141904d3c916075ae1fc

...but we still need deps' package.json

view details

push time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha f9dd3f8d1166910e5b5494a3565d776b0b7b4529

Ignore .github/ in resulting .vsix package

view details

push time in 14 days

delete branch rust-lang/rls-vscode

delete branch : support-rust-analyzer

delete time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha eb272bf76d6966c80bc0a9a23668b57a792c0c91

Introduce rust-client.engine

view details

Igor Matuszewski

commit sha 6df0e368556578d20792a611fdd072f0ec767bbf

Introduce required components both for RLS and RA

view details

Igor Matuszewski

commit sha e7bcbb5b2f1a62f719878894ae285f66cd002192

Make rustup component handling more engine-agnostic

view details

Igor Matuszewski

commit sha db1310935d942fd41d8a83f54f6529323bff8057

Define the installation directory for rust-analyzer

view details

Igor Matuszewski

commit sha 10dbcda4611c7b64d5c56f77ee9155041a8369da

Add node-fetch package

view details

Aleksey Kladov

commit sha e7739736ddeee65a15a0b61f25d14a27f22f73d7

Implement net.ts module Co-authored-by: Vitalii Kryvenko <veetaha2@gmail.com>

view details

Igor Matuszewski

commit sha 73a710ac0781b3d32ed670a3860eed6a6fa01eb7

WIP: Download and use rust-analyzer if specified Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>

view details

Igor Matuszewski

commit sha 3d17ed54240bb3f6c9d722e885a30c1e1292d0c0

Register for semantic highlighting when using Rust Analyzer

view details

Igor Matuszewski

commit sha 9b3dec31eaabb163731fd4d211a82787640cdbee

Simplify getting sysroot

view details

Igor Matuszewski

commit sha ac97f689d434cda688a42ff02f0ad4dcb4ddd334

Simplify fetching active rustup channel

view details

Igor Matuszewski

commit sha 8b3fd40021ccc847fe2936ee275ecb542d183cea

Simplify commands using question mark operator since TS upgrade

view details

Igor Matuszewski

commit sha 360de06132bb652fcac151ae7de72d1a56c7b4d3

Refactor engine spawning internals and support global servers

view details

Igor Matuszewski

commit sha 39d2d66738c64758435de91b4d1325881082ba6a

Fix stop/start support for Rust Analyzer

view details

Igor Matuszewski

commit sha d9386744528f8570c48e7f5355a8553cdb202e61

Describe new RLS/RA backends in settings

view details

Igor Matuszewski

commit sha 10f1e9529a415fb420276114508c76e9fda743ac

Support custom init options for Rust Analyzer

view details

Igor Matuszewski

commit sha 8c67bbcb9a4e9ee67dc7a8c0fcd9cf1a8c06eee0

Allow specifying releaseTag for rust-analyzer to be used/downloaded

view details

Igor Matuszewski

commit sha 96eef488ffd3ed154b975255f0f97f99d49ae396

Reword experimental support for rust-analyzer

view details

Igor Matuszewski

commit sha 4aade08337624344b45cab7c796e54ceb60279a4

Mention new support for RA in CHANGELOG.md

view details

Igor Matuszewski

commit sha 260a4649865c79b43efcbd6ffb0a05cd5622be6d

Replace some RLS occurences with agnostic Rust server

view details

Igor Matuszewski

commit sha 687af89845f85f28f65433159ece99ec881ef304

Reword the README.md To de-emphasize the current RLS and emphasize that we use either RLS or Rust Analyzer as our underlying language server.

view details

push time in 14 days

PR merged rust-lang/rls-vscode

Support rust-analyzer as alternate LSP engine

This mostly reshuffles stuff around and makes some bits more generic and less tied to the current RLS engine.

The behaviour can be changed by setting rust-client.engine accordingly, and now the client implementations live at rls.ts and rustAnalyzer.ts for the respective engine.

Particularly, the workspace configuration is no longer synchronized for every rust-prefixed setting and the list is hardcoded to the existing rust.<CFG> settings for backwards compatibility - this is to prevent RLS from warning about unrecognized future settings and that's because we want to possibly unify all of our configuration under a single rust prefix (rather than have a separate rust-client for client-relevant bits).

Previously we spawned each instance of RLS lazily depending on the Rust file that was opened (we crawled the FS and determined a project root where to spawn RLS) but since Rust Analyzer really wants to eagerly crawl every opened workspace (not in sense of an opened text editor tab but rather active workspace folders). To keep the existing logic somewhat compatible, we keep the multi-project layout but only spawn and refer to a singleton client in the rustAnalyzer.ts to keep the implementation simple.

What's left is tweaking the README, documenting more rust-analyzer-specific options (ideally coupled with general settings refresh), reword some tasks and UI to not refer to RLS unconditionally and wait for rust-analyzer to use more LSP-compliant messages in order to fully support its capabilities :sweat_smile:

cc @matklad

Fixes #780 Addresses #781 partially

+970 -331

1 comment

12 changed files

Xanewok

pr closed time in 14 days

issue closedrust-lang/rls-vscode

Implement support for the Rust Analyzer engine

Since we plan to officially support Rust Analyzer as the official IDE tool, it'd be great to easily migrate all of the existing users in a hassle-free way. This issue tracks the work done to implement that.

closed time in 14 days

Xanewok

pull request commentrust-lang/rls-vscode

Support rust-analyzer as alternate LSP engine

I've been trying to test this extensively in both modes on both Linux and Windows and it seems more or less things are in place and not regressed. What's left is reworking the extension settings a bit, e.g. to separate rustup or rls-specific ones rather than lumping them all together but let's do that as a part of a next PR.

Xanewok

comment created time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 687af89845f85f28f65433159ece99ec881ef304

Reword the README.md To de-emphasize the current RLS and emphasize that we use either RLS or Rust Analyzer as our underlying language server.

view details

push time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 260a4649865c79b43efcbd6ffb0a05cd5622be6d

Replace some RLS occurences with agnostic Rust server

view details

push time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 4aade08337624344b45cab7c796e54ceb60279a4

Mention new support for RA in CHANGELOG.md

view details

push time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 96eef488ffd3ed154b975255f0f97f99d49ae396

Reword experimental support for rust-analyzer

view details

push time in 14 days

Pull request review commentrust-lang/rls-vscode

Support rust-analyzer as alternate LSP engine

+import * as child_process from 'child_process';+import * as fs from 'fs';+import * as path from 'path';+import { promisify } from 'util';++import * as vs from 'vscode';+import * as lc from 'vscode-languageclient';++import { WorkspaceProgress } from './extension';+import { download, fetchRelease } from './net';+import * as rustup from './rustup';+import { Observable } from './utils/observable';++const stat = promisify(fs.stat);+const mkdir = promisify(fs.mkdir);+const readFile = promisify(fs.readFile);+const writeFile = promisify(fs.writeFile);++const REQUIRED_COMPONENTS = ['rust-src'];++/** Returns a path where rust-analyzer should be installed. */+function installDir(): string | undefined {+  if (process.platform === 'linux' || process.platform === 'darwin') {+    // Prefer, in this order:+    // 1. $XDG_BIN_HOME (proposed addition to XDG spec)+    // 2. $XDG_DATA_HOME/../bin/+    // 3. $HOME/.local/bin/+    const { HOME, XDG_DATA_HOME, XDG_BIN_HOME } = process.env;+    if (XDG_BIN_HOME) {+      return path.resolve(XDG_BIN_HOME);+    }++    const baseDir = XDG_DATA_HOME+      ? path.join(XDG_DATA_HOME, '..')+      : HOME && path.join(HOME, '.local');+    return baseDir && path.resolve(path.join(baseDir, 'bin'));+  } else if (process.platform === 'win32') {+    // %LocalAppData%\rust-analyzer\+    const { LocalAppData } = process.env;+    return (+      LocalAppData && path.resolve(path.join(LocalAppData, 'rust-analyzer'))+    );+  }++  return undefined;+}++/** Returns a path where persistent data for rust-analyzer should be installed. */+function metadataDir(): string | undefined {

@matklad fyi it'd be great to support something like rust-analyzer --version --tag or simply include just it in the output to drop the persistent data logic (that bit is copied in spirit from the existing rust-analyzer extension) and query the binary itself

Xanewok

comment created time in 14 days

PR opened rust-lang/rls-vscode

Support rust-analyzer as alternate LSP engine

This mostly reshuffles stuff around and makes some bits more generic and less tied to the current RLS engine.

The behaviour can be changed by setting rust-client.engine accordingly, and now the client implementations live at rls.ts and rustAnalyzer.ts for the respective engine.

Particularly, the workspace configuration is no longer synchronized for every rust-prefixed setting and the list is hardcoded to the existing rust.<CFG> settings for backwards compatibility - this is to prevent RLS from warning about unrecognized future settings and that's because we want to possibly unify all of our configuration under a single rust prefix (rather than have a separate rust-client for client-relevant bits).

Previously we spawned each instance of RLS lazily depending on the Rust file that was opened (we crawled the FS and determined a project root where to spawn RLS) but since Rust Analyzer really wants to eagerly crawl every opened workspace (not in sense of an opened text editor tab but rather active workspace folders). To keep the existing logic somewhat compatible, we keep the multi-project layout but only spawn and refer to a singleton client in the rustAnalyzer.ts to keep the implementation simple.

What's left is tweaking the README, documenting more rust-analyzer-specific options (ideally coupled with general settings refresh), reword some tasks and UI to not refer to RLS unconditionally and wait for rust-analyzer to use more LSP-compliant messages in order to fully support its capabilities :sweat_smile:

cc @matklad

+906 -282

0 comment

9 changed files

pr created time in 14 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha 360de06132bb652fcac151ae7de72d1a56c7b4d3

Refactor engine spawning internals and support global servers

view details

Igor Matuszewski

commit sha 39d2d66738c64758435de91b4d1325881082ba6a

Fix stop/start support for Rust Analyzer

view details

Igor Matuszewski

commit sha d9386744528f8570c48e7f5355a8553cdb202e61

Describe new RLS/RA backends in settings

view details

Igor Matuszewski

commit sha 10f1e9529a415fb420276114508c76e9fda743ac

Support custom init options for Rust Analyzer

view details

Igor Matuszewski

commit sha 8c67bbcb9a4e9ee67dc7a8c0fcd9cf1a8c06eee0

Allow specifying releaseTag for rust-analyzer to be used/downloaded

view details

push time in 14 days

pull request commentrust-lang/rust

Update transitive dependency to work towards removing syn <1.0 dep

Yep, one reference to synstructure wasn't fixed as of now-https://github.com/rust-lang/rust/pull/71919/commits/403a9d0867ca01a5aecbe88b535ed902a9d4a633. Thanks for catching it!

Rebased and included the fix in https://github.com/rust-lang/rust/pull/71919/commits/403a9d0867ca01a5aecbe88b535ed902a9d4a633.

@bors r=Mark-Simulacrum

Xanewok

comment created time in 15 days

push eventXanewok/rust

Aaron Hill

commit sha 32c360b993d9706d48e1b216b1a35f3bdf422574

[perf] Skip attempting to run coerce_unsized on an inference variable See the included comment for a detailed explanation of why this is sound.

view details

Aaron Hill

commit sha ff6e4ee7ad9b61d1ac1ae85fff14c4dacb66034f

Use resolved types in body of coerce_unsized

view details

Matthew Jasper

commit sha 4dd47d3b78a2b6f45dd382ac58fb182e40293ca3

Fix ICE for broken or-pattern in async fn

view details

Stein Somers

commit sha 8f5c66c6a30cb770da3da953fa911b6c7a5769bb

Introduce BTreeMap benches of iter itself

view details

Stein Somers

commit sha 873022797ae7f09872738c7367d8d658a1a34ad5

Speed up BTreeMap iteration by intertwined descend to the initial leaf edges

view details

Stefan Lankes

commit sha 4d3cf5bd9b6c48e5116fb8d9747a7a2dbde09d1d

use new interface to create threads on HermitCore - the new interface allows to define the stack size

view details

Stefan Lankes

commit sha 2c43746758f4bc60bd4dda30a761cf48d1f60635

use nicer code style to define DEFAULT_MIN_STACK_SIZE

view details

Guillaume Gomez

commit sha 9ae85e19dfb6172692908c514f4b4613fe8fe792

Unify lints handling in rustdoc

view details

Dylan MacKenzie

commit sha 1f7c8967dcb695ebc645c9e920c14c9db1e3a440

Ensure that `./x.py doc --stage 0 src/libstd` works via CI

view details

Matthew Maurer

commit sha 0e7d5be4b808bd7ccb1d45aa8f7e5026a15aee93

Use .init_array rather than .ctors LLVM TargetMachines default to using the (now-legacy) .ctors representation of init functions. Mixing .ctors and .init_array representations can cause issues when linking with lld. This happens in practice for: * Our profiling runtime which is currently implicitly built with .init_array since it is built by clang, which sets this field. * External C/C++ code that may be linked into the same process. To support legacy systems which may use .ctors, targets may now specify that they use .ctors via the use_ctors attribute which defaults to false. For debugging and manual control, -Z use-ctors-section=yes/no will allow manual override. Fixes: #71233

view details

Jubilee Young

commit sha cd4c30940fdbc6755d5e10f2b6f74f6959f1d867

Test for zero-sized function items not ICEing

view details

mark

commit sha 9e43b00d4fe2660573e40ec9125290b1d9974e44

Turn of rustc-dev-guide toolstate for now

view details

Hanif Bin Ariffin

commit sha 19e5da902bf6ade2c0558383051215459754b73d

SipHasher::new() is literally with SipHasher with both keys being 0

view details

Oliver Scherer

commit sha 26edcee09309dad251532a7e1c1d96bac1562a57

Prevent stack overflow for deeply recursive code

view details

Oliver Scherer

commit sha 96c5012b57c4688a8a0a076302706bb6a1e95588

Add `psm` to the crate whitelist

view details

Simonas Kazlauskas

commit sha 968f442c7ce591e9cb03b57bb0dac30df4909b50

Set the default stack size to 8MB This was the value used before we originally started raising the stack size to infinity.

view details

Simonas Kazlauskas

commit sha a5c5365031ce8ec3926e06e207e16e58c4bf3e8b

Move ensure_sufficient_stack to data_structures We anticipate this to have uses in all sorts of crates and keeping it in `rustc_data_structures` enables access to it from more locations without necessarily pulling in the large `librustc` crate.

view details

Simonas Kazlauskas

commit sha a569f2970af629d012b08cf5869e2d3a300ff500

Update psm and stacker to 0.1.7

view details

Vadim Petrochenkov

commit sha 33b6631d9b2c79c548a9abdaf585a230b5f14ad9

Enable `cfg` predicate for `target_feature = "crt-static"` only if the target supports it

view details

Oliver Scherer

commit sha 675b585931d870ad4207d60ef43179390526a2fc

Remove clippy from some leftover lists of "possibly failing" tools

view details

push time in 15 days

pull request commentmattico/elasticlunr-rs

Allow to opt-out of Chinese/Japanese support

Dropped the second commit to only fix the misconfigured features in the manifest.

Xanewok

comment created time in 15 days

push eventXanewok/elasticlunr-rs

push time in 15 days

push eventrust-lang/rls-vscode

Igor Matuszewski

commit sha db1310935d942fd41d8a83f54f6529323bff8057

Define the installation directory for rust-analyzer

view details

Igor Matuszewski

commit sha 10dbcda4611c7b64d5c56f77ee9155041a8369da

Add node-fetch package

view details

Aleksey Kladov

commit sha e7739736ddeee65a15a0b61f25d14a27f22f73d7

Implement net.ts module Co-authored-by: Vitalii Kryvenko <veetaha2@gmail.com>

view details

Igor Matuszewski

commit sha 73a710ac0781b3d32ed670a3860eed6a6fa01eb7

WIP: Download and use rust-analyzer if specified Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>

view details

Igor Matuszewski

commit sha 3d17ed54240bb3f6c9d722e885a30c1e1292d0c0

Register for semantic highlighting when using Rust Analyzer

view details

Igor Matuszewski

commit sha 9b3dec31eaabb163731fd4d211a82787640cdbee

Simplify getting sysroot

view details

Igor Matuszewski

commit sha ac97f689d434cda688a42ff02f0ad4dcb4ddd334

Simplify fetching active rustup channel

view details

Igor Matuszewski

commit sha 8b3fd40021ccc847fe2936ee275ecb542d183cea

Simplify commands using question mark operator since TS upgrade

view details

Igor Matuszewski

commit sha 0aed52f7805c926772399076be5e9a4256c0c0b9

Refactor engine spawning internals and support global servers

view details

push time in 17 days

delete branch Xanewok/rls

delete branch : lints

delete time in 18 days

push eventrust-lang/rls

Igor Matuszewski

commit sha 577ab7dd6a2c831c24926dcdfc4f7019bfad8f5c

Apply clippy lints

view details

Igor Matuszewski

commit sha 2f17cf737e81940d7846bff7bb63196317740189

Merge pull request #1671 from Xanewok/lints Apply clippy lints

view details

push time in 18 days

PR merged rust-lang/rls

Apply clippy lints
+7 -5

0 comment

4 changed files

Xanewok

pr closed time in 18 days

pull request commentmattico/elasticlunr-rs

Allow to opt-out of Chinese/Japanese support

Not feeling particularly strong about the stemmers feature, feel free to skip it if you feel like it.

I'd love to land the first commit, which jieba-rs and lindera dependencies being made optional, though :heart:

Xanewok

comment created time in 18 days

pull request commentrust-lang/mdBook

Update dependencies.

Pushed https://github.com/mattico/elasticlunr-rs/pull/28 that could help us cut down the newly introduced dependencies of elasticlunr if we don't enable support for Chinese/Japanese indexing.

ehuss

comment created time in 18 days

PR opened mattico/elasticlunr-rs

Allow to opt-out of Chinese/Japanese support

While it's awesome to have, the relevant support doubles the amount of dependencies from 50 to 93, pulling some data/index crates, which can blow up the compilation time considerably, even if the user doesn't require the relevant language support.

It's great to have them enabled by the default but this commit allows to opt out via --no-default-features --features stemmer, without forcing the user to enumerate every language already supported by the rust-stemmers crate.

+8 -5

0 comment

2 changed files

pr created time in 18 days

create barnchXanewok/elasticlunr-rs

branch : lean-and-mean

created branch time in 18 days

pull request commentrust-lang/mdBook

Update dependencies.

Ah, that's unfortunate. Let's see if we can fix it upstream to not unconditionally include Chinese/Japanese support.

ehuss

comment created time in 18 days

more