Commit graph

264 commits

Author SHA1 Message Date
Joining7943
ad5d33f1a9 ci/android: Fix and improve caching. Fix and improve android-commands.sh 2023-04-20 17:36:25 +02:00
Joining7943
f155185df6 util/android-commands: Fix shellcheck warnings. Reformat file. 2023-04-20 16:48:15 +02:00
Joining7943
037aaf0a36 android-commands.sh: Reformat file with shftm 2023-04-19 22:06:12 +02:00
Joining7943
78ce521c01 ci: Use nextest as test runner instead of cargo test 2023-04-19 22:06:06 +02:00
Daniel Hofstetter
40fef49817 Fix incorrect comment & remove irrelevant comment 2023-04-13 16:47:05 +02:00
Sylvestre Ledru
af0a263191 0.0.17 => 0.0.18 2023-03-29 08:11:25 +02:00
Sylvestre Ledru
d7bc324979
Merge pull request #4656 from sylvestre/du-th
du: Update the GNU error message to our for tests/du/threshold.sh
2023-03-29 07:48:19 +02:00
Sylvestre Ledru
71228f98e1
Merge pull request #4626 from sylvestre/python-error-mmgt
manage an potential error in util/remaining-gnu-error.py when GNU isn't up to date
2023-03-28 10:44:40 +02:00
Sylvestre Ledru
f7ff0d45b8 du: Update the GNU error message to our for tests/du/threshold.sh
We are doing a better job.
Make it FAIL => PASS
2023-03-27 22:10:07 +02:00
Sylvestre Ledru
355d242e7a python: simplify the code a bit 2023-03-26 10:08:25 +02:00
Sylvestre Ledru
f8e0a73fb5 manage an potential error in util/remaining-gnu-error.py when GNU isn't up to date 2023-03-26 10:08:25 +02:00
Miles Liu
04f1b31889
util/show-utils: fix script not working as intended 2023-03-21 09:25:17 +08:00
Miles Liu
787ad780c0
docs: fix tr.pl and stat-printf.pl don't show up in gnu-full-result 2023-03-13 15:40:01 +08:00
Terts Diepraam
9e217ab30d utils: create a script to explore binary sizes 2023-02-26 16:55:53 +01:00
Miles Liu
e8f7395a8a
docs: fix invalid test status in gnu-full-result 2023-02-01 20:54:37 +08:00
Terts Diepraam
a9f1743ba6 util: fix publish order of uucore_procs and uucore 2023-01-21 13:00:49 +01:00
Terts Diepraam
4d3dc78686 Version 0.0.17 2023-01-21 10:38:18 +01:00
Joining7943
ccfc799b46 CI/tests: Run cargo test with RUST_BACKTRACE=1 2023-01-01 18:36:02 +01:00
Jeffrey Finkelstein
a396ebd883 touch: add support for some relative times
For example,

    $ touch -d +1 days

Fixes #3964.
2022-11-29 22:53:13 +01:00
Daniel Hofstetter
4fdfedf61e build-gnu: fix test for numfmt 2022-11-02 10:20:04 +01:00
Terts Diepraam
9e1902eae3 build-gnu: fix test for basenc 2022-10-13 23:04:58 +02:00
Terts Diepraam
f15c4f2d3e Version 0.0.16 2022-10-11 23:03:39 +02:00
Terts Diepraam
84f9879e5c util/update-version: fix update of uu_base32 dependency 2022-10-11 23:03:18 +02:00
Terts Diepraam
b2b46a6835 util/update-version: also update Cargo.toml of uucore 2022-10-11 22:58:04 +02:00
Terts Diepraam
b869c78343 util/publish: update to correctly handle dependencies between utils 2022-10-11 22:49:04 +02:00
Sylvestre Ledru
2e26e1d2bd chroot: implement --skip-chdir 2022-09-21 19:46:58 +02:00
Sylvestre Ledru
20af659f09 Run the GNU root tests in a separate task 2022-09-17 13:19:06 +02:00
Sylvestre Ledru
cfa7ba2ce2 gnu: merge the root tests results into the main one 2022-09-17 13:19:03 +02:00
Sylvestre Ledru
acef46b629 add the capability to run several tests at once 2022-09-16 10:31:01 +02:00
Niyaz Nigmatullin
84abf9c920 CI/android: add 60 min timeout for cargo test to see where it's stuck 2022-08-24 08:21:24 +03:00
Terts Diepraam
a28dd25cb3 all: fix spelling errors 2022-08-20 13:24:06 +02:00
Terts Diepraam
15180249fc Version 0.0.15 2022-08-20 13:13:22 +02:00
Terts Diepraam
0f12806b5c util: add ls dependency update to {dir, vdir} 2022-08-20 12:27:18 +02:00
Terts Diepraam
5422d931ab util: simplify update-version.sh
Now that the versions of the utils, uucore and uucore_procs are synced, we can use the same variables for all updates
2022-08-20 12:14:14 +02:00
Sylvestre Ledru
2870fb091b remaining-gnu-error.py: separate FAIL from ERROR/SKIP 2022-08-14 22:23:23 +02:00
Sylvestre Ledru
c8aa5bcbd7 reformat python code with black 2022-08-14 12:45:51 +02:00
Jan Scheer
5258dec9a8
tail: fix race condition (#3798)
* tail: fix race condition (fix #3765)

There exists a race condition (RC) that can occur if changes to a path
happen after the initial print loop in `uu_tail()`, but before the
path is added to the notify-Watcher thread in `follow()`.

To minimize the window where the RC can occur, this moves starting the
Watcher thread and adding paths to it from `follow()` to the initial
print loop in `uu_tail()`.

Additionally, to make sure the RC cannot happen in
"gnu/tests/tail-2/F-headers.sh", the error message that is used as a trigger
in this test, is delayed until the path is added to the Watcher thread.

* build-gnu: remove workarounds for tail

Remove workarounds for "tests/tail-2/F-headers.sh" which are
(presumably) no longer needed because of the race condition fix.

* build-gnu: remove workarounds for tail

Remove workarounds for "tests/tail-2/F-headers.sh" which are
(presumably) no longer needed because of the race condition fix.

* tail: refactor to minimize chances of RC

Move "adding paths to Watcher thread" to its own loop and run this loop
before the initial tail-print-loop in order to minimize the window for
race conditions.
2022-08-14 01:01:15 +02:00
Niyaz Nigmatullin
5978185f94 fix spelling 2022-08-09 08:35:10 +03:00
Niyaz Nigmatullin
dbaff49de6 gnu-tests: disable some tests that implementation-specific 2022-08-09 08:35:10 +03:00
Jan Scheer
39505e39ed
build-gnu: attempt to fix #3765 2022-08-05 07:33:36 +02:00
Niyaz Nigmatullin
85021041b4 F-headers: try make 409 seconds timeout 2022-08-02 15:38:25 +03:00
Niyaz Nigmatullin
20a103f9c7 gnu-tests/F-headers: increase number of attempts 2022-08-02 15:38:25 +03:00
Niyaz Nigmatullin
e5fc8bca8d basenc: fix error code on on wrong arguments, fix usage printing test 2022-07-25 23:12:10 +03:00
Niyaz Nigmatullin
f220c86121 util/build-gnu.sh: remove some test changes + change some messages 2022-07-19 17:34:52 +03:00
Jan Scheer
75edeea5e4
tail: reduce CPU load for polling (#3618)
* tail: reduce CPU load for polling

This reduces the CPU load for polling drastically (from ~80% down to ~5%)
by removing/fixing several previous workarounds related to polling,
while still passing all related GNU test-suite checks.
* set Notify::PollWatcher delay to: sleep_sec/10 instead of
  sleep_sec/100
* set recv_timeout to sleep_sec instead of sleep_sec/100
* remove the manual polling of watched files

Bugs:
* fix an issue with headers to consistently pass
"test_follow_name_retry_headers" and "gnu/tests/tail-2/overlay-headers.sh"

Code clean-up and refactor
* make fields of struct FileHandling private (and add getters/setters)
to ensure that the paths are absolute and match the paths returned by
Notify::Events
* replace calls to "crash!" with "return USimpleError"
* clean-up formatting
2022-06-21 22:21:19 +02:00
Terts Diepraam
e3f14ea6e5
Merge pull request #3651 from sylvestre/gnu-install
install: verbose messages shows ginstall as command
2022-06-19 12:08:53 +02:00
Sylvestre Ledru
43ce927bdb install: verbose messages shows ginstall as command 2022-06-18 22:37:09 +02:00
Sylvestre Ledru
aacf4a7dbe
sleep: Remove an incorrect comment 2022-06-18 12:22:39 +02:00
Sylvestre Ledru
0be1b7c76a
Fix typo 2022-06-15 14:33:19 +02:00
Sylvestre Ledru
1747b20cf0 sleep: return 1 is no arg + customize one of the tests (tests/misc/sleep.sh) 2022-06-15 08:57:30 +02:00
Sylvestre Ledru
b9d3841019 build gnu: continue the customization of the tests 2022-06-13 22:43:55 +02:00
Jan Scheer
8ee806a444
Merge branch 'main' into tail_notify 2022-06-02 16:31:25 +02:00
Sylvestre Ledru
aeb01c6f52
Merge pull request #3563 from sylvestre/hard-to-sym
ln: Implement -L -P to make tests/ln/hard-to-sym.sh work
2022-06-02 08:19:17 +02:00
Sylvestre Ledru
06c2aea1b4 ln: Implement -L -P to make tests/ln/hard-to-sym.sh work 2022-06-01 23:03:50 +02:00
Jan Scheer
dc4b6f2cf9
Merge branch 'main' into tail_notify 2022-05-23 01:10:32 +02:00
Terts Diepraam
eae07adfb1
Version 0.0.14 (#3553)
Version 0.0.14
2022-05-22 19:57:19 +02:00
Jan Scheer
409878e323
Merge branch 'main' into tail_notify 2022-05-16 22:45:52 +02:00
Jan Scheer
5004d4b458
build-gnu: replace timeout for tests/tail/follow-stdin.sh
* `tests/tail-2/follow-stdin.sh` will hang undefinedly if uu_timeout
is used
2022-05-16 21:09:51 +02:00
Sylvestre Ledru
ece9ccdbfb Add missing \# interpreter line 2022-05-10 13:49:52 +02:00
Sylvestre Ledru
087d4b14fc Do not use the Rust/touch for tests/ls/abmon-align.sh 2022-05-08 21:27:08 +02:00
Sylvestre Ledru
0314f3ed8e GNU testsuite: no need to rerun the GNU build
At least, two use cases:
* when hacking on test update
* when we want to rebuild only Rust coreutils with the right option

Indeed, the GNU code should not cache often in this case
2022-05-01 19:04:52 +02:00
ndd7xv
88752ecc3e fix -h and --help discrepancies
addresses https://github.com/uutils/coreutils/issues/3370
2022-04-27 23:16:36 -04:00
Justin Tracey
4caeb2ff1d add Android to CICD 2022-04-20 08:44:49 +02:00
gmnsii
c2e214bd99
Add dir and vdir utils (based on ls)
Fix issue #3163

They are basically ls with some different options.
2022-04-15 17:30:40 +02:00
Sylvestre Ledru
757b161164 match more the GNU behavior on error code 2022-04-06 13:59:44 +02:00
Sylvestre Ledru
2e996e59f3 remaining-gnu-error.py: add missing slash 2022-04-06 11:03:27 +02:00
Sylvestre Ledru
465c1c1c9d remaining-gnu-error.py: simplify the code 2022-04-06 11:03:13 +02:00
Sylvestre Ledru
97c6f6ac49 Update of the build-gnu tool to fix usage_vs_getopt.sh 2022-04-06 09:35:12 +02:00
Sylvestre Ledru
d48e533a57 remaining-gnu-error.py: fix an error when mismatche for real 2022-04-06 09:24:20 +02:00
Sylvestre Ledru
bd95daf634 remaining-gnu-error.py: fix an error when mismatches 2022-04-06 09:17:50 +02:00
Sylvestre Ledru
7076cc084f
Use the more modern python string declaration 2022-04-03 11:10:39 +02:00
Sylvestre Ledru
46ceeed54c GNU: add a script to list the failing tests
and sort them by size: (the smaller, the easier to fix in general)
2022-04-03 00:15:18 +02:00
Terts Diepraam
b7809bd889 version 0.0.13 2022-04-02 11:04:27 +02:00
Sylvestre Ledru
b3d87b088d ln: adjust the error messages 2022-04-01 09:25:35 +02:00
Roy Ivy III
bed7dc5a29 maint/CICD ~ (GnuTests) support local bespoke repo default branch 2022-03-31 23:39:11 +02:00
Roy Ivy III
8518fff0fd maint/CICD ~ (util) improve error reporting clarity 2022-03-31 23:32:51 +02:00
Roy Ivy III
cbe6396149 docs ~ (GnuTests) add reference and notes re GNU coreutils testing processes 2022-03-31 23:32:00 +02:00
Roy Ivy III
baaa1639e1 fix/CICD ~ (GnuTests) disable factor tests 2022-03-31 23:31:48 +02:00
Roy Ivy III
a46521bb8f fix/CICD ~ (GnuTests) polish and revise factor test mutator 2022-03-31 23:31:41 +02:00
Terts Diepraam
65c3ab6afd
Merge pull request #3334 from sylvestre/gnu-selinux
when building for the GNU testsuite, force the build of selinux binaries
2022-03-31 00:11:17 +02:00
Sylvestre Ledru
050b5b0c9b ln: make the tests/ln/hard-backup.sh test work
We haven't a great error message with hard link on the same file

+ Update the GNU error message to match ours
2022-03-30 20:00:11 +02:00
Sylvestre Ledru
12c38f6eb4 when building for the GNU testsuite, force the build of selinux binaries 2022-03-30 09:31:27 +02:00
Sylvestre Ledru
a13f0c8fe0 gnu/usage_vs_getopts.sh: default the usage error value to 2 in the GNU test
Closes issue #3331
2022-03-29 22:33:18 +02:00
Sylvestre Ledru
981a77d0cd gnu/usage_vs_getopts.sh: make the test FAIL instead of ERROR 2022-03-29 22:33:18 +02:00
Jeffrey Finkelstein
5f8567695c util: use uutils timeout in GNU tests
Remove the substitution of uutils `timeout` with GNU `timeout` before
running the GNU test suite. Some of these replacements were not
actually operational because the regex was not appropriate (for
example, the test file had `timeout 10` but the regex would only match
`timeout [0-9]`). Others no longer need to be used because the uutils
version of `timeout` works well enough now to terminate a process
within the given period of time.
2022-03-26 19:35:19 +01:00
jfinkels
ebd0c09549
util: use seq to enumerate integers (#3239)
Replace a bash loop for enumerating integers with a more concise use
of `seq` in `util/build-gnu.sh`.
2022-03-11 09:38:06 +01:00
Jeffrey Finkelstein
a5200efaac util: remove replacement of seq in GNU tests 2022-03-10 18:51:26 -05:00
Jeffrey Finkelstein
31c7f09630 util: remove some workarounds for GNU tests 2022-03-06 22:57:10 -05:00
xxyzz
fe8910350c
Run GNU root tests at the end
This should fix the profiling permission denied error on non-root tests
2022-02-20 18:29:18 +08:00
Sylvestre Ledru
9adaf5c288
Merge pull request #3045 from xxyzz/main
Create coverage report for GNU tests
2022-02-20 10:57:12 +01:00
Roy Ivy III
d6424bb354 maint/util ~ remove extra/redundant factor tests for 'debug' builds
- avoids "Terminated" timeout errors when using longer running 'debug' `factor`
2022-02-17 15:14:52 -06:00
xxyzz
1ccf94e4fa
Run 33 GNU tests that require root 2022-02-14 16:29:45 +08:00
Terts Diepraam
ac11d8793e docs: add page with test coverage 2022-02-13 23:14:13 +01:00
Roy Ivy III
dc223309e7 maint/util ~ (run-gnu-tests) increase timeout to allow for longer 'debug' test runs 2022-02-12 15:27:00 -06:00
Roy Ivy III
988fd658ae maint/util ~ (run-gnu-tests/docs) fix incorrect comment 2022-02-12 15:26:59 -06:00
Roy Ivy III
02aa5ea784 maint/util ~ (build-gnu) fix missing 'b3sum' for *sum binary creation 2022-02-12 15:26:59 -06:00
Roy Ivy III
40b9ebf90e docs ~ (util) remove outdated GNULIB comments 2022-02-12 15:26:59 -06:00
Roy Ivy III
c2e17e5f37 maint/util ~ improve/refactor 'build-gnu' & 'run-gnu-test'
- add more logging for better fault tracking
- generalize for use in either RELEASE or DEBUG build mode (default to 'release')
- improve variable naming precision/specificity
2022-02-12 15:26:59 -06:00
Roy Ivy III
b7676c07e9 maint/refactor ~ (util) minor refactoring of util shell scripts 2022-02-12 15:26:59 -06:00
Roy Ivy III
f75cfbdebc docs ~ (CICD/util) add/revise spell-checker exceptions 2022-02-12 15:26:59 -06:00
Roy Ivy III
a970c8d45d maint/util ~ fix shellcheck complaints 2022-02-12 15:26:59 -06:00
Roy Ivy III
fdd11e0637 maint/polish ~ (util) shfmt -w -i=4 -ci 2022-02-12 15:26:59 -06:00
Roy Ivy III
3a13857dc3 maint/util ~ add dwr (for interactive removal of workflow runs from CLI) 2022-02-12 15:26:59 -06:00
Shreyans Jain
6391f4c28a
util/build-gnu.sh: Add b3sum
Signed-off-by: Shreyans Jain <shreyansthebest2007@gmail.com>
2022-02-11 14:18:56 +05:30
Roy Ivy III
578e5c8aba maint/CICD ~ implement 'GnuTests' workflow fixes/refactor
- consolidate configuration
- DRY improvements
- improve flexibility/robustness in the face of missing reference test info
- add reference test info IDs and additional logging to help diagnose testing failures
- includes parallel refactor of 'util/run-gnu-test.sh'
2022-02-05 14:21:15 -06:00
Linux User
d762bebc1c update shell scripts according to shellcheck recommendations and minor cleanup 2022-02-01 06:55:11 +00:00
Sylvestre Ledru
8f12b5b7ce
Merge pull request #2905 from jfinkels/update-main-branch-name-in-workflows
ci: update default branch to "main" in workflows
2022-01-25 14:34:22 +01:00
Jeffrey Finkelstein
ec3bcf4067 util: replace all instances of printf
Add the `g` flag to one of the regular expression substitutions in
`util/build-gnu.sh` so that all instances of `printf` are replaced
with `/usr/bin/printf` in `tests/dd/ascii.sh` instead of just one
instance per line.
2022-01-23 09:52:25 -05:00
Jeffrey Finkelstein
bfc0d81481 ci: update default branch to "main" in workflows 2022-01-21 23:07:16 -05:00
Sylvestre Ledru
70d8864fe1 Improve the release doc 2022-01-16 19:00:32 +01:00
Sylvestre Ledru
3fbe4f92f7 update-version.sh: 0.0.8 => 0.0.9 2022-01-16 17:04:43 +01:00
Sylvestre Ledru
661047623c update-version.sh: document the release process 2022-01-16 17:04:31 +01:00
Roy Ivy III
bb25129a48 maint/dev ~ update test-repo-whitespace.BAT dev utility 2022-01-09 21:34:22 -06:00
Sylvestre Ledru
83201ecb35
Merge pull request #2765 from ybc37/fix/idempotent-build-gnu
Fix idempotence of `utils/build-gnu.sh`
2021-12-15 23:40:55 +01:00
Daniel Schmid
0e4671215d Fix idempotence of utils/build-gnu.sh
* Fix regular expressions to only match when run the first time.
* Enhance the regular expression which removes duplicated "/usr/bin/" to
  allow a space between them (+ also consider `init.cfg`).
2021-12-12 19:20:55 +01:00
Daniel Schmid
e46ace85da Fix typo in utils/build-gnu.sh 2021-12-12 17:24:49 +01:00
Sylvestre Ledru
d72a135b42 improve the publish script 2021-10-24 00:51:27 +02:00
Sylvestre Ledru
59e9870c56 Prepare version 0.0.8 2021-10-23 19:21:50 +02:00
Chad Brewbaker
a9bfd5df06
Fix need for ssh keys
Github now mandates git ssh keys instead of username/password. I modified the download instructions to remove the need for ssh authentication.
2021-10-09 23:01:05 -05:00
Jan Verbeek
d285472210 GNU tests: make script runnable from any directory 2021-08-28 02:26:01 +02:00
Jan Verbeek
58ce3d1e82 Make scripts executable 2021-08-28 02:26:01 +02:00
Sylvestre Ledru
406e60eef2 make build-gnu.sh executable 2021-08-27 09:28:43 +02:00
James Robson
81a5f0a4dc Add step to GnuTest workflow to compare results against master 2021-08-10 19:29:23 +01:00
Michael Debertol
6edc6ee73d build-gnu: remove timeout for cat-self
This edge case is now handled and the test should pass.
2021-08-08 01:32:28 +02:00
Michael Debertol
b8c383e210 basenc: add utility
basenc is a brand-new gnu core utility (added less than 3 years ago!),
which enables some more encodings.
2021-08-06 00:07:19 +02:00
Michael Debertol
22306db161 maint: enable gnu test for arch
Gnu checks before testing a utility whether that utility was actually built.
It thinks `arch` was not built, even though it was.

This patch does not convince gnu that `arch` was built (I wasn't able to figure that out),
but instead comments out the check in `init.cfg` when running `build-gnu.sh`.
2021-08-05 00:42:41 +02:00
Michael Debertol
319b984434 gnu-test: base32/64: modify test expectation for invalid inputs
When decoding an invalid base32/64 string, gnu writes everything it was
able to decode until it hit the decode error, while we don't write
anything if the input is invalid.
2021-08-04 00:19:41 +02:00
Sylvestre Ledru
4f0555a116 update uucore_proces to 0.0.6 2021-07-11 21:00:20 +02:00
Sylvestre Ledru
1d8a66b7d3 Update to version 0.0.7 2021-07-11 18:04:56 +02:00
Sylvestre Ledru
8fbb78d176 script update with versions 0.0.7 & uucore 0.0.9 2021-07-11 18:03:18 +02:00
Roy Ivy III
c74bc2eedd maint/CICD ~ add 'GHA-delete-GNU-workflow-logs' shell script utility 2021-06-19 18:40:22 -05:00
Jan Scheer
46981a69f9
util: fix path (#2396)
suggest to clone into the path that `util/run-gnu-test.sh` will be using
2021-06-11 07:33:11 +02:00
Roy Ivy III
c192550f22 refactor ~ polish spelling + add spelling exceptions 2021-06-06 19:28:22 -05:00
Sylvestre Ledru
14303c524f gnu/rm: make another test pass 2021-06-04 23:55:24 +02:00
Sylvestre Ledru
f421e51ad3 gnu/rm: fix tests/rm/rm{1,2}.sh 2021-06-04 09:12:42 +02:00
Sylvestre Ledru
aabef14404 gnu/rm: fix tests/rm/cycle.sh 2021-06-04 09:12:42 +02:00
Sylvestre Ledru
9cf3ab894f gnu/ci: build in parallel 2021-06-04 09:12:42 +02:00
Sylvestre Ledru
a85ee4386a gnu/rm: make the code reentrant 2021-06-04 09:12:39 +02:00
Sylvestre Ledru
84330ca938 gnu/test: rm: update one of the test to match what we do 2021-06-03 22:15:57 +02:00
Sylvestre Ledru
e7f5916864 gnu/ci: allow to run a single gnu test (and document it) 2021-06-02 23:48:13 +02:00
Sylvestre Ledru
0105531b7f show the backtrace in case of a rust crash 2021-06-02 23:37:34 +02:00
Roy Ivy III
06c53d97fc refactor ~ (utils) fix spelling + add spell-checker exceptions 2021-05-31 08:23:58 -05:00
Sylvestre Ledru
97d15e34d9
Disable some factor tests 2021-05-25 14:58:56 +02:00
Sylvestre Ledru
98f09a6b8b gnu/ci: don't run seq-precision - logs are too long 2021-05-24 22:33:53 +02:00
Sylvestre Ledru
962e4198b2 gnu/ci: limit the number of factor runs 2021-05-24 22:33:53 +02:00
Sylvestre Ledru
0d1b14ee33
Bring back the run expensive tests 2021-05-22 11:08:03 +02:00
Sylvestre Ledru
adaba54026 gnu/ci: move the operations into script to run them locally 2021-05-22 09:33:15 +02:00
Sylvestre Ledru
f37284129e new release 0.0.6 to address the cat issue 2021-04-03 16:06:58 +02:00
Sylvestre Ledru
ac031dffa4 new release 0.0.5 2021-04-03 10:30:07 +02:00
Sylvestre Ledru
d3c6ce0b94 add an ugly script to publish the crates 2021-03-07 11:47:17 +01:00