Since the last time we both complained about this, I’ve actually been using https://github.com/prabirshrestha/vim-lsp and https://github.com/prabirshrestha/asyncomplete.vim for rust with very little setup and issues.
ymmv since you need to have the language server handy for whatever language, the config is at least pretty minimal.
I also haven’t finished setting it up for C++ because clangd (the language server for c++) is obnoxious. (lol)