Skip to content

Commit 1c35869

Browse files
authored
Merge branch 'main' into lossy-string-cleanup
2 parents 301165a + efa1aa7 commit 1c35869

File tree

211 files changed

+8470
-3494
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

211 files changed

+8470
-3494
lines changed

.busybox-config

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,8 @@ CONFIG_FEATURE_FANCY_HEAD=y
22
CONFIG_UNICODE_SUPPORT=y
33
CONFIG_DESKTOP=y
44
CONFIG_LONG_OPTS=y
5+
CONFIG_FEATURE_SORT_BIG=y
6+
CONFIG_FEATURE_CATV=y
7+
CONFIG_FEATURE_CATN=y
8+
CONFIG_FEATURE_TR_CLASSES=y
9+
CONFIG_FEATURE_READLINK_FOLLOW=y

.devcontainer/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ RUN apt-get update \
1212
gcc \
1313
gdb \
1414
gperf \
15-
jq \
1615
libacl1-dev \
1716
libattr1-dev \
1817
libcap-dev \
1918
libexpect-perl \
2019
libselinux1-dev \
20+
libsystemd-dev \
2121
python3-pyinotify \
2222
quilt \
2323
texinfo \

.github/workflows/CICD.yml

Lines changed: 29 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ jobs:
149149
shell: bash
150150
run: |
151151
RUSTDOCFLAGS="-Dwarnings" cargo doc ${{ steps.vars.outputs.CARGO_FEATURES_OPTION }} --no-deps --workspace --document-private-items
152-
- uses: DavidAnson/markdownlint-cli2-action@v21
152+
- uses: DavidAnson/markdownlint-cli2-action@v22
153153
with:
154154
fix: "true"
155155
globs: |
@@ -300,22 +300,22 @@ jobs:
300300
run: make nextest PROFILE=ci CARGOFLAGS="--hide-progress-bar"
301301
env:
302302
RUST_BACKTRACE: "1"
303-
304-
- name: "`make install PROFILE=release-fast COMPLETIONS=n MANPAGES=n LOCALES=n`"
303+
- name: "`make install PROG_PREFIX=uu- PROFILE=release-fast COMPLETIONS=n MANPAGES=n LOCALES=n`"
305304
shell: bash
306305
run: |
307306
set -x
308-
DESTDIR=/tmp/ make PROFILE=release-fast COMPLETIONS=n MANPAGES=n LOCALES=n install
307+
DESTDIR=/tmp/ make install PROG_PREFIX=uu- PROFILE=release-fast COMPLETIONS=n MANPAGES=n LOCALES=n
309308
# Check that utils are built with given profile
310309
./target/release-fast/true
311-
# Check that the utils are present
312-
test -f /tmp/usr/local/bin/tty
310+
# Check that the progs have prefix
311+
test -f /tmp/usr/local/bin/uu-tty
312+
test -f /tmp/usr/local/libexec/uu-coreutils/libstdbuf.*
313313
# Check that the manpage is not present
314-
! test -f /tmp/usr/local/share/man/man1/whoami.1
314+
! test -f /tmp/usr/local/share/man/man1/uu-whoami.1
315315
# Check that the completion is not present
316-
! test -f /tmp/usr/local/share/zsh/site-functions/_install
317-
! test -f /tmp/usr/local/share/bash-completion/completions/head.bash
318-
! test -f /tmp/usr/local/share/fish/vendor_completions.d/cat.fish
316+
! test -f /tmp/usr/local/share/zsh/site-functions/_uu-install
317+
! test -f /tmp/usr/local/share/bash-completion/completions/uu-head.bash
318+
! test -f /tmp/usr/local/share/fish/vendor_completions.d/uu-cat.fish
319319
env:
320320
RUST_BACKTRACE: "1"
321321
- name: "`make install`"
@@ -465,7 +465,7 @@ jobs:
465465
run: |
466466
## Install dependencies
467467
sudo apt-get update
468-
sudo apt-get install jq libselinux1-dev libsystemd-dev
468+
sudo apt-get install libselinux1-dev libsystemd-dev
469469
- name: "`make install`"
470470
shell: bash
471471
run: |
@@ -502,14 +502,14 @@ jobs:
502502
--arg multisize "$SIZE_MULTI" \
503503
'{($date): { sha: $sha, size: $size, multisize: $multisize, }}' > size-result.json
504504
- name: Download the previous individual size result
505-
uses: dawidd6/action-download-artifact@v11
505+
uses: dawidd6/action-download-artifact@v12
506506
with:
507507
workflow: CICD.yml
508508
name: individual-size-result
509509
repo: uutils/coreutils
510510
path: dl
511511
- name: Download the previous size result
512-
uses: dawidd6/action-download-artifact@v11
512+
uses: dawidd6/action-download-artifact@v12
513513
with:
514514
workflow: CICD.yml
515515
name: size-result
@@ -546,12 +546,12 @@ jobs:
546546
previous_multisize=$(cat dl/size-result.json | jq -r '.[] | .multisize')
547547
check 'multicall binary' "$multisize" "$previous_multisize" 'size-result.json'
548548
- name: Upload the individual size result
549-
uses: actions/upload-artifact@v5
549+
uses: actions/upload-artifact@v6
550550
with:
551551
name: individual-size-result
552552
path: individual-size-result.json
553553
- name: Upload the size result
554-
uses: actions/upload-artifact@v5
554+
uses: actions/upload-artifact@v6
555555
with:
556556
name: size-result
557557
path: size-result.json
@@ -579,14 +579,14 @@ jobs:
579579
# - { os: ubuntu-latest , target: x86_64-unknown-linux-gnu , features: feat_selinux , use-cross: use-cross }
580580
- { os: ubuntu-latest , target: i686-unknown-linux-gnu , features: "feat_os_unix,test_risky_names", use-cross: use-cross }
581581
- { os: ubuntu-latest , target: i686-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross }
582-
- { os: ubuntu-latest , target: x86_64-unknown-linux-gnu , features: "feat_os_unix,test_risky_names", use-cross: use-cross }
582+
- { os: ubuntu-latest , target: x86_64-unknown-linux-gnu , features: "feat_os_unix,test_risky_names", use-cross: use-cross, skip-publish: true }
583583
- { os: ubuntu-latest , target: x86_64-unknown-linux-gnu , features: "feat_os_unix,uudoc" , use-cross: no, workspace-tests: true }
584584
- { os: ubuntu-latest , target: x86_64-unknown-linux-musl , features: feat_os_unix_musl , use-cross: use-cross }
585585
- { os: ubuntu-latest , target: x86_64-unknown-redox , features: feat_os_unix_redox , use-cross: redoxer , skip-tests: true }
586586
- { os: ubuntu-latest , target: wasm32-unknown-unknown , default-features: false, features: uucore/format, skip-tests: true, skip-package: true, skip-publish: true }
587587
- { os: macos-latest , target: aarch64-apple-darwin , features: feat_os_macos, workspace-tests: true } # M1 CPU
588-
# PR #7964: Mac should still build even if the feature is not enabled
589-
- { os: macos-latest , target: aarch64-apple-darwin , workspace-tests: true } # M1 CPU
588+
# PR #7964: Mac should still build even if the feature is not enabled. Do not publish this.
589+
- { os: macos-latest , target: aarch64-apple-darwin , workspace-tests: true, skip-publish: true } # M1 CPU
590590
- { os: macos-latest , target: x86_64-apple-darwin , features: feat_os_macos, workspace-tests: true }
591591
- { os: windows-latest , target: i686-pc-windows-msvc , features: feat_os_windows }
592592
- { os: windows-latest , target: x86_64-pc-windows-gnu , features: feat_os_windows }
@@ -637,7 +637,6 @@ jobs:
637637
case '${{ matrix.job.target }}' in
638638
aarch64-*) TARGET_ARCH=arm64 ;;
639639
arm-*-*hf) TARGET_ARCH=armhf ;;
640-
i586-*) TARGET_ARCH=i586 ;;
641640
i686-*) TARGET_ARCH=i686 ;;
642641
x86_64-*) TARGET_ARCH=x86_64 ;;
643642
esac;
@@ -713,7 +712,6 @@ jobs:
713712
shell: bash
714713
run: |
715714
## Create build/work space
716-
mkdir -p '${{ steps.vars.outputs.STAGING }}'
717715
mkdir -p '${{ steps.vars.outputs.STAGING }}/${{ steps.vars.outputs.PKG_BASENAME }}'
718716
- name: Install/setup prerequisites
719717
shell: bash
@@ -822,7 +820,7 @@ jobs:
822820
env:
823821
RUST_BACKTRACE: "1"
824822
- name: Archive executable artifacts
825-
uses: actions/upload-artifact@v5
823+
uses: actions/upload-artifact@v6
826824
with:
827825
name: ${{ env.PROJECT_NAME }}-${{ matrix.job.target }}${{ steps.vars.outputs.ARTIFACTS_SUFFIX }}
828826
path: target/${{ matrix.job.target }}/release/${{ env.PROJECT_NAME }}${{ steps.vars.outputs.EXE_suffix }}
@@ -922,17 +920,17 @@ jobs:
922920
HASH=$(sha1sum '${{ steps.vars.outputs.TEST_SUMMARY_FILE }}' | cut --delim=" " -f 1)
923921
echo "HASH=${HASH}" >> $GITHUB_OUTPUT
924922
- name: Reserve SHA1/ID of 'test-summary'
925-
uses: actions/upload-artifact@v5
923+
uses: actions/upload-artifact@v6
926924
with:
927925
name: "${{ steps.summary.outputs.HASH }}"
928926
path: "${{ steps.vars.outputs.TEST_SUMMARY_FILE }}"
929927
- name: Reserve test results summary
930-
uses: actions/upload-artifact@v5
928+
uses: actions/upload-artifact@v6
931929
with:
932930
name: busybox-test-summary
933931
path: "${{ steps.vars.outputs.TEST_SUMMARY_FILE }}"
934932
- name: Upload json results
935-
uses: actions/upload-artifact@v5
933+
uses: actions/upload-artifact@v6
936934
with:
937935
name: busybox-result.json
938936
path: ${{ steps.vars.outputs.TEST_SUMMARY_FILE }}
@@ -1015,17 +1013,17 @@ jobs:
10151013
HASH=$(sha1sum '${{ steps.vars.outputs.TEST_SUMMARY_FILE }}' | cut --delim=" " -f 1)
10161014
echo "HASH=${HASH}" >> $GITHUB_OUTPUT
10171015
- name: Reserve SHA1/ID of 'test-summary'
1018-
uses: actions/upload-artifact@v5
1016+
uses: actions/upload-artifact@v6
10191017
with:
10201018
name: "${{ steps.summary.outputs.HASH }}"
10211019
path: "${{ steps.vars.outputs.TEST_SUMMARY_FILE }}"
10221020
- name: Reserve test results summary
1023-
uses: actions/upload-artifact@v5
1021+
uses: actions/upload-artifact@v6
10241022
with:
10251023
name: toybox-test-summary
10261024
path: "${{ steps.vars.outputs.TEST_SUMMARY_FILE }}"
10271025
- name: Upload json results
1028-
uses: actions/upload-artifact@v5
1026+
uses: actions/upload-artifact@v6
10291027
with:
10301028
name: toybox-result.json
10311029
path: ${{ steps.vars.outputs.TEST_SUMMARY_FILE }}
@@ -1101,7 +1099,9 @@ jobs:
11011099
11021100
case '${{ matrix.job.os }}' in
11031101
ubuntu-latest)
1104-
sudo apt-get -y update ; sudo apt-get -y install libselinux1-dev
1102+
# selinux and systemd headers needed to build tests
1103+
sudo apt-get -y update
1104+
sudo apt-get -y install libselinux1-dev libsystemd-dev
11051105
# pinky is a tool to show logged-in users from utmp, and gecos fields from /etc/passwd.
11061106
# In GitHub Action *nix VMs, no accounts log in, even the "runner" account that runs the commands, and "system boot" entry is missing.
11071107
# The account also has empty gecos fields.
@@ -1121,11 +1121,6 @@ jobs:
11211121
;;
11221122
esac
11231123
1124-
case '${{ matrix.job.os }}' in
1125-
# Update binutils if MinGW due to https://github.com/rust-lang/rust/issues/112368
1126-
windows-latest) C:/msys64/usr/bin/pacman.exe -Sy --needed mingw-w64-x86_64-gcc --noconfirm ; echo "C:\msys64\mingw64\bin" >> $GITHUB_PATH ;;
1127-
esac
1128-
11291124
## Install the llvm-tools component to get access to `llvm-profdata`
11301125
rustup component add llvm-tools
11311126
@@ -1220,7 +1215,7 @@ jobs:
12201215
uses: lima-vm/lima-actions/setup@v1
12211216
id: lima-actions-setup
12221217
- name: Cache ~/.cache/lima
1223-
uses: actions/cache@v4
1218+
uses: actions/cache@v5
12241219
with:
12251220
path: ~/.cache/lima
12261221
key: lima-${{ steps.lima-actions-setup.outputs.version }}

0 commit comments

Comments
 (0)