8000 Merge pull request #1310 from stonebig/master · winpython/winpython@50a0db6 · GitHub
[go: up one dir, main page]

Skip to content

Commit 50a0db6

Browse files
authored
Merge pull request #1310 from stonebig/master
a less verbose --register and --unregister
2 parents 0db4d58 + 8990966 commit 50a0db6

File tree

4 files changed

+21
-12
lines changed

4 files changed

+21
-12
lines changed

winpython/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,6 @@
2828
OTHER DEALINGS IN THE SOFTWARE.
2929
"""
3030

31-
__version__ = '7.5.20240401'
31+
__version__ = '7.5.20240410'
3232
__license__ = __doc__
3333
__project_url__ = 'http://winpython.github.io/'

winpython/associate.py

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,12 @@ def _get_shortcut_data(target, current=True):
7070
return data
7171

7272

73-
def register(target, current=True):
73+
def register(target, current=True, verbose=True):
7474
"""Register a Python distribution in Windows registry"""
7575
root = winreg.HKEY_CURRENT_USER if current else winreg.HKEY_LOCAL_MACHINE
7676

77+
# Creating Registry entries
78+
print(f'Creating WinPython registry entries for {target}')
7779
# Extensions
7880
winreg.SetValueEx(
7981
winreg.CreateKey(root, KEY_C % ".py"),
@@ -333,13 +335,15 @@ def register(target, current=True):
333335
)
334336

335337
# Create start menu entries for all WinPython launchers
338+
print(f'Creating WinPython menu for all icons in {target}')
336339
for path, desc, fname in _get_shortcut_data(target, current=current):
337-
utils.create_shortcut(path, desc, fname)
340+
utils.create_shortcut(path, desc, fname, verbose=verbose)
338341

339342

340-
def unregister(target, current=True):
343+
def unregister(target, current=True, verbose=True):
341344
"""Unregister a Python distribution in Windows registry"""
342-
# Registry entries
345+
# Removing Registry entries
346+
print(f'Removing WinPython registry entries for {target}')
343347
root = winreg.HKEY_CURRENT_USER if current else winreg.HKEY_LOCAL_MACHINE
344348
short_version = utils.get_python_infos(target)[0]
345349
key_core = (KEY_S1 % short_version) + r"\%s"
@@ -391,15 +395,18 @@ def unregister(target, current=True):
391395
KEY_S,
392396
):
393397
try:
394-
print(key)
398+
if verbose:
399+
print(key)
395400
winreg.DeleteKey(root, key)
396401
except WindowsError:
397402
rootkey = "HKEY_CURRENT_USER" if current else "HKEY_LOCAL_MACHINE"
398-
8000 print(
403+
if verbose:
404+
print(
399405
r"Unable to remove %s\%s" % (rootkey, key),
400406
file=sys.stderr,
401407
)
402408
# remove menu shortcuts
409+
print(f'Removing WinPython menu for all icons in {target}')
403410
_remove_start_menu_folder(target, current=current)
404411

405412
#for path, desc, fname in _get_shortcut_data(target, current=current):

winpython/utils.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,7 @@ def get_winpython_start_menu_folder(current=True):
214214
return str(Path(folder) / 'WinPython')
215215

216216
def remove_winpython_start_menu_folder(current=True):
217-
"""Create WinPython Start menu folder -- remove it if it already exists"""
217+
"""Remove WinPython Start menu folder -- remove it if it already exists"""
218218
path = get_winpython_start_menu_folder(current=current)
219219
if Path(path).is_dir():
220220
try:
@@ -249,6 +249,7 @@ def create_shortcut(
249249
workdir="",
250250
iconpath="",
251251
iconindex=0,
252+
verbose=True,
252253
):
253254
"""Create Windows shortcut (.lnk file)"""
254255
import pythoncom
@@ -272,7 +273,8 @@ def create_shortcut(
272273
ipf = ilink.QueryInterface(pythoncom.IID_IPersistFile)
273274
if not filename.endswith('.lnk'):
274275
filename += '.lnk'
275-
print(f'ipf.save *{filename}*')
276+
if verbose:
277+
print(f'create menu *{filename}*')
276278
try:
277279
ipf.Save(filename, 0)
278280
except:
@@ -386,7 +388,7 @@ def python_query(cmd, path):
386388
"""Execute Python command using the Python interpreter located in *path*"""
387389
the_exe = get_python_executable(path)
388390
# debug2021-09-12
389-
print(f'"{the_exe}" -c "{cmd}"', ' * ', path)
391+
# print(f'"{the_exe}" -c "{cmd}"', ' * ', path)
390392
return exec_shell_cmd(f'"{the_exe}" -c "{cmd}"', path).splitlines()[0]
391393

392394
def python_execmodule(cmd, path):

winpython/wppm.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -894,7 +894,7 @@ def main(test=False):
894894
if theAnswer == "Y":
895895
from winpython import associate
896896

897-
associate.register(dist.target)
897+
associate.register(dist.target, verbose=args.verbose)
898898
sys.exit()
899899
if args.unregisterWinPython:
900900
print(unregisterWinPythonHelp)
@@ -908,7 +908,7 @@ def main(test=False):
908908
if theAnswer == "Y":
909909
from winpython import associate
910910

911-
associate.unregister(dist.target)
911+
associate.unregister(dist.target, verbose=args.verbose)
912912
sys.exit()
913913
elif not args.install and not args.uninstall:
914914
args.install = True

0 commit comments

Comments
 (0)
0