rage
Added
- Russian translation!
rage-keygen -y IDENTITY_FILE
to convert identity files to recipients.- Elvish completions to the Debian package. These are not automatically discovered; Elvish users will need to manually import them.
- Localized manpages to the Debian package.
Changed
- MSRV is now 1.65.0.
- Migrated from
gumdrop
toclap
for argument parsing. -R/--recipients-file
and-i/--identity
now support "read-once" files, like those used by process substitution (-i <(other_binary get-age-identity)
) and named pipes.- The filename
-
(hyphen) is now treated as an explicit request to read from standard input when used with-R/--recipients-file
or-i/--identity
. It must only occur once across the-R/--recipients-file
and-i/--identity
flags, and the input file. It cannot be used if the input file is omitted.
Fixed
- OpenSSH private keys passed to
-i/--identity
that contain invalid public keys are no longer ignored when encrypting, and instead cause an error. - Weak
ssh-rsa
public keys that are smaller than 2048 bits are now rejected. rage-keygen
no longer overwrites existing key files with the-o/--output
flag. This was its behaviour prior to 0.6.0, but was unintentionally changed whenrage
was modified to overwrite existing files. Key file overwriting can still be achieved by omitting-o/--output
and instead piping stdout to the file.rage-keygen
now prints fatal errors directly instead of them being hidden behind theRUST_LOG=error
environment variable. It also now sets its return code appropriately instead of always returning 0.- The Debian package now uses the correct installation paths for fish and Zsh completions.
age
Added
- Russian translation!
age::cli_common
:file_io
:FileReader
impl Debug for {LazyFile, OutputFormat, OutputWriter, StdoutWriter}
StdinGuard
read_recipients
age::identity::IdentityFile::from_input_reader
(behindcli-common
feature flag).impl Eq for age::ssh::{ParseRecipientKeyError, UnsupportedKey}
impl {Debug, PartialEq, Eq, Hash} for age::x25519::Recipient
Changed
- MSRV is now 1.65.0.
- Migrated to
base64 0.21
,rsa 0.9
. age::cli_common
:file_io
:InputReader::File
enum variant now containsFileReader
instead ofstd::fs::File
.OutputWriter::new
now takes anallow_overwrite
boolean argument. IfOutputWriter
will write to a file, this boolean enables the caller to control whether the file will be overwritten if it exists (instead of the implicit behaviour that was previously changed in 0.6.0).
read_identities
now takes an&mut StdinGuard
argument, andfilenames
may now contain at most one entry of"-"
, which will be interpreted as reading from standard input.ReadError
has new variants:EncryptedIdentities
InvalidRecipient
InvalidRecipientsFile
MissingRecipientsFile
MultipleStdin
RsaModulusTooLarge
RsaModulusTooSmall
age::ssh
:ParseRecipientKeyError
has new variants:RsaModulusTooLarge
RsaModulusTooSmall
- The following trait implementations now return
Err(ParseRecipientKeyError::RsaModulusTooLarge)
instead ofErr(ParseRecipientKeyError::Unsupported(_))
when encountering an RSA public key with a modulus larger than 4096 bits:impl FromStr for Recipient
impl TryFrom<Identity> for Recipient
Fixed
age::Encryptor::with_user_passphrase
will now re-measure thescrypt
work factor until it is measurable, instead of setting the work factor to maximum.age::cli_common
:UiCallbacks::confirm
no longer requires erasing the confirmation message before it will accept a response.UiCallbacks::request_public_string
no longer prepends the description to the response string.
- Weak
ssh-rsa
public keys that are smaller than 2048 bits are now rejected from all string-parsing APIs. TheRecipient::SshRsa
enum variant can still be manually constructed with such keys; this will be fixed in a future crate refactor.
age-plugin 0.5.0
Changed
- MSRV is now 1.65.0.
- Migrated to
age-core 0.10
. age_plugin::run_state_machine
now takes optional arguments, to enable the creation of recipient-only or identity-only plugins.
age-core
Added
impl Eq for age_core::format::Stanza
Changed
- MSRV is now 1.65.0.
New Contributors
- @WesleyAC made their first contribution in #400
- @thibmeu made their first contribution in #406
- @gibbz00 made their first contribution in #420
- @ehaupt made their first contribution in #467
- @hexanova made their first contribution in #471
Full Changelog: v0.9.2...v0.10.0