Bug#1109975: unblock: debianutils/5.23.1 (pre-approval)

2025-07-31 Thread Niels Thykier

Niels Thykier:

[...]

Thanks for the approval. I uploaded the package a few hours ago and has 
been built on most architectures, so I am removing the moreinfo tag now.


Best regards,
Niels



All builds + autogpkgtests are now green. As I read the excuses, an 
unblock + aging is all is left for the migration.


Best regards,
Niels



OpenPGP_signature.asc
Description: OpenPGP digital signature


Bug#1109975: unblock: debianutils/5.23.1 (pre-approval)

2025-07-30 Thread Niels Thykier

Control: tags -1 -moreinfo

Sebastian Ramacher:

Control: tags -1 moreinfo confirmed

On 2025-07-27 13:28:27 +0200, Niels Thykier wrote:

Niels Thykier:

Package: release.debian.org
Severity: normal
X-Debbugs-Cc: [email protected], [email protected]
Control: affects -1 + src:debianutils
User: [email protected]
Usertags: unblock

Please permit the upload of and provide an unblock for the package
debianutils.



Correction to this unblock request. At request of Bastian Blank (who
requested the change originally for the Linux team), I have removed the
message entirely.

In his view, the standard error message would only have been fine if none of
the directories existed and we emitted for each missing directory. Removing
the message entirely was the simpler of the two options, so I went with
that. Updated diff attached.


Assuming this can be uploaded very soon, please go ahead and remove the
moreinfo tag once the upload is in unstable.

Cheers

[...]


Thanks for the approval. I uploaded the package a few hours ago and has 
been built on most architectures, so I am removing the moreinfo tag now.


Best regards,
Niels



Bug#1109975: unblock: debianutils/5.23.1 (pre-approval)

2025-07-30 Thread Sebastian Ramacher
Control: tags -1 moreinfo confirmed

On 2025-07-27 13:28:27 +0200, Niels Thykier wrote:
> Niels Thykier:
> > Package: release.debian.org
> > Severity: normal
> > X-Debbugs-Cc: [email protected], [email protected]
> > Control: affects -1 + src:debianutils
> > User: [email protected]
> > Usertags: unblock
> > 
> > Please permit the upload of and provide an unblock for the package
> > debianutils.
> > 
> 
> Correction to this unblock request. At request of Bastian Blank (who
> requested the change originally for the Linux team), I have removed the
> message entirely.
> 
> In his view, the standard error message would only have been fine if none of
> the directories existed and we emitted for each missing directory. Removing
> the message entirely was the simpler of the two options, so I went with
> that. Updated diff attached.

Assuming this can be uploaded very soon, please go ahead and remove the
moreinfo tag once the upload is in unstable.

Cheers

> 
> > [ Reason ]
> > In 5.22 (April), `run-parts --list` was changed to no longer fail when
> > given non-existing directories per #1102512 to support the UAPI
> > Configuration Files Spec.
> > 
> > The code replaced a hard error with a warning for this case.
> > Unfortunately, the warning is emitted to `stdout` interleaved with the
> > directories making scripting usage hard.
> > 
> > [ Impact ]
> > For script consumers of `run-parts --list`, then #1102512 might as well
> > not be fixed since it will be difficult to use the change in practice.
> > 
> > However, existing stable users will not be relying on this feature yet
> > anyhow (the change is making `run-parts` more permissive).
> > 
> > For other consumers of `debianutils`, there will be no impact.
> > 
> > [ Tests ]
> > A test case was added to ensure non-existing directories with `run-parts
> > --list` does not emit any output. See `debian/tests/run-parts.test`.
> > 
> > [ Risks ]
> > We believe the risks to be low but it is a change to an `Essential: yes`
> > package. The code change itself is trivial and tested.
> > 
> > [ Checklist ]
> >    [X] all changes are documented in the d/changelog
> >    [X] I reviewed all changes and I approve them
> >    [X] attach debdiff against the package in testing. Note the diff is a
> >    `git diff`, but I will be using `tag2upload`.
> > 
> > [ Other info ]
> > (Anything else the release team should know.)
> > 
> > unblock debianutils/5.23.1
> 

> diff --git a/debian/changelog b/debian/changelog
> index 9587aeb..ba141c6 100644
> --- a/debian/changelog
> +++ b/debian/changelog
> @@ -1,3 +1,12 @@
> +debianutils (5.23.2) unstable; urgency=medium
> +
> +  * run-parts: Remove warning on non-existing
> +directory with `--list`. It was emitted
> +to `stdout` and even on `stderr` it would
> +cause issues. (Closes: #1109705)
> +
> + -- Niels Thykier   Sun, 27 Jul 2025 11:01:22 +
> +
>  debianutils (5.23.1) unstable; urgency=medium
>  
>* Re-release to fix a few mistakes in 5.23.
> diff --git a/debian/tests/run-parts.test b/debian/tests/run-parts.test
> index 5574526..87d962c 100755
> --- a/debian/tests/run-parts.test
> +++ b/debian/tests/run-parts.test
> @@ -29,6 +29,12 @@ END
>  chmod 755 "${AUTOPKGTEST_TMP}/Run-parts/executable1"
>  cp --archive "${AUTOPKGTEST_TMP}/Run-parts/executable1" 
> "${AUTOPKGTEST_TMP}/Run-parts/executable2"
>  
> +list_missing_path=$("$RUN_PARTS" --list "${AUTOPKGTEST_TMP}/nonexisting" 
> 2>/dev/null)
> +if [ -n "${list_missing_path}" ]; then
> +echo "Failure! 'run-parts --list .../nonexisting' should return no 
> matches, got: ${list_missing_path}" >&2
> +exit 1
> +fi
> +
>  list=$("$RUN_PARTS" --list "${AUTOPKGTEST_TMP}/Run-parts")
>  echo "$list"
>  test=$("$RUN_PARTS" --test "${AUTOPKGTEST_TMP}/Run-parts")
> @@ -74,4 +80,4 @@ chmod 755 "${AUTOPKGTEST_TMP}/Run-parts2/executable1"
>  "$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts2" 
> "${AUTOPKGTEST_TMP}/Run-parts" 2>&1
>  
>  # Run-parts3 does not exist, so it is skipped and processing continues
> -"$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts3" 
> "${AUTOPKGTEST_TMP}/Run-parts2" 2>&1
> \ No newline at end of file
> +"$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts3" 
> "${AUTOPKGTEST_TMP}/Run-parts2" 2>&1
> diff --git a/run-parts.c b/run-parts.c
> index 9fce509..294c492 100644
> --- a/run-parts.c
> +++ b/run-parts.c
> @@ -506,7 +506,6 @@ void run_parts(char **dirnames)
>for (int i = 0; dirnames[i] != NULL; i++) {
>  DIR *dirfd = opendir(dirnames[i]);
>  if (!dirfd) {
> -  printf("run-parts: Skipping \"%s\"; failed to opendir: %s\n", 
> dirnames[i], strerror(errno));
>continue;
>  }
>  struct dirent *dp;





-- 
Sebastian Ramacher



Bug#1109975: unblock: debianutils/5.23.1 (pre-approval)

2025-07-27 Thread Niels Thykier

Niels Thykier:

Package: release.debian.org
Severity: normal
X-Debbugs-Cc: [email protected], [email protected]
Control: affects -1 + src:debianutils
User: [email protected]
Usertags: unblock

Please permit the upload of and provide an unblock for the package 
debianutils.




Correction to this unblock request. At request of Bastian Blank (who 
requested the change originally for the Linux team), I have removed the 
message entirely.


In his view, the standard error message would only have been fine if 
none of the directories existed and we emitted for each missing 
directory. Removing the message entirely was the simpler of the two 
options, so I went with that. Updated diff attached.



[ Reason ]
In 5.22 (April), `run-parts --list` was changed to no longer fail when 
given non-existing directories per #1102512 to support the UAPI 
Configuration Files Spec.


The code replaced a hard error with a warning for this case. 
Unfortunately, the warning is emitted to `stdout` interleaved with the 
directories making scripting usage hard.


[ Impact ]
For script consumers of `run-parts --list`, then #1102512 might as well 
not be fixed since it will be difficult to use the change in practice.


However, existing stable users will not be relying on this feature yet 
anyhow (the change is making `run-parts` more permissive).


For other consumers of `debianutils`, there will be no impact.

[ Tests ]
A test case was added to ensure non-existing directories with `run-parts 
--list` does not emit any output. See `debian/tests/run-parts.test`.


[ Risks ]
We believe the risks to be low but it is a change to an `Essential: yes` 
package. The code change itself is trivial and tested.


[ Checklist ]
   [X] all changes are documented in the d/changelog
   [X] I reviewed all changes and I approve them
   [X] attach debdiff against the package in testing. Note the diff is a
   `git diff`, but I will be using `tag2upload`.

[ Other info ]
(Anything else the release team should know.)

unblock debianutils/5.23.1


diff --git a/debian/changelog b/debian/changelog
index 9587aeb..ba141c6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+debianutils (5.23.2) unstable; urgency=medium
+
+  * run-parts: Remove warning on non-existing
+directory with `--list`. It was emitted
+to `stdout` and even on `stderr` it would
+cause issues. (Closes: #1109705)
+
+ -- Niels Thykier   Sun, 27 Jul 2025 11:01:22 +
+
 debianutils (5.23.1) unstable; urgency=medium
 
   * Re-release to fix a few mistakes in 5.23.
diff --git a/debian/tests/run-parts.test b/debian/tests/run-parts.test
index 5574526..87d962c 100755
--- a/debian/tests/run-parts.test
+++ b/debian/tests/run-parts.test
@@ -29,6 +29,12 @@ END
 chmod 755 "${AUTOPKGTEST_TMP}/Run-parts/executable1"
 cp --archive "${AUTOPKGTEST_TMP}/Run-parts/executable1" 
"${AUTOPKGTEST_TMP}/Run-parts/executable2"
 
+list_missing_path=$("$RUN_PARTS" --list "${AUTOPKGTEST_TMP}/nonexisting" 
2>/dev/null)
+if [ -n "${list_missing_path}" ]; then
+echo "Failure! 'run-parts --list .../nonexisting' should return no 
matches, got: ${list_missing_path}" >&2
+exit 1
+fi
+
 list=$("$RUN_PARTS" --list "${AUTOPKGTEST_TMP}/Run-parts")
 echo "$list"
 test=$("$RUN_PARTS" --test "${AUTOPKGTEST_TMP}/Run-parts")
@@ -74,4 +80,4 @@ chmod 755 "${AUTOPKGTEST_TMP}/Run-parts2/executable1"
 "$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts2" 
"${AUTOPKGTEST_TMP}/Run-parts" 2>&1
 
 # Run-parts3 does not exist, so it is skipped and processing continues
-"$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts3" 
"${AUTOPKGTEST_TMP}/Run-parts2" 2>&1
\ No newline at end of file
+"$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts3" 
"${AUTOPKGTEST_TMP}/Run-parts2" 2>&1
diff --git a/run-parts.c b/run-parts.c
index 9fce509..294c492 100644
--- a/run-parts.c
+++ b/run-parts.c
@@ -506,7 +506,6 @@ void run_parts(char **dirnames)
   for (int i = 0; dirnames[i] != NULL; i++) {
 DIR *dirfd = opendir(dirnames[i]);
 if (!dirfd) {
-  printf("run-parts: Skipping \"%s\"; failed to opendir: %s\n", 
dirnames[i], strerror(errno));
   continue;
 }
 struct dirent *dp;


OpenPGP_signature.asc
Description: OpenPGP digital signature


Bug#1109975: unblock: debianutils/5.23.1 (pre-approval)

2025-07-27 Thread Bastian Blank
On Sun, Jul 27, 2025 at 01:09:38PM +0200, Niels Thykier wrote:
> Please permit the upload of and provide an unblock for the package
> debianutils.

Neither the original change (which differed from what I proposed), nor
the current variant really solve the problem that was intended.  So both
are unusable for us.

A warning might be appropriate if nothing specified exists.

Bastian

-- 
Most legends have their basis in facts.
-- Kirk, "And The Children Shall Lead", stardate 5029.5



Bug#1109975: unblock: debianutils/5.23.1 (pre-approval)

2025-07-27 Thread Niels Thykier

Package: release.debian.org
Severity: normal
X-Debbugs-Cc: [email protected], [email protected]
Control: affects -1 + src:debianutils
User: [email protected]
Usertags: unblock

Please permit the upload of and provide an unblock for the package 
debianutils.


[ Reason ]
In 5.22 (April), `run-parts --list` was changed to no longer fail when 
given non-existing directories per #1102512 to support the UAPI 
Configuration Files Spec.


The code replaced a hard error with a warning for this case. 
Unfortunately, the warning is emitted to `stdout` interleaved with the 
directories making scripting usage hard.


[ Impact ]
For script consumers of `run-parts --list`, then #1102512 might as well 
not be fixed since it will be difficult to use the change in practice.


However, existing stable users will not be relying on this feature yet 
anyhow (the change is making `run-parts` more permissive).


For other consumers of `debianutils`, there will be no impact.

[ Tests ]
A test case was added to ensure non-existing directories with `run-parts 
--list` does not emit any output. See `debian/tests/run-parts.test`.


[ Risks ]
We believe the risks to be low but it is a change to an `Essential: yes` 
package. The code change itself is trivial and tested.


[ Checklist ]
  [X] all changes are documented in the d/changelog
  [X] I reviewed all changes and I approve them
  [X] attach debdiff against the package in testing. Note the diff is a
  `git diff`, but I will be using `tag2upload`.

[ Other info ]
(Anything else the release team should know.)

unblock debianutils/5.23.1
diff --git a/debian/changelog b/debian/changelog
index 9587aeb..33cbe6b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+debianutils (5.23.2) unstable; urgency=medium
+
+  * run-parts: Use `stderr` for error message on non-existing
+directory with `--list`. (Closes: #1109705)
+
+ -- Niels Thykier   Sun, 27 Jul 2025 11:01:22 +
+
 debianutils (5.23.1) unstable; urgency=medium
 
   * Re-release to fix a few mistakes in 5.23.
diff --git a/debian/tests/run-parts.test b/debian/tests/run-parts.test
index 5574526..87d962c 100755
--- a/debian/tests/run-parts.test
+++ b/debian/tests/run-parts.test
@@ -29,6 +29,12 @@ END
 chmod 755 "${AUTOPKGTEST_TMP}/Run-parts/executable1"
 cp --archive "${AUTOPKGTEST_TMP}/Run-parts/executable1" 
"${AUTOPKGTEST_TMP}/Run-parts/executable2"
 
+list_missing_path=$("$RUN_PARTS" --list "${AUTOPKGTEST_TMP}/nonexisting" 
2>/dev/null)
+if [ -n "${list_missing_path}" ]; then
+echo "Failure! 'run-parts --list .../nonexisting' should return no 
matches, got: ${list_missing_path}" >&2
+exit 1
+fi
+
 list=$("$RUN_PARTS" --list "${AUTOPKGTEST_TMP}/Run-parts")
 echo "$list"
 test=$("$RUN_PARTS" --test "${AUTOPKGTEST_TMP}/Run-parts")
@@ -74,4 +80,4 @@ chmod 755 "${AUTOPKGTEST_TMP}/Run-parts2/executable1"
 "$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts2" 
"${AUTOPKGTEST_TMP}/Run-parts" 2>&1
 
 # Run-parts3 does not exist, so it is skipped and processing continues
-"$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts3" 
"${AUTOPKGTEST_TMP}/Run-parts2" 2>&1
\ No newline at end of file
+"$RUN_PARTS" -v --exit-on-error "${AUTOPKGTEST_TMP}/Run-parts3" 
"${AUTOPKGTEST_TMP}/Run-parts2" 2>&1
diff --git a/run-parts.c b/run-parts.c
index 9fce509..f96b3c8 100644
--- a/run-parts.c
+++ b/run-parts.c
@@ -506,7 +506,7 @@ void run_parts(char **dirnames)
   for (int i = 0; dirnames[i] != NULL; i++) {
 DIR *dirfd = opendir(dirnames[i]);
 if (!dirfd) {
-  printf("run-parts: Skipping \"%s\"; failed to opendir: %s\n", 
dirnames[i], strerror(errno));
+  fprintf(stderr, "run-parts: Skipping \"%s\"; failed to opendir: %s\n", 
dirnames[i], strerror(errno));
   continue;
 }
 struct dirent *dp;


OpenPGP_signature.asc
Description: OpenPGP digital signature