Thu, 05 Oct 2023 10:06:27 +0200
Corrected 'pyproject.toml'.
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | #!/usr/bin/env python3 |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | # -*- coding: utf-8 -*- |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | |
9653
e67609152c5e
Updated copyright for 2023.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9576
diff
changeset
|
4 | # Copyright (c) 2016 - 2023 Detlev Offenbach <detlev@die-offenbachs.de> |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | # |
7960
e8fc383322f7
Harmonized some user visible strings and changed the term 'eric6' to the more generic 'eric'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
6 | # This is the install script for the eric debug client. It may be used |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | # to just install the debug clients for remote debugging. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | # |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | """ |
7960
e8fc383322f7
Harmonized some user visible strings and changed the term 'eric6' to the more generic 'eric'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
11 | Installation script for the eric debug clients. |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | |
8501
7b5f10581c35
Removed the support for the deprecated distutils package.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8314
diff
changeset
|
14 | import compileall |
7b5f10581c35
Removed the support for the deprecated distutils package.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8314
diff
changeset
|
15 | import contextlib |
7b5f10581c35
Removed the support for the deprecated distutils package.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8314
diff
changeset
|
16 | import fnmatch |
9482
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9328
diff
changeset
|
17 | import getopt |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
18 | import importlib |
7639
422fd05e9c91
Removed some more Python2 related code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7637
diff
changeset
|
19 | import io |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
20 | import json |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | import os |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | import re |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | import shutil |
10170
6cf1ee737d8f
Corrected some more code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10119
diff
changeset
|
24 | import subprocess # secok |
8501
7b5f10581c35
Removed the support for the deprecated distutils package.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8314
diff
changeset
|
25 | import sys |
9482
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9328
diff
changeset
|
26 | import sysconfig |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | # Define the globals. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | progName = None |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | currDir = os.getcwd() |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | modDir = None |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | pyModDir = None |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | distDir = None |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
34 | installPackage = "eric7" |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | doCleanup = True |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | doCompile = True |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | sourceDir = "eric" |
9209
b99e7fd55fd3
Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8918
diff
changeset
|
38 | eric7SourceDir = "" |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | def exit(rcode=0): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | Exit the install script. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
44 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | @param rcode result code to report back (integer) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | global currDir |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
48 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | if sys.platform.startswith("win"): |
9328
49a0a9cb2505
Fixed some code style issues detected by the new checks.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9221
diff
changeset
|
50 | with contextlib.suppress(EOFError): |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
51 | input("Press enter to continue...") # secok |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
52 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | os.chdir(currDir) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
54 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | sys.exit(rcode) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | def usage(rcode=2): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | Display a usage message and exit. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | @param rcode the return code passed back to the calling process. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | global progName, modDir, distDir |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | print() |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | print("Usage:") |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | if sys.platform == "darwin": |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | print(" {0} [-chz] [-d dir] [-i dir]".format(progName)) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | elif sys.platform.startswith("win"): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | print(" {0} [-chz] [-d dir]".format(progName)) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | else: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | print(" {0} [-chz][-d dir] [-i dir]".format(progName)) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | print("where:") |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | print(" -h, --help display this help message") |
7960
e8fc383322f7
Harmonized some user visible strings and changed the term 'eric6' to the more generic 'eric'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
76 | print(" -d dir where eric debug client files will be installed") |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | print(" (default: {0})".format(modDir)) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | if not sys.platform.startswith("win"): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | print(" -i dir temporary install prefix") |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | print(" (default: {0})".format(distDir)) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | print(" -c don't cleanup old installation first") |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | print(" -z don't compile the installed python files") |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | exit(rcode) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | def initGlobals(): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | Module function to set the values of globals that need more than a |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | simple assignment. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
92 | global modDir, pyModDir |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
93 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
94 | modDir = sysconfig.get_path("platlib") |
10091
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
95 | if not os.access(modDir, os.W_OK): |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
96 | # can't write to the standard path, use the 'user' path instead |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
97 | if sys.platform.startswith(("win", "cygwin")): |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
98 | scheme = "nt_user" |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
99 | elif sys.platform == "darwin": |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
100 | scheme = "osx_framework_user" |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
101 | else: |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
102 | scheme = "posix_user" |
ac6edcfe7831
Corrected the install and uninstall scripts to cope use the user site-packages if a global install without admin rights is done.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9694
diff
changeset
|
103 | modDir = sysconfig.get_path("platlib", scheme) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | pyModDir = modDir |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | |
5651
982465f8389c
Fixed a few code style issues related to the usage of mutable types for default arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5597
diff
changeset
|
107 | def copyTree(src, dst, filters, excludeDirs=None, excludePatterns=None): |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | Copy files of a directory tree. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
110 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | @param src name of the source directory |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | @param dst name of the destination directory |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | @param filters list of filter pattern determining the files to be copied |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | @param excludeDirs list of (sub)directories to exclude from copying |
7900
72b88fb20261
Corrected the use of '@keyparam' in the source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7894
diff
changeset
|
115 | @param excludePatterns list of filter pattern determining the files to |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | be skipped |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | """ |
5651
982465f8389c
Fixed a few code style issues related to the usage of mutable types for default arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5597
diff
changeset
|
118 | if excludeDirs is None: |
982465f8389c
Fixed a few code style issues related to the usage of mutable types for default arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5597
diff
changeset
|
119 | excludeDirs = [] |
982465f8389c
Fixed a few code style issues related to the usage of mutable types for default arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5597
diff
changeset
|
120 | if excludePatterns is None: |
982465f8389c
Fixed a few code style issues related to the usage of mutable types for default arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5597
diff
changeset
|
121 | excludePatterns = [] |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | try: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | names = os.listdir(src) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | except OSError: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | # ignore missing directories |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | return |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
127 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | for name in names: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | skipIt = False |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | for excludePattern in excludePatterns: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | if fnmatch.fnmatch(name, excludePattern): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | skipIt = True |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | break |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
134 | if not skipIt: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | srcname = os.path.join(src, name) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | dstname = os.path.join(dst, name) |
5597
3d88d53f8c2b
Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
137 | for fileFilter in filters: |
3d88d53f8c2b
Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
138 | if fnmatch.fnmatch(srcname, fileFilter): |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
139 | if not os.path.isdir(dst): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | os.makedirs(dst) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | shutil.copy2(srcname, dstname) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | os.chmod(dstname, 0o644) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | break |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | else: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | if os.path.isdir(srcname) and srcname not in excludeDirs: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
146 | copyTree(srcname, dstname, filters, excludePatterns=excludePatterns) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | def cleanupSource(dirName): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
150 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | Cleanup the sources directory to get rid of leftover files |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
152 | and directories. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
153 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | @param dirName name of the directory to prune (string) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | # step 1: delete the __pycache__ directory and all *.pyc files |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | if os.path.exists(os.path.join(dirName, "__pycache__")): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | shutil.rmtree(os.path.join(dirName, "__pycache__")) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
159 | for name in [f for f in os.listdir(dirName) if fnmatch.fnmatch(f, "*.pyc")]: |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | os.remove(os.path.join(dirName, name)) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
161 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | # step 2: descent into subdirectories and delete them if empty |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | for name in os.listdir(dirName): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | name = os.path.join(dirName, name) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
165 | if os.path.isdir(name): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
166 | cleanupSource(name) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
167 | if len(os.listdir(name)) == 0: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | os.rmdir(name) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
169 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
170 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
171 | def cleanUp(): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
173 | Uninstall the old eric debug client files. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | """ |
9209
b99e7fd55fd3
Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8918
diff
changeset
|
175 | global pyModDir, installPackage |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
176 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | try: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
178 | # Cleanup the install directories |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | dirname = os.path.join(pyModDir, installPackage) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
180 | if os.path.exists(dirname): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | shutil.rmtree(dirname, True) |
7836
2f0d208b8137
Changed code to not use the OSError aliases (IOError, EnvironmentError, socket.error and select.error) anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7639
diff
changeset
|
182 | except OSError as msg: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
183 | sys.stderr.write("Error: {0}\nTry install with admin rights.\n".format(msg)) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | exit(7) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
187 | def shutilCopy(src, dst, perm=0o644): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
188 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | Wrapper function around shutil.copy() to ensure the permissions. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
190 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
191 | @param src source file name (string) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | @param dst destination file name or directory name (string) |
7900
72b88fb20261
Corrected the use of '@keyparam' in the source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7894
diff
changeset
|
193 | @param perm permissions to be set (integer) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
194 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
195 | shutil.copy(src, dst) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
196 | if os.path.isdir(dst): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | dst = os.path.join(dst, os.path.basename(src)) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | os.chmod(dst, perm) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | def installEricDebugClients(): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
203 | Actually perform the installation steps. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
204 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
205 | @return result code (integer) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | global distDir, doCleanup, sourceDir, modDir |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
208 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
209 | # set install prefix, if not None |
8260
2161475d9639
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8243
diff
changeset
|
210 | targetDir = ( |
2161475d9639
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8243
diff
changeset
|
211 | os.path.normpath(os.path.join(distDir, installPackage)) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
212 | if distDir |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
213 | else os.path.join(modDir, installPackage) |
8260
2161475d9639
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8243
diff
changeset
|
214 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
215 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
216 | try: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | # Install the files |
7960
e8fc383322f7
Harmonized some user visible strings and changed the term 'eric6' to the more generic 'eric'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
218 | # copy the various parts of eric debug clients |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
219 | copyTree( |
9209
b99e7fd55fd3
Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8918
diff
changeset
|
220 | os.path.join(eric7SourceDir, "DebugClients"), |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
221 | os.path.join(targetDir, "DebugClients"), |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
222 | ["*.py", "*.pyc", "*.pyo", "*.pyw"], |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
223 | excludePatterns=["eric7config.py*"], |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
224 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
225 | |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
226 | # copy the top level package file |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
227 | shutilCopy(os.path.join(eric7SourceDir, "__init__.py"), targetDir) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
228 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | # copy the license file |
9674
43dd357b3bff
Modified the pyproject.toml file to include a reference to the license file and changed its extension to be .txt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
230 | shutilCopy(os.path.join(sourceDir, "docs", "LICENSE.txt"), targetDir) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
231 | |
7836
2f0d208b8137
Changed code to not use the OSError aliases (IOError, EnvironmentError, socket.error and select.error) anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7639
diff
changeset
|
232 | except OSError as msg: |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
233 | sys.stderr.write("\nError: {0}\nTry install with admin rights.\n".format(msg)) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
234 | return 7 |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
235 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | return 0 |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
239 | def pipInstall(packageName, message, force=True): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
240 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
241 | Install the given package via pip. |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
242 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
243 | @param packageName name of the package to be installed |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
244 | @type str |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
245 | @param message message to be shown to the user |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
246 | @type str |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
247 | @param force flag indicating to perform the installation |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
248 | without asking the user |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
249 | @type bool |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
250 | @return flag indicating a successful installation |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
251 | @rtype bool |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
252 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
253 | ok = False |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
254 | if force: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
255 | answer = "y" |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
256 | else: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
257 | print( |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
258 | "{0}\nShall '{1}' be installed using pip? (Y/n)".format( |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
259 | message, packageName |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
260 | ), |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
261 | end=" ", |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
262 | ) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
263 | answer = input() # secok |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
264 | if answer in ("", "Y", "y"): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
265 | exitCode = subprocess.run( # secok |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
266 | [ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
267 | sys.executable, |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
268 | "-m", |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
269 | "pip", |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
270 | "install", |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
271 | "--prefer-binary", |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
272 | "--upgrade", |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
273 | packageName, |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
274 | ] |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
275 | ).returncode |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
276 | ok = exitCode == 0 |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
277 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
278 | return ok |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
279 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
280 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
281 | def isPipOutdated(): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
282 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
283 | Check, if pip is outdated. |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
284 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
285 | @return flag indicating an outdated pip |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
286 | @rtype bool |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
287 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
288 | try: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
289 | pipOut = ( |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
290 | subprocess.run( # secok |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
291 | [sys.executable, "-m", "pip", "list", "--outdated", "--format=json"], |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
292 | check=True, |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
293 | capture_output=True, |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
294 | text=True, |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
295 | ) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
296 | .stdout.strip() |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
297 | .splitlines()[0] |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
298 | ) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
299 | # only the first line contains the JSON data |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
300 | except (OSError, subprocess.CalledProcessError): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
301 | pipOut = "[]" # default empty list |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
302 | try: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
303 | jsonList = json.loads(pipOut) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
304 | except Exception: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
305 | jsonList = [] |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
306 | for package in jsonList: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
307 | if isinstance(package, dict) and package["name"] == "pip": |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
308 | print( |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
309 | "'pip' is outdated (installed {0}, available {1})".format( |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
310 | package["version"], package["latest_version"] |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
311 | ) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
312 | ) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
313 | return True |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
314 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
315 | return False |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
316 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
317 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
318 | def updatePip(): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
319 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
320 | Update the installed pip package. |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
321 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
322 | global yes2All |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
323 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
324 | if yes2All: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
325 | answer = "y" |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
326 | else: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
327 | print("Shall 'pip' be updated (recommended)? (Y/n)", end=" ") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
328 | answer = input() # secok |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
329 | if answer in ("", "Y", "y"): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
330 | subprocess.run( # secok |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
331 | [sys.executable, "-m", "pip", "install", "--upgrade", "pip"] |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
332 | ) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
333 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
334 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
335 | def doDependancyChecks(): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
336 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
337 | Perform some dependency checks. |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
338 | """ |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
339 | try: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
340 | isSudo = os.getuid() == 0 and sys.platform != "darwin" |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
341 | # disregard sudo installs on macOS |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
342 | except AttributeError: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
343 | isSudo = False |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
344 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
345 | print("Checking dependencies") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
346 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
347 | # update pip first even if we don't need to install anything |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
348 | if not isSudo and isPipOutdated(): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
349 | updatePip() |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
350 | print("\n") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
351 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
352 | # perform dependency checks |
10119
64147a7e6393
Removed support for Python 3.7 because that is EOL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10091
diff
changeset
|
353 | if sys.version_info < (3, 8, 0) or sys.version_info >= (3, 12, 0): |
64147a7e6393
Removed support for Python 3.7 because that is EOL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10091
diff
changeset
|
354 | print("Sorry, you must have Python 3.8.0 or higher, but less 3.12.0.") |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
355 | print("Yours is {0}.".format(".".join(str(v) for v in sys.version_info[:3]))) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
356 | exit(5) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
357 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
358 | requiredModulesList = { |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
359 | # key is pip project name |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
360 | # value is tuple of package name, pip install constraint |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
361 | "coverage": ("coverage", ">=6.5.0"), |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
362 | } |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
363 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
364 | # check required modules |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
365 | print("Required Packages") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
366 | print("-----------------") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
367 | requiredMissing = False |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
368 | for requiredPackage in sorted(requiredModulesList): |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
369 | try: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
370 | importlib.import_module(requiredModulesList[requiredPackage][0]) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
371 | print("Found", requiredPackage) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
372 | except ImportError as err: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
373 | if isSudo: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
374 | print("Required '{0}' could not be detected.".format(requiredPackage)) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
375 | requiredMissing = True |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
376 | else: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
377 | pipInstall( |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
378 | requiredPackage + requiredModulesList[requiredPackage][1], |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
379 | "Required '{0}' could not be detected.{1}".format( |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
380 | requiredPackage, "\nError: {0}".format(err) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
381 | ), |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
382 | force=True, |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
383 | ) |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
384 | if requiredMissing: |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
385 | print("Some required packages are missing and could not be installed.") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
386 | print("Install them manually.") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
387 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
388 | print() |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
389 | print("All dependencies ok.") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
390 | print() |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
391 | |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
392 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
393 | def main(argv): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
394 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
395 | The main function of the script. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
396 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
397 | @param argv the list of command line arguments. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
398 | """ |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
399 | # Parse the command line. |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | global progName, modDir, doCleanup, doCompile, distDir |
9209
b99e7fd55fd3
Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8918
diff
changeset
|
401 | global sourceDir, eric7SourceDir |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
402 | |
10119
64147a7e6393
Removed support for Python 3.7 because that is EOL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10091
diff
changeset
|
403 | if sys.version_info < (3, 8, 0) or sys.version_info >= (4, 0, 0): |
64147a7e6393
Removed support for Python 3.7 because that is EOL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10091
diff
changeset
|
404 | print("Sorry, the eric debugger requires Python 3.8 or better for running.") |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
405 | exit(5) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
406 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
407 | progName = os.path.basename(argv[0]) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
408 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | if os.path.dirname(argv[0]): |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
410 | os.chdir(os.path.dirname(argv[0])) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
411 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
412 | initGlobals() |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
413 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
414 | try: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
415 | if sys.platform.startswith("win"): |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
416 | optlist, args = getopt.getopt(argv[1:], "chzd:", ["help"]) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | elif sys.platform == "darwin": |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
418 | optlist, args = getopt.getopt(argv[1:], "chzd:i:", ["help"]) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
419 | else: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
420 | optlist, args = getopt.getopt(argv[1:], "chzd:i:", ["help"]) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
421 | except getopt.GetoptError as err: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
422 | print(err) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
423 | usage() |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
424 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
425 | for opt, arg in optlist: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
426 | if opt in ["-h", "--help"]: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
427 | usage(0) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
428 | elif opt == "-d": |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
429 | modDir = arg |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
430 | elif opt == "-i": |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
431 | distDir = os.path.normpath(arg) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
432 | elif opt == "-c": |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
433 | doCleanup = False |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
434 | elif opt == "-z": |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
435 | doCompile = False |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
436 | |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
437 | # check dependencies |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
438 | doDependancyChecks() |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
439 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
440 | installFromSource = not os.path.isdir(sourceDir) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
441 | if installFromSource: |
6959
dfb8a57de154
install-debugclients: fixed an issue causing cleanup to fail.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6942
diff
changeset
|
442 | sourceDir = os.path.abspath("..") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
443 | |
9209
b99e7fd55fd3
Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8918
diff
changeset
|
444 | eric7SourceDir = ( |
b99e7fd55fd3
Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8918
diff
changeset
|
445 | os.path.join(sourceDir, "eric7") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
446 | if os.path.exists(os.path.join(sourceDir, "eric7")) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
447 | else os.path.join(sourceDir, "src", "eric7") |
9209
b99e7fd55fd3
Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8918
diff
changeset
|
448 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
449 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
450 | # cleanup source if installing from source |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
451 | if installFromSource: |
9694
90a7081e2837
Updated the various scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9690
diff
changeset
|
452 | print("Cleaning up source ...", end="", flush=True) |
8314
e3642a6a1e71
Finished renaming eric6 to eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8260
diff
changeset
|
453 | cleanupSource(os.path.join(eric7SourceDir, "DebugClients")) |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
454 | print(" Done") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
455 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
456 | # cleanup old installation |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
457 | try: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
458 | if doCleanup: |
9694
90a7081e2837
Updated the various scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9690
diff
changeset
|
459 | print("Cleaning up old installation ...", end="", flush=True) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
460 | if distDir: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
461 | shutil.rmtree(distDir, True) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
462 | else: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
463 | cleanUp() |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
464 | print(" Done") |
7836
2f0d208b8137
Changed code to not use the OSError aliases (IOError, EnvironmentError, socket.error and select.error) anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7639
diff
changeset
|
465 | except OSError as msg: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
466 | sys.stderr.write("Error: {0}\nTry install as root.\n".format(msg)) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
467 | exit(7) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
468 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
469 | if doCompile: |
9694
90a7081e2837
Updated the various scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9690
diff
changeset
|
470 | print("Compiling source files ...", end="", flush=True) |
5179
5f56410e7624
Combined version of the Python debugger.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
5145
diff
changeset
|
471 | skipRe = re.compile(r"DebugClients[\\/]Python[\\/]") |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
472 | sys.stdout = io.StringIO() |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
473 | if distDir: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
474 | compileall.compile_dir( |
8314
e3642a6a1e71
Finished renaming eric6 to eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8260
diff
changeset
|
475 | os.path.join(eric7SourceDir, "DebugClients"), |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
476 | ddir=os.path.join(distDir, modDir, installPackage), |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
477 | rx=skipRe, |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
478 | quiet=True, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
479 | ) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
480 | else: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
481 | compileall.compile_dir( |
8314
e3642a6a1e71
Finished renaming eric6 to eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8260
diff
changeset
|
482 | os.path.join(eric7SourceDir, "DebugClients"), |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
483 | ddir=os.path.join(modDir, installPackage), |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
484 | rx=skipRe, |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
485 | quiet=True, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
486 | ) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
487 | sys.stdout = sys.__stdout__ |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
488 | print(" Done") |
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
489 | |
9694
90a7081e2837
Updated the various scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9690
diff
changeset
|
490 | print("Installing eric debug clients ...", end="", flush=True) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
491 | res = installEricDebugClients() |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
492 | print(" Done") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
493 | |
9690
2dc33116df50
Debug Client - Python
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9674
diff
changeset
|
494 | print("Installation complete.") |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
495 | print() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
496 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
497 | exit(res) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
498 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
499 | |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
500 | if __name__ == "__main__": |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
501 | try: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
502 | main(sys.argv) |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
503 | except SystemExit: |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
504 | raise |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
505 | except Exception: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
506 | print( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
507 | """An internal error occured. Please report all the output""" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
508 | """ of the program,\nincluding the following traceback, to""" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
509 | """ eric-bugs@eric-ide.python-projects.org.\n""" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
510 | ) |
5053
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
511 | raise |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
512 | |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
513 | # |
dac4920b55ad
Added scripts to just install the eric6 debug clients in an eric6DebugClients package
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
514 | # eflag: noqa = M801 |