PythonExtensionsCollection 0.16.0__tar.gz → 0.17.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. pythonextensionscollection-0.17.0/MANIFEST.in +1 -0
  2. pythonextensionscollection-0.17.0/PKG-INFO +173 -0
  3. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/Comparison/CComparison.py +1 -1
  4. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/Comparison/__init__.py +1 -1
  5. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/File/CFile.py +1 -1
  6. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/File/__init__.py +1 -1
  7. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/Folder/CFolder.py +1 -1
  8. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/Folder/__init__.py +1 -1
  9. pythonextensionscollection-0.17.0/PythonExtensionsCollection/PythonExtensionsCollection.pdf +0 -0
  10. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/String/CString.py +1 -1
  11. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/String/__init__.py +1 -1
  12. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/Utils/CUtils.py +13 -23
  13. pythonextensionscollection-0.17.0/PythonExtensionsCollection/Utils/__init__.py +13 -0
  14. pythonextensionscollection-0.17.0/PythonExtensionsCollection/__init__.py +13 -0
  15. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection/version.py +3 -4
  16. pythonextensionscollection-0.17.0/PythonExtensionsCollection.egg-info/PKG-INFO +173 -0
  17. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection.egg-info/SOURCES.txt +3 -1
  18. pythonextensionscollection-0.17.0/PythonExtensionsCollection.egg-info/requires.txt +10 -0
  19. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/README.rst +36 -19
  20. pythonextensionscollection-0.17.0/build_backend.py +97 -0
  21. pythonextensionscollection-0.17.0/pyproject.toml +126 -0
  22. PythonExtensionsCollection-0.16.0/PKG-INFO +0 -138
  23. PythonExtensionsCollection-0.16.0/PythonExtensionsCollection/PythonExtensionsCollection.pdf +0 -0
  24. PythonExtensionsCollection-0.16.0/PythonExtensionsCollection/Utils/__init__.py +0 -13
  25. PythonExtensionsCollection-0.16.0/PythonExtensionsCollection/__init__.py +0 -13
  26. PythonExtensionsCollection-0.16.0/PythonExtensionsCollection.egg-info/PKG-INFO +0 -138
  27. PythonExtensionsCollection-0.16.0/PythonExtensionsCollection.egg-info/requires.txt +0 -1
  28. PythonExtensionsCollection-0.16.0/setup.py +0 -225
  29. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/LICENSE +0 -0
  30. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection.egg-info/dependency_links.txt +0 -0
  31. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/PythonExtensionsCollection.egg-info/top_level.txt +0 -0
  32. {PythonExtensionsCollection-0.16.0 → pythonextensionscollection-0.17.0}/setup.cfg +0 -0
@@ -0,0 +1 @@
1
+ include build_backend.py
@@ -0,0 +1,173 @@
1
+ Metadata-Version: 2.4
2
+ Name: PythonExtensionsCollection
3
+ Version: 0.17.0
4
+ Summary: Additional Python functions
5
+ Author-email: Holger Queckenstedt <Holger.Queckenstedt@de.bosch.com>
6
+ License-Expression: Apache-2.0
7
+ Project-URL: Homepage, https://pypi.org/project/PythonExtensionsCollection/
8
+ Project-URL: Documentation, https://github.com/test-fullautomation/python-extensions-collection/blob/develop/PythonExtensionsCollection/PythonExtensionsCollection.pdf
9
+ Project-URL: Readme, https://github.com/test-fullautomation/python-extensions-collection/blob/develop/README.rst
10
+ Project-URL: Repository, https://github.com/test-fullautomation/python-extensions-collection
11
+ Project-URL: Issues, https://github.com/test-fullautomation/python-extensions-collection/issues
12
+ Keywords: string,file,folder,path
13
+ Classifier: Development Status :: 3 - Alpha
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Topic :: Software Development
18
+ Requires-Python: >=3.11
19
+ Description-Content-Type: text/x-rst
20
+ License-File: LICENSE
21
+ Requires-Dist: docutils>=0.22.4
22
+ Requires-Dist: colorama
23
+ Requires-Dist: GenPackageDoc
24
+ Provides-Extra: dev
25
+ Requires-Dist: pytest>=6.0; extra == "dev"
26
+ Requires-Dist: pytest-cov>=3.0; extra == "dev"
27
+ Provides-Extra: docs
28
+ Requires-Dist: docutils>=0.22.4; extra == "docs"
29
+ Dynamic: license-file
30
+
31
+ .. Copyright 2020-2026 Robert Bosch GmbH
32
+
33
+ .. Licensed under the Apache License, Version 2.0 (the "License");
34
+ you may not use this file except in compliance with the License.
35
+ You may obtain a copy of the License at
36
+
37
+ .. http://www.apache.org/licenses/LICENSE-2.0
38
+
39
+ .. Unless required by applicable law or agreed to in writing, software
40
+ distributed under the License is distributed on an "AS IS" BASIS,
41
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42
+ See the License for the specific language governing permissions and
43
+ limitations under the License.
44
+
45
+ Package Description
46
+ ===================
47
+
48
+ The **PythonExtensionsCollection** extends the functionality of Python by some useful functions
49
+ that are not available in Python immediately.
50
+
51
+ How to install
52
+ --------------
53
+
54
+ The **PythonExtensionsCollection** can be installed in two different ways.
55
+
56
+ 1. Installation via PyPi (recommended for users)
57
+
58
+ .. code::
59
+
60
+ pip install PythonExtensionsCollection
61
+
62
+ `PythonExtensionsCollection in PyPi <https://pypi.org/project/PythonExtensionsCollection/>`_
63
+
64
+ 2. Installation via GitHub (recommended for developers)
65
+
66
+ * Clone the **python-extensions-collection** repository to your machine.
67
+
68
+ .. code::
69
+
70
+ git clone https://github.com/test-fullautomation/python-extensions-collection.git
71
+
72
+ `PythonExtensionsCollection in GitHub <https://github.com/test-fullautomation/python-extensions-collection>`_
73
+
74
+ * Use the following command to install **PythonExtensionsCollection** (executed in repository main folder):
75
+
76
+ .. code::
77
+
78
+ python -m pip install .
79
+
80
+ Or:
81
+
82
+ .. code::
83
+
84
+ python -m pip install --proxy <proxy> .
85
+
86
+ This command will also download and install all dependencies that are required to work with the source files in the current repository.
87
+ After the initial installation of **PythonExtensionsCollection** is done, you have the following two possibilities:
88
+
89
+ 1. *Clean the previous installation*:
90
+
91
+ .. code::
92
+
93
+ python "./cleanup_installation.py"
94
+
95
+ ``cleanup_installation.py`` explicitly deletes all files and folders within the component installation folder under
96
+ ``site-packages`` and also deletes local build artefacts.
97
+
98
+ 2. *Render the component documentation*:
99
+
100
+ .. code::
101
+
102
+ python "./genpackagedoc.py"
103
+
104
+ This would e.g. be required in case of changes in the interface of **PythonExtensionsCollection**.
105
+
106
+ The documentation is rendered by a separate application called **GenPackageDoc**, that is part
107
+ of the build dependencies and runtime dependencies of **PythonExtensionsCollection**.
108
+
109
+ **GenPackageDoc** needs to be configured. Details about how to do this, can be found in the
110
+ `README.rst <https://github.com/test-fullautomation/python-genpackagedoc/blob/develop/README.rst>`_
111
+ (sections *Install dependencies* and *Configure dependencies*).
112
+
113
+ * Use the following command to build **PythonExtensionsCollection** (executed in repository main folder):
114
+
115
+ .. code::
116
+
117
+ python -m build .
118
+
119
+ Or:
120
+
121
+ .. code::
122
+
123
+ python -m pip config set global.proxy <proxy>
124
+ python -m build .
125
+
126
+ Package Documentation
127
+ ---------------------
128
+
129
+ A detailed documentation of the **PythonExtensionsCollection** can be found here:
130
+ `PythonExtensionsCollection.pdf <https://github.com/test-fullautomation/python-extensions-collection/blob/develop/PythonExtensionsCollection/PythonExtensionsCollection.pdf>`_
131
+
132
+
133
+ Feedback
134
+ --------
135
+
136
+ To give us a feedback, you can send an email to `Thomas Pollerspöck <mailto:Thomas.Pollerspoeck@de.bosch.com>`_
137
+
138
+ In case you want to report a bug or request any interesting feature, please don't hesitate to raise a ticket.
139
+
140
+ Maintainers
141
+ -----------
142
+
143
+ `Holger Queckenstedt <mailto:Holger.Queckenstedt@de.bosch.com>`_
144
+
145
+ `Thomas Pollerspöck <mailto:Thomas.Pollerspoeck@de.bosch.com>`_
146
+
147
+ Contributors
148
+ ------------
149
+
150
+ `Holger Queckenstedt <mailto:Holger.Queckenstedt@de.bosch.com>`_
151
+
152
+ `Thomas Pollerspöck <mailto:Thomas.Pollerspoeck@de.bosch.com>`_
153
+
154
+ License
155
+ -------
156
+
157
+ Copyright 2020-2026 Robert Bosch GmbH
158
+
159
+ Licensed under the Apache License, Version 2.0 (the "License");
160
+ you may not use this file except in compliance with the License.
161
+ You may obtain a copy of the License at
162
+
163
+ |License: Apache v2|
164
+
165
+ Unless required by applicable law or agreed to in writing, software
166
+ distributed under the License is distributed on an "AS IS" BASIS,
167
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
168
+ See the License for the specific language governing permissions and
169
+ limitations under the License.
170
+
171
+
172
+ .. |License: Apache v2| image:: https://img.shields.io/pypi/l/robotframework.svg
173
+ :target: http://www.apache.org/licenses/LICENSE-2.0.html
@@ -1,6 +1,6 @@
1
1
  # **************************************************************************************************************
2
2
  #
3
- # Copyright 2020-2024 Robert Bosch GmbH
3
+ # Copyright 2020-2026 Robert Bosch GmbH
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2020-2024 Robert Bosch GmbH
1
+ # Copyright 2020-2026 Robert Bosch GmbH
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # **************************************************************************************************************
2
2
  #
3
- # Copyright 2020-2024 Robert Bosch GmbH
3
+ # Copyright 2020-2026 Robert Bosch GmbH
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2020-2024 Robert Bosch GmbH
1
+ # Copyright 2020-2026 Robert Bosch GmbH
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # **************************************************************************************************************
2
2
  #
3
- # Copyright 2020-2024 Robert Bosch GmbH
3
+ # Copyright 2020-2026 Robert Bosch GmbH
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2020-2024 Robert Bosch GmbH
1
+ # Copyright 2020-2026 Robert Bosch GmbH
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # **************************************************************************************************************
2
2
  #
3
- # Copyright 2020-2024 Robert Bosch GmbH
3
+ # Copyright 2020-2026 Robert Bosch GmbH
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,4 +1,4 @@
1
- # Copyright 2020-2024 Robert Bosch GmbH
1
+ # Copyright 2020-2026 Robert Bosch GmbH
2
2
  #
3
3
  # Licensed under the Apache License, Version 2.0 (the "License");
4
4
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # **************************************************************************************************************
2
2
  #
3
- # Copyright 2020-2025 Robert Bosch GmbH
3
+ # Copyright 2020-2026 Robert Bosch GmbH
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -20,7 +20,7 @@
20
20
  #
21
21
  # XC-HWP/ESW3-Queckenstedt
22
22
  #
23
- # 29.01.2025
23
+ # 12.03.2026
24
24
  #
25
25
  # **************************************************************************************************************
26
26
 
@@ -379,38 +379,28 @@ It is also possible to let the method dump the list to a text file.
379
379
  bSuccess = None
380
380
  sResult = "UNKNOWN"
381
381
 
382
- listofTuplesPackages = []
383
-
384
- sFreezeData = None
382
+ sListData = None
385
383
  try:
386
- sFreezeData = subprocess.check_output([sys.executable, '-m', 'pip', 'freeze'], encoding="utf-8", text=True)
384
+ sListData = subprocess.run([sys.executable, '-m', 'pip', 'list', '--format=columns'], capture_output=True, text=True)
385
+ sListLines = sListData.stdout.strip().split('\n')
387
386
  except Exception as reason:
388
387
  bSuccess = None
389
388
  sResult = str(reason)
390
389
  sResult = CString.FormatResult(sMethod, bSuccess, sResult)
391
390
  return listofTuplesPackages, bSuccess, sResult
392
391
 
393
- if sFreezeData is None:
392
+ if sListData is None:
394
393
  bSuccess = None
395
- sResult = "sFreezeData is None"
394
+ sResult = "sListData is None"
396
395
  sResult = CString.FormatResult(sMethod, bSuccess, sResult)
397
396
  return listofTuplesPackages, bSuccess, sResult
398
397
 
399
- sFreezeData = str(sFreezeData) # to make the content 'split()' save
400
-
401
- for sPackage in sFreezeData.split():
402
- sName = None
403
- sVersion = None
404
- listParts = sPackage.split('==')
405
- if len(listParts) != 2:
406
- sName = sPackage
407
- sVersion = "UNKNOWN"
408
- # but I really would not expect this
409
- else:
410
- sName = listParts[0]
411
- sVersion = listParts[1]
412
- listofTuplesPackages.append((sName, sVersion))
413
- # eof for sPackage in sFreezeData.split():
398
+ listofTuplesPackages = []
399
+ # lines[2:] => skip headline of 'pip list'
400
+ for sLine in sListLines[2:]:
401
+ parts = sLine.split()
402
+ if len(parts) >= 2:
403
+ listofTuplesPackages.append((parts[0], parts[1]))
414
404
 
415
405
  nNrOfPackages = len(listofTuplesPackages)
416
406
 
@@ -0,0 +1,13 @@
1
+ # Copyright 2020-2026 Robert Bosch GmbH
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
@@ -0,0 +1,13 @@
1
+ # Copyright 2020-2026 Robert Bosch GmbH
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
@@ -1,6 +1,6 @@
1
1
  # **************************************************************************************************************
2
2
  #
3
- # Copyright 2020-2024 Robert Bosch GmbH
3
+ # Copyright 2020-2026 Robert Bosch GmbH
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -18,6 +18,5 @@
18
18
  #
19
19
  # Version and date of PythonExtensionsCollection
20
20
  #
21
- VERSION = "0.16.0"
22
- VERSION_DATE = "29.01.2025"
23
-
21
+ VERSION = "0.17.0"
22
+ VERSION_DATE = "28.05.2026"
@@ -0,0 +1,173 @@
1
+ Metadata-Version: 2.4
2
+ Name: PythonExtensionsCollection
3
+ Version: 0.17.0
4
+ Summary: Additional Python functions
5
+ Author-email: Holger Queckenstedt <Holger.Queckenstedt@de.bosch.com>
6
+ License-Expression: Apache-2.0
7
+ Project-URL: Homepage, https://pypi.org/project/PythonExtensionsCollection/
8
+ Project-URL: Documentation, https://github.com/test-fullautomation/python-extensions-collection/blob/develop/PythonExtensionsCollection/PythonExtensionsCollection.pdf
9
+ Project-URL: Readme, https://github.com/test-fullautomation/python-extensions-collection/blob/develop/README.rst
10
+ Project-URL: Repository, https://github.com/test-fullautomation/python-extensions-collection
11
+ Project-URL: Issues, https://github.com/test-fullautomation/python-extensions-collection/issues
12
+ Keywords: string,file,folder,path
13
+ Classifier: Development Status :: 3 - Alpha
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Topic :: Software Development
18
+ Requires-Python: >=3.11
19
+ Description-Content-Type: text/x-rst
20
+ License-File: LICENSE
21
+ Requires-Dist: docutils>=0.22.4
22
+ Requires-Dist: colorama
23
+ Requires-Dist: GenPackageDoc
24
+ Provides-Extra: dev
25
+ Requires-Dist: pytest>=6.0; extra == "dev"
26
+ Requires-Dist: pytest-cov>=3.0; extra == "dev"
27
+ Provides-Extra: docs
28
+ Requires-Dist: docutils>=0.22.4; extra == "docs"
29
+ Dynamic: license-file
30
+
31
+ .. Copyright 2020-2026 Robert Bosch GmbH
32
+
33
+ .. Licensed under the Apache License, Version 2.0 (the "License");
34
+ you may not use this file except in compliance with the License.
35
+ You may obtain a copy of the License at
36
+
37
+ .. http://www.apache.org/licenses/LICENSE-2.0
38
+
39
+ .. Unless required by applicable law or agreed to in writing, software
40
+ distributed under the License is distributed on an "AS IS" BASIS,
41
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42
+ See the License for the specific language governing permissions and
43
+ limitations under the License.
44
+
45
+ Package Description
46
+ ===================
47
+
48
+ The **PythonExtensionsCollection** extends the functionality of Python by some useful functions
49
+ that are not available in Python immediately.
50
+
51
+ How to install
52
+ --------------
53
+
54
+ The **PythonExtensionsCollection** can be installed in two different ways.
55
+
56
+ 1. Installation via PyPi (recommended for users)
57
+
58
+ .. code::
59
+
60
+ pip install PythonExtensionsCollection
61
+
62
+ `PythonExtensionsCollection in PyPi <https://pypi.org/project/PythonExtensionsCollection/>`_
63
+
64
+ 2. Installation via GitHub (recommended for developers)
65
+
66
+ * Clone the **python-extensions-collection** repository to your machine.
67
+
68
+ .. code::
69
+
70
+ git clone https://github.com/test-fullautomation/python-extensions-collection.git
71
+
72
+ `PythonExtensionsCollection in GitHub <https://github.com/test-fullautomation/python-extensions-collection>`_
73
+
74
+ * Use the following command to install **PythonExtensionsCollection** (executed in repository main folder):
75
+
76
+ .. code::
77
+
78
+ python -m pip install .
79
+
80
+ Or:
81
+
82
+ .. code::
83
+
84
+ python -m pip install --proxy <proxy> .
85
+
86
+ This command will also download and install all dependencies that are required to work with the source files in the current repository.
87
+ After the initial installation of **PythonExtensionsCollection** is done, you have the following two possibilities:
88
+
89
+ 1. *Clean the previous installation*:
90
+
91
+ .. code::
92
+
93
+ python "./cleanup_installation.py"
94
+
95
+ ``cleanup_installation.py`` explicitly deletes all files and folders within the component installation folder under
96
+ ``site-packages`` and also deletes local build artefacts.
97
+
98
+ 2. *Render the component documentation*:
99
+
100
+ .. code::
101
+
102
+ python "./genpackagedoc.py"
103
+
104
+ This would e.g. be required in case of changes in the interface of **PythonExtensionsCollection**.
105
+
106
+ The documentation is rendered by a separate application called **GenPackageDoc**, that is part
107
+ of the build dependencies and runtime dependencies of **PythonExtensionsCollection**.
108
+
109
+ **GenPackageDoc** needs to be configured. Details about how to do this, can be found in the
110
+ `README.rst <https://github.com/test-fullautomation/python-genpackagedoc/blob/develop/README.rst>`_
111
+ (sections *Install dependencies* and *Configure dependencies*).
112
+
113
+ * Use the following command to build **PythonExtensionsCollection** (executed in repository main folder):
114
+
115
+ .. code::
116
+
117
+ python -m build .
118
+
119
+ Or:
120
+
121
+ .. code::
122
+
123
+ python -m pip config set global.proxy <proxy>
124
+ python -m build .
125
+
126
+ Package Documentation
127
+ ---------------------
128
+
129
+ A detailed documentation of the **PythonExtensionsCollection** can be found here:
130
+ `PythonExtensionsCollection.pdf <https://github.com/test-fullautomation/python-extensions-collection/blob/develop/PythonExtensionsCollection/PythonExtensionsCollection.pdf>`_
131
+
132
+
133
+ Feedback
134
+ --------
135
+
136
+ To give us a feedback, you can send an email to `Thomas Pollerspöck <mailto:Thomas.Pollerspoeck@de.bosch.com>`_
137
+
138
+ In case you want to report a bug or request any interesting feature, please don't hesitate to raise a ticket.
139
+
140
+ Maintainers
141
+ -----------
142
+
143
+ `Holger Queckenstedt <mailto:Holger.Queckenstedt@de.bosch.com>`_
144
+
145
+ `Thomas Pollerspöck <mailto:Thomas.Pollerspoeck@de.bosch.com>`_
146
+
147
+ Contributors
148
+ ------------
149
+
150
+ `Holger Queckenstedt <mailto:Holger.Queckenstedt@de.bosch.com>`_
151
+
152
+ `Thomas Pollerspöck <mailto:Thomas.Pollerspoeck@de.bosch.com>`_
153
+
154
+ License
155
+ -------
156
+
157
+ Copyright 2020-2026 Robert Bosch GmbH
158
+
159
+ Licensed under the Apache License, Version 2.0 (the "License");
160
+ you may not use this file except in compliance with the License.
161
+ You may obtain a copy of the License at
162
+
163
+ |License: Apache v2|
164
+
165
+ Unless required by applicable law or agreed to in writing, software
166
+ distributed under the License is distributed on an "AS IS" BASIS,
167
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
168
+ See the License for the specific language governing permissions and
169
+ limitations under the License.
170
+
171
+
172
+ .. |License: Apache v2| image:: https://img.shields.io/pypi/l/robotframework.svg
173
+ :target: http://www.apache.org/licenses/LICENSE-2.0.html
@@ -1,6 +1,8 @@
1
1
  LICENSE
2
+ MANIFEST.in
2
3
  README.rst
3
- setup.py
4
+ build_backend.py
5
+ pyproject.toml
4
6
  PythonExtensionsCollection/PythonExtensionsCollection.pdf
5
7
  PythonExtensionsCollection/__init__.py
6
8
  PythonExtensionsCollection/version.py
@@ -0,0 +1,10 @@
1
+ docutils>=0.22.4
2
+ colorama
3
+ GenPackageDoc
4
+
5
+ [dev]
6
+ pytest>=6.0
7
+ pytest-cov>=3.0
8
+
9
+ [docs]
10
+ docutils>=0.22.4
@@ -1,4 +1,4 @@
1
- .. Copyright 2020-2024 Robert Bosch GmbH
1
+ .. Copyright 2020-2026 Robert Bosch GmbH
2
2
 
3
3
  .. Licensed under the Apache License, Version 2.0 (the "License");
4
4
  you may not use this file except in compliance with the License.
@@ -41,40 +41,57 @@ The **PythonExtensionsCollection** can be installed in two different ways.
41
41
 
42
42
  `PythonExtensionsCollection in GitHub <https://github.com/test-fullautomation/python-extensions-collection>`_
43
43
 
44
- * Install dependencies
44
+ * Use the following command to install **PythonExtensionsCollection** (executed in repository main folder):
45
45
 
46
- **PythonExtensionsCollection** requires some additional Python libraries. Before you install the cloned repository sources
47
- you have to install the dependencies manually. The names of all related packages you can find in the file ``requirements.txt``
48
- in the repository root folder. Use pip to install them:
46
+ .. code::
47
+
48
+ python -m pip install .
49
+
50
+ Or:
49
51
 
50
52
  .. code::
51
53
 
52
- pip install -r ./requirements.txt
54
+ python -m pip install --proxy <proxy> .
53
55
 
54
- Additionally install **LaTeX** (recommended: TeX Live). This is used to render the documentation.
56
+ This command will also download and install all dependencies that are required to work with the source files in the current repository.
57
+ After the initial installation of **PythonExtensionsCollection** is done, you have the following two possibilities:
55
58
 
56
- * Configure dependencies
59
+ 1. *Clean the previous installation*:
57
60
 
58
- The installation of **PythonExtensionsCollection** includes to generate the documentation in PDF format. This is done by
59
- an application called **GenPackageDoc**, that is part of the installation dependencies (see ``requirements.txt``).
61
+ .. code::
60
62
 
61
- **GenPackageDoc** uses **LaTeX** to generate the documentation in PDF format. Therefore **GenPackageDoc** needs to know where to find
62
- **LaTeX**. This is defined in the **GenPackageDoc** configuration file
63
+ python "./cleanup_installation.py"
63
64
 
64
- .. code::
65
+ ``cleanup_installation.py`` explicitly deletes all files and folders within the component installation folder under
66
+ ``site-packages`` and also deletes local build artefacts.
67
+
68
+ 2. *Render the component documentation*:
65
69
 
66
- packagedoc\packagedoc_config.json
70
+ .. code::
67
71
 
68
- Before you start the installation you have to introduce the following environment variable, that is used in ``packagedoc_config.json``:
72
+ python "./genpackagedoc.py"
69
73
 
70
- - ``GENDOC_LATEXPATH`` : path to ``pdflatex`` executable
74
+ This would e.g. be required in case of changes in the interface of **PythonExtensionsCollection**.
71
75
 
72
- * Use the following command to install the **PythonExtensionsCollection**:
76
+ The documentation is rendered by a separate application called **GenPackageDoc**, that is part
77
+ of the build dependencies and runtime dependencies of **PythonExtensionsCollection**.
78
+
79
+ **GenPackageDoc** needs to be configured. Details about how to do this, can be found in the
80
+ `README.rst <https://github.com/test-fullautomation/python-genpackagedoc/blob/develop/README.rst>`_
81
+ (sections *Install dependencies* and *Configure dependencies*).
82
+
83
+ * Use the following command to build **PythonExtensionsCollection** (executed in repository main folder):
73
84
 
74
85
  .. code::
75
86
 
76
- setup.py install
87
+ python -m build .
88
+
89
+ Or:
90
+
91
+ .. code::
77
92
 
93
+ python -m pip config set global.proxy <proxy>
94
+ python -m build .
78
95
 
79
96
  Package Documentation
80
97
  ---------------------
@@ -107,7 +124,7 @@ Contributors
107
124
  License
108
125
  -------
109
126
 
110
- Copyright 2020-2024 Robert Bosch GmbH
127
+ Copyright 2020-2026 Robert Bosch GmbH
111
128
 
112
129
  Licensed under the Apache License, Version 2.0 (the "License");
113
130
  you may not use this file except in compliance with the License.