OpenSymphony 2.11.0 resolve uma falha de atualização encontrada por algumas pessoas ao migrar da versão 2.10.0.
O updater anterior executava:
cargo install opensymphony
Com Rust 1.93.0, Cargo podia selecionar kstring 2.0.4, que exige Rust 1.96.0 ou uma versão mais recente. A instalação parava antes que o próprio updater pudesse ser substituído.
Uma única versão-base de Rust
OpenSymphony agora exige Rust 1.97.1 tanto para o CLI quanto para o aplicativo desktop. O workspace usa Cargo Resolver 3, e seu grafo de dependências bloqueado inclui kstring 2.0.4.
Desenvolvimento local, CI, Clippy, metadados de pacotes do Cargo e metadados de releases desktop agora compartilham essa base. A alternativa seria manter Rust 1.93 fixando kstring 2.0.2. Isso preservaria um toolchain desatualizado e criaria dívida de dependências desnecessária.
Elevar o MSRV é a escolha mais simples no longo prazo. A contrapartida explícita é que usuários existentes talvez precisem atualizar Rust uma vez.
Por que o updater da versão 2.10.0 ainda pode funcionar
Durante o release, uma instalação de 2.10.0 conseguiu instalar 2.11.0 depois da atualização do Rust. Quando opensymphony update é iniciado dentro de um checkout do código-fonte do OpenSymphony, Rustup encontra o arquivo rust-toolchain.toml do repositório e seleciona automaticamente Rust 1.97.1 para o processo filho do Cargo.
Rustup pode avisar que o toolchain padrão está sendo substituído. Esse aviso é apenas informativo.
Esse comportamento depende do ambiente de quem chama o comando. Uma pessoa que execute o updater fora do checkout com um toolchain Rust padrão mais antigo talvez ainda precise do comando de recuperação manual abaixo.
Atualização
Use primeiro o caminho normal:
rustup update stable
opensymphony update
Se ele falhar ao migrar de uma versão anterior à 2.11:
rustup update stable
cargo +stable install opensymphony --locked
Depois da instalação da versão 2.11.0, futuras execuções de opensymphony update usam:
cargo install opensymphony --locked
O bloqueio impede que o updater resolva silenciosamente um grafo de dependências diferente daquele testado e publicado com o release.
OpenSymphony 2.11.0 estabelece uma única versão-base de Rust suportada e um caminho de atualização mais reproduzível, sem manter um compilador antigo por meio de dependências fixadas.
Consulte a tag do release v2.11.0 , instale o crate 2.11.0 ou leia os pré-requisitos e o guia de operações .