pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/py-jupyter_client



Module Name:    pkgsrc
Committed By:   gutteridge
Date:           Sat Oct  9 23:20:24 UTC 2021

Modified Files:
        pkgsrc/devel/py-jupyter_client: Makefile distinfo
Added Files:
        pkgsrc/devel/py-jupyter_client/patches:
            patch-jupyter__client_connect.py

Log Message:
py-jupyter_client: set sticky bit only on the directory

Addresses PR pkg/56437 from Chavdar Ivanov, who also supplied the patch
that has already been integrated upstream (but not yet in a release
branch).


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 pkgsrc/devel/py-jupyter_client/Makefile
cvs rdiff -u -r1.16 -r1.17 pkgsrc/devel/py-jupyter_client/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/devel/py-jupyter_client/patches/patch-jupyter__client_connect.py

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/py-jupyter_client/Makefile
diff -u pkgsrc/devel/py-jupyter_client/Makefile:1.20 pkgsrc/devel/py-jupyter_client/Makefile:1.21
--- pkgsrc/devel/py-jupyter_client/Makefile:1.20        Tue Jun 29 09:23:30 2021
+++ pkgsrc/devel/py-jupyter_client/Makefile     Sat Oct  9 23:20:24 2021
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.20 2021/06/29 09:23:30 nia Exp $
+# $NetBSD: Makefile,v 1.21 2021/10/09 23:20:24 gutteridge Exp $
 
 DISTNAME=      jupyter_client-6.1.12
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
+PKGREVISION=   1
 CATEGORIES=    devel python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=j/jupyter_client/}
 

Index: pkgsrc/devel/py-jupyter_client/distinfo
diff -u pkgsrc/devel/py-jupyter_client/distinfo:1.16 pkgsrc/devel/py-jupyter_client/distinfo:1.17
--- pkgsrc/devel/py-jupyter_client/distinfo:1.16        Thu Oct  7 13:43:18 2021
+++ pkgsrc/devel/py-jupyter_client/distinfo     Sat Oct  9 23:20:24 2021
@@ -1,5 +1,6 @@
-$NetBSD: distinfo,v 1.16 2021/10/07 13:43:18 nia Exp $
+$NetBSD: distinfo,v 1.17 2021/10/09 23:20:24 gutteridge Exp $
 
 RMD160 (jupyter_client-6.1.12.tar.gz) = 1e2bf8a6a8ec37e0744a7d5cb85895224636b43e
 SHA512 (jupyter_client-6.1.12.tar.gz) = f31ff1a24b264c32d35d07491785e1d77935cdb463243e90e4aadcb0a093a074cdce75f01662591766588f39b146077639ca697f71157309dc92f12ae04d5cdd
 Size (jupyter_client-6.1.12.tar.gz) = 301499 bytes
+SHA1 (patch-jupyter__client_connect.py) = 0fd1aeeff32eb89d270324aada38f91d5decefb6

Added files:

Index: pkgsrc/devel/py-jupyter_client/patches/patch-jupyter__client_connect.py
diff -u /dev/null pkgsrc/devel/py-jupyter_client/patches/patch-jupyter__client_connect.py:1.1
--- /dev/null   Sat Oct  9 23:20:24 2021
+++ pkgsrc/devel/py-jupyter_client/patches/patch-jupyter__client_connect.py     Sat Oct  9 23:20:24 2021
@@ -0,0 +1,44 @@
+$NetBSD: patch-jupyter__client_connect.py,v 1.1 2021/10/09 23:20:24 gutteridge Exp $
+
+Set sticky bit only on the directory.
+https://github.com/jupyter/jupyter_client/pull/711/
+
+--- jupyter_client/connect.py.orig     2021-03-14 00:34:45.000000000 +0000
++++ jupyter_client/connect.py
+@@ -137,31 +137,20 @@ def write_connection_file(fname=None, sh
+         f.write(json.dumps(cfg, indent=2))
+ 
+     if hasattr(stat, 'S_ISVTX'):
+-        # set the sticky bit on the file and its parent directory
+-        # to avoid periodic cleanup
+-        paths = [fname]
++        # set the sticky bit on the parent directory of the file
++        # to ensure only owner can remove it
+         runtime_dir = os.path.dirname(fname)
+         if runtime_dir:
+-            paths.append(runtime_dir)
+-        for path in paths:
+-            permissions = os.stat(path).st_mode
++            permissions = os.stat(runtime_dir).st_mode
+             new_permissions = permissions | stat.S_ISVTX
+             if new_permissions != permissions:
+                 try:
+-                    os.chmod(path, new_permissions)
++                    os.chmod(runtime_dir, new_permissions)
+                 except OSError as e:
+-                    if e.errno == errno.EPERM and path == runtime_dir:
++                    if e.errno == errno.EPERM:
+                         # suppress permission errors setting sticky bit on runtime_dir,
+                         # which we may not own.
+                         pass
+-                    else:
+-                        # failed to set sticky bit, probably not a big deal
+-                        warnings.warn(
+-                            "Failed to set sticky bit on %r: %s"
+-                            "\nProbably not a big deal, but runtime files may be cleaned up periodically." % (path, e),
+-                            RuntimeWarning,
+-                        )
+-
+     return fname, cfg
+ 
+ 



Home | Main Index | Thread Index | Old Index