[Piuparts-devel] [Git][debian/piuparts][master] 6 commits: Start 1.5.1 development. Use `gbp dch --since=1.5.0 --multimaint-merge` to...

Nicolas Dandrimont (@olasd) gitlab at salsa.debian.org
Fri Nov 15 15:26:21 GMT 2024



Nicolas Dandrimont pushed to branch master at Debian / piuparts


Commits:
5ef7f91c by Nicolas Dandrimont at 2024-11-14T12:46:09+01:00
Start 1.5.1 development. Use `gbp dch --since=1.5.0 --multimaint-merge` to generate a changelog for this release.

- - - - -
df3833c8 by Jochen Sprickerhof at 2024-11-14T15:51:58+01:00
Allow running without PATH being set

- - - - -
36671787 by Nicolas Dandrimont at 2024-11-14T15:14:04+00:00
Merge branch 'fix_path' into 'develop'

Allow running without PATH being set

See merge request debian/piuparts!71
- - - - -
ec5e7f09 by Nicolas Dandrimont at 2024-11-15T11:34:12+01:00
Handle situations where /dev/tty exists but is not connected

Situations can arise where /dev/tty is a valid device, but opening it
raises:

OSError: [Errno 6] No such device or address: '/var/lib/docker/overlay2/.../merged/dev/tty'

In that situation, the device is valid and it's safe to ignore the error.

- - - - -
9d05d02e by Nicolas Dandrimont at 2024-11-15T11:35:46+01:00
Don't crash when requesting chroot removal before it's initialized

- - - - -
82912582 by Nicolas Dandrimont at 2024-11-15T15:47:39+01:00
Prepare 1.5.1 release

- - - - -


2 changed files:

- debian/changelog
- piuparts.py


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,14 @@
+piuparts (1.5.1) unstable; urgency=medium
+
+  [ Nicolas Dandrimont ]
+  * Handle situations where /dev/tty exists but is not connected
+  * Don't crash when requesting chroot removal before it's initialized
+
+  [ Jochen Sprickerhof ]
+  * Allow running without PATH being set
+
+ -- Nicolas Dandrimont <olasd at debian.org>  Fri, 15 Nov 2024 15:47:13 +0100
+
 piuparts (1.5.0) unstable; urgency=medium
 
   [ Helmut Grohne ]


=====================================
piuparts.py
=====================================
@@ -845,6 +845,9 @@ class Chroot:
 
     def remove(self):
         """Remove a chroot and all its contents."""
+        if not self.name:
+            return
+
         if not settings.keep_env and os.path.exists(self.name):
             self.terminate_running_processes()
             self.unmount_all()
@@ -1251,6 +1254,12 @@ class Chroot:
                 except PermissionError:
                     # Could not open the device, the filesystem is probably nodev.
                     isdevice = False
+                except OSError as e:
+                    if e.errno == 6:
+                        # Sometimes /dev/tty exists but is not connected. This is still a valid device.
+                        pass
+                    else:
+                        raise
             if not isdevice:
                 self.mount(devname, devname, opts=["bind"])
 
@@ -3630,8 +3639,9 @@ def main():
 
     # check if user has root privileges
     if os.getuid():
-        path_env = os.environ["PATH"].split(":")
-        for d in ("/usr/sbin", "/sbin"):
+        default_path_entries = ("/usr/sbin", "/usr/bin", "/sbin", "/bin")
+        path_env = os.environ.get("PATH", ":".join(default_path_entries)).split(":")
+        for d in default_path_entries:
             if d not in path_env:
                 path_env.append(d)
         os.environ["PATH"] = ":".join(path_env)



View it on GitLab: https://salsa.debian.org/debian/piuparts/-/compare/f58a0290b668b002ac607a98685297b90bde7c95...82912582ddb724d11766e945b23fc0159853befe

-- 
View it on GitLab: https://salsa.debian.org/debian/piuparts/-/compare/f58a0290b668b002ac607a98685297b90bde7c95...82912582ddb724d11766e945b23fc0159853befe
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/piuparts-devel/attachments/20241115/956c27a3/attachment-0001.htm>


More information about the Piuparts-devel mailing list