Skip to content

Commit 37175bb

Browse files
authored
Release 0.2.5 (#1056)
2 parents bceee7e + 408b9ea commit 37175bb

File tree

7 files changed

+47
-22
lines changed

7 files changed

+47
-22
lines changed

.github/workflows/release.yml

+14-8
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ jobs:
1515

1616
- name: Sanity checks
1717
run: |
18+
# GHA makes the tag point to the commit rather than the tag object.
19+
# Remove the tag and fetch it again to get the real tag object.
20+
git tag -d "$(echo "$GITHUB_REF" | sed 's/refs\/tags\///')"
21+
git fetch https://github.com/trifectatechfoundation/sudo-rs.git --tags
22+
1823
# Check if the tag has a signature to prevent accidentally pushing an unsigned tag.
1924
git tag -l --format='%(contents:signature)' "$(echo "$GITHUB_REF" | sed 's/refs\/tags\///')" | grep --quiet SIGNATURE || (echo "Tag not signed"; exit 1)
2025
@@ -32,11 +37,6 @@ jobs:
3237
3338
- name: Compare checksums
3439
run: |
35-
# GHA makes the tag point to the commit rather than the tag object.
36-
# Remove the tag and fetch it again to get the real tag object.
37-
git tag -d "$(echo "$GITHUB_REF" | sed 's/refs\/tags\///')"
38-
git fetch https://github.com/bjorn3/sudo-rs.git --tags
39-
4040
# Get the expected checksums from the tag message.
4141
git tag -l --format='%(contents:body)' "$(echo "$GITHUB_REF" | sed 's/refs\/tags\///')" | tr -s '\n' > expected_checksums.txt
4242
@@ -69,14 +69,20 @@ jobs:
6969
7070
# Extract the first changelog entry from CHANGELOG.md
7171
echo "Changelog:"
72-
sed -n '4,${ /^## /q; p; }' CHANGELOG.md
72+
sed -n '4,${ /^## /q; p; }' CHANGELOG.md | tee changes.md
7373
7474
- name: Create release
7575
env:
7676
GH_TOKEN: ${{ github.token }}
7777
run: |
78-
gh release create "$GITHUB_REF" --draft \
79-
--title "Version $(echo "$GITHUB_REF" | sed 's/refs\/tags\///')" \
78+
# GHA makes the tag point to the commit rather than the tag object.
79+
# Remove the tag and fetch it again to get the real tag object.
80+
RELEASE="$(echo "$GITHUB_REF" | sed 's/refs\/tags\///')"
81+
git tag -d "$RELEASE"
82+
git fetch https://github.com/trifectatechfoundation/sudo-rs.git --tags
83+
84+
gh release create "$RELEASE" --draft \
85+
--title "Version ${RELEASE#v}" \
8086
--notes-file changes.md release_files/* \
8187
--verify-tag
8288
echo "Draft release successfully created. Please review and publish."

CHANGELOG.md

+24-5
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,39 @@
11
# Changelog
22

3+
## [0.2.5] - 2025-04-01
4+
5+
### Added
6+
- `sudo visudo` will protect you from accidentally locking yourself out
7+
- Support for `--prompt` and `SUDO_PROMPT` environment variable
8+
- Support for `Defaults targetpw`
9+
- Support for `VAR=VALUE` matching in `Defaults env_keep/env_check`
10+
- Support for `--bell`
11+
12+
### Changed
13+
- Portability: sudo-rs supports FreeBSD!
14+
- `sudo -v` will only ask for a password if the policy requires it
15+
16+
### Fixed
17+
- Manual wrongly claimed `timestamp_timeout` supported negative values (#1032)
18+
- `timestamp_timeout` in excess of 292 billion years were not rejected (#1048)
19+
- Usernames in /etc/sudoers can contain special characters by using double
20+
quotes or escaping them (#1045)
21+
322
## [0.2.4] - 2025-02-25
423

524
### Added
6-
- Support for 'SETENV:' and corresponding 'sudo VAR=value command' syntax
7-
- Support for 'Defaults rootpw'
8-
- Support for 'Defaults pwfeedback'
9-
- Support for host/user/runas/command-specific Defaults
25+
- Support for `SETENV:` and corresponding `sudo VAR=value command` syntax
26+
- Support for `Defaults rootpw`
27+
- Support for `Defaults pwfeedback`
28+
- Support for host/user/runas/command-specific `Defaults`
1029

1130
### Changed
1231
- Portability: sudo-rs now has experimental support for FreeBSD!
1332
- `pam-login` feature now controls if PAM service name 'sudo-i' is used
1433

1534
### Fixed
1635
- Bug in syslog writer could cause sudo to hang (#856)
17-
- SHELL was not canonicalized when using 'sudo -s' or 'sudo -i' (#962)
36+
- SHELL was not canonicalized when using `sudo -s` or `sudo -i` (#962)
1837
- RunAs_Spec was not carried over on the same /etc/sudoers line (#974)
1938
- sudo --list did not unfold multiple-level aliases (#978)
2039
- The man page for sudoers was missing (#943)

Cargo.lock

+5-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "sudo-rs"
33
description = "A memory safe implementation of sudo and su."
4-
version = "0.2.4"
4+
version = "0.2.5"
55
license = "Apache-2.0 OR MIT"
66
edition = "2021"
77
repository = "https://github.com/trifectatechfoundation/sudo-rs"

docs/man/su.1.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: SU(1) sudo-rs 0.2.4 | sudo-rs
2+
title: SU(1) sudo-rs 0.2.5 | sudo-rs
33
---
44

55
# NAME

docs/man/sudo.8.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: SUDO(8) sudo-rs 0.2.4 | sudo-rs
2+
title: SUDO(8) sudo-rs 0.2.5 | sudo-rs
33
---
44

55
# NAME

docs/man/visudo.8.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: VISUDO(8) sudo-rs 0.2.4 | sudo-rs
2+
title: VISUDO(8) sudo-rs 0.2.5 | sudo-rs
33
---
44

55
# NAME

0 commit comments

Comments
 (0)