ansys-sherlock-core 0.2.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.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 ANSYS, Inc. All rights reserved.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,128 @@
1
+ Metadata-Version: 2.1
2
+ Name: ansys-sherlock-core
3
+ Version: 0.2.0
4
+ Summary: A python wrapper for Ansys Sherlock
5
+ Author-email: "ANSYS, Inc." <pyansys.core@ansys.com>
6
+ Maintainer-email: "ANSYS, Inc." <pyansys.core@ansys.com>
7
+ Requires-Python: >=3.8,<4
8
+ Description-Content-Type: text/x-rst
9
+ Classifier: Development Status :: 4 - Beta
10
+ Classifier: Intended Audience :: Science/Research
11
+ Classifier: Topic :: Scientific/Engineering :: Information Analysis
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Operating System :: OS Independent
14
+ Classifier: Programming Language :: Python :: 3.8
15
+ Classifier: Programming Language :: Python :: 3.9
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Requires-Dist: ansys-api-sherlock==0.1.14
19
+ Requires-Dist: grpcio>=1.17
20
+ Requires-Dist: importlib-metadata>=4.0,<5; python_version<='3.8'
21
+ Requires-Dist: protobuf~=3.20
22
+ Requires-Dist: ansys-sphinx-theme==0.9.9 ; extra == "doc"
23
+ Requires-Dist: numpydoc==1.5.0 ; extra == "doc"
24
+ Requires-Dist: Sphinx==6.2.1 ; extra == "doc"
25
+ Requires-Dist: sphinx-copybutton==0.5.2 ; extra == "doc"
26
+ Requires-Dist: sphinx_design==0.4.1 ; extra == "doc"
27
+ Requires-Dist: sphinx-gallery==0.13.0 ; extra == "doc"
28
+ Requires-Dist: grpcio==1.55.0 ; extra == "tests"
29
+ Requires-Dist: protobuf==3.20.3 ; extra == "tests"
30
+ Requires-Dist: pytest==7.3.2 ; extra == "tests"
31
+ Requires-Dist: pytest-cov==4.1.0 ; extra == "tests"
32
+ Project-URL: Documentation, https://sherlock.docs.pyansys.com
33
+ Project-URL: Homepage, https://github.com/ansys/pysherlock
34
+ Project-URL: Source, https://github.com/ansys/pysherlock
35
+ Project-URL: Tracker, https://github.com/ansys/pysherlock/issues
36
+ Provides-Extra: doc
37
+ Provides-Extra: tests
38
+
39
+ PySherlock
40
+ ==========
41
+ |pyansys| |python| |pypi| |GH-CI| |codecov| |MIT| |black|
42
+
43
+ .. |pyansys| image:: https://img.shields.io/badge/Py-Ansys-ffc107.svg?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABDklEQVQ4jWNgoDfg5mD8vE7q/3bpVyskbW0sMRUwofHD7Dh5OBkZGBgW7/3W2tZpa2tLQEOyOzeEsfumlK2tbVpaGj4N6jIs1lpsDAwMJ278sveMY2BgCA0NFRISwqkhyQ1q/Nyd3zg4OBgYGNjZ2ePi4rB5loGBhZnhxTLJ/9ulv26Q4uVk1NXV/f///////69du4Zdg78lx//t0v+3S88rFISInD59GqIH2esIJ8G9O2/XVwhjzpw5EAam1xkkBJn/bJX+v1365hxxuCAfH9+3b9/+////48cPuNehNsS7cDEzMTAwMMzb+Q2u4dOnT2vWrMHu9ZtzxP9vl/69RVpCkBlZ3N7enoDXBwEAAA+YYitOilMVAAAAAElFTkSuQmCC
44
+ :target: https://docs.pyansys.com/
45
+ :alt: PyAnsys
46
+
47
+ .. |python| image:: https://img.shields.io/pypi/pyversions/ansys-sherlock-core?logo=pypi
48
+ :target: https://pypi.org/project/ansys-sherlock-core/
49
+ :alt: Python
50
+
51
+ .. |pypi| image:: https://img.shields.io/pypi/v/ansys-sherlock-core.svg?logo=python&logoColor=white
52
+ :target: https://pypi.org/project/ansys-sherlock-core
53
+ :alt: PyPI
54
+
55
+ .. |codecov| image:: https://codecov.io/gh/ansys/ansys-sherlock-core/branch/main/graph/badge.svg
56
+ :target: https://codecov.io/gh/ansys/pysherlock
57
+ :alt: Codecov
58
+
59
+ .. |GH-CI| image:: https://github.com/ansys/pysherlock/actions/workflows/ci_cd.yml/badge.svg
60
+ :target: https://github.com/ansys/pysherlock/actions/workflows/ci_cd.yml
61
+ :alt: GH-CI
62
+
63
+ .. |MIT| image:: https://img.shields.io/badge/License-MIT-yellow.svg
64
+ :target: https://opensource.org/licenses/MIT
65
+ :alt: MIT
66
+
67
+ .. |black| image:: https://img.shields.io/badge/code%20style-black-000000.svg?style=flat
68
+ :target: https://github.com/psf/black
69
+ :alt: Black
70
+
71
+ PySherlock is a Python client library for the Ansys Sherlock product.
72
+
73
+ .. readme_start
74
+
75
+ Overview
76
+ --------
77
+ Ansys Sherlock is a reliability physics-based electronics design tool that provides
78
+ fast and accurate life predictions for electronic hardware at the component,
79
+ board, and system levels in early stage design.
80
+
81
+ PySherlock provides Pythonic access to Sherlock's functions, enabling
82
+ users to automate and customize their specific workflows.
83
+
84
+ With PySherlock, you can perform many tasks, including these:
85
+
86
+ * Launch a Sherlock gRPC server and a Sherlock client.
87
+ * Import ECAD files and generate project reports.
88
+ * Define life cycle events and profiles.
89
+ * Generate a stackup and update a stackup layer.
90
+ * Update a project parts list.
91
+ * Perform layer view operations such as updating a mount point's location.
92
+ * Export a trace or trace reinforcement model for integration with Ansys Workbench.
93
+ * Execute one or more analyses.
94
+
95
+ Dependencies
96
+ ------------
97
+
98
+ You must have a licensed copy of `Ansys Sherlock <https://www.ansys.com/products/structures/ansys-sherlock>`_
99
+ installed either on your local machine or a remote machine. To use a remote session, a connection to the
100
+ remote machine must be available from your Python program.
101
+
102
+ Documentation and issues
103
+ ------------------------
104
+ For comprehensive information on PySherlock, see the latest release
105
+ `documentation <https://sherlock.docs.pyansys.com/>`_.
106
+
107
+ On the `PySherlock Issues <https://github.com/ansys/pysherlock/issues>`_ page,
108
+ you can create issues to submit questions, report bugs, and request new features.
109
+ This is the best place to post questions and code.
110
+
111
+ Contributing
112
+ ------------
113
+ If you would like to test or contribute to the development of PySherlock, see
114
+ `Contribute <https://sherlock.docs.pyansys.com/version/dev/contributing.html>`_ in the
115
+ PySherlock documentation.
116
+
117
+ License
118
+ -------
119
+ PySherlock is licensed under the MIT license.
120
+
121
+ PySherlock makes no commercial claim over Ansys whatsoever. This library extends the functionality
122
+ of Ansys Sherlock by adding a Python interface to Sherlock without changing the core behavior
123
+ or license of the original software. The use of the interactive control of PySherlock requires
124
+ a legally licensed copy of Sherlock.
125
+
126
+ For more information on Sherlock, see the `Ansys Sherlock <https://www.ansys.com/products/structures/ansys-sherlock>`_
127
+ page on the Ansys website.
128
+
@@ -0,0 +1,89 @@
1
+ PySherlock
2
+ ==========
3
+ |pyansys| |python| |pypi| |GH-CI| |codecov| |MIT| |black|
4
+
5
+ .. |pyansys| image:: https://img.shields.io/badge/Py-Ansys-ffc107.svg?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAABDklEQVQ4jWNgoDfg5mD8vE7q/3bpVyskbW0sMRUwofHD7Dh5OBkZGBgW7/3W2tZpa2tLQEOyOzeEsfumlK2tbVpaGj4N6jIs1lpsDAwMJ278sveMY2BgCA0NFRISwqkhyQ1q/Nyd3zg4OBgYGNjZ2ePi4rB5loGBhZnhxTLJ/9ulv26Q4uVk1NXV/f///////69du4Zdg78lx//t0v+3S88rFISInD59GqIH2esIJ8G9O2/XVwhjzpw5EAam1xkkBJn/bJX+v1365hxxuCAfH9+3b9/+////48cPuNehNsS7cDEzMTAwMMzb+Q2u4dOnT2vWrMHu9ZtzxP9vl/69RVpCkBlZ3N7enoDXBwEAAA+YYitOilMVAAAAAElFTkSuQmCC
6
+ :target: https://docs.pyansys.com/
7
+ :alt: PyAnsys
8
+
9
+ .. |python| image:: https://img.shields.io/pypi/pyversions/ansys-sherlock-core?logo=pypi
10
+ :target: https://pypi.org/project/ansys-sherlock-core/
11
+ :alt: Python
12
+
13
+ .. |pypi| image:: https://img.shields.io/pypi/v/ansys-sherlock-core.svg?logo=python&logoColor=white
14
+ :target: https://pypi.org/project/ansys-sherlock-core
15
+ :alt: PyPI
16
+
17
+ .. |codecov| image:: https://codecov.io/gh/ansys/ansys-sherlock-core/branch/main/graph/badge.svg
18
+ :target: https://codecov.io/gh/ansys/pysherlock
19
+ :alt: Codecov
20
+
21
+ .. |GH-CI| image:: https://github.com/ansys/pysherlock/actions/workflows/ci_cd.yml/badge.svg
22
+ :target: https://github.com/ansys/pysherlock/actions/workflows/ci_cd.yml
23
+ :alt: GH-CI
24
+
25
+ .. |MIT| image:: https://img.shields.io/badge/License-MIT-yellow.svg
26
+ :target: https://opensource.org/licenses/MIT
27
+ :alt: MIT
28
+
29
+ .. |black| image:: https://img.shields.io/badge/code%20style-black-000000.svg?style=flat
30
+ :target: https://github.com/psf/black
31
+ :alt: Black
32
+
33
+ PySherlock is a Python client library for the Ansys Sherlock product.
34
+
35
+ .. readme_start
36
+
37
+ Overview
38
+ --------
39
+ Ansys Sherlock is a reliability physics-based electronics design tool that provides
40
+ fast and accurate life predictions for electronic hardware at the component,
41
+ board, and system levels in early stage design.
42
+
43
+ PySherlock provides Pythonic access to Sherlock's functions, enabling
44
+ users to automate and customize their specific workflows.
45
+
46
+ With PySherlock, you can perform many tasks, including these:
47
+
48
+ * Launch a Sherlock gRPC server and a Sherlock client.
49
+ * Import ECAD files and generate project reports.
50
+ * Define life cycle events and profiles.
51
+ * Generate a stackup and update a stackup layer.
52
+ * Update a project parts list.
53
+ * Perform layer view operations such as updating a mount point's location.
54
+ * Export a trace or trace reinforcement model for integration with Ansys Workbench.
55
+ * Execute one or more analyses.
56
+
57
+ Dependencies
58
+ ------------
59
+
60
+ You must have a licensed copy of `Ansys Sherlock <https://www.ansys.com/products/structures/ansys-sherlock>`_
61
+ installed either on your local machine or a remote machine. To use a remote session, a connection to the
62
+ remote machine must be available from your Python program.
63
+
64
+ Documentation and issues
65
+ ------------------------
66
+ For comprehensive information on PySherlock, see the latest release
67
+ `documentation <https://sherlock.docs.pyansys.com/>`_.
68
+
69
+ On the `PySherlock Issues <https://github.com/ansys/pysherlock/issues>`_ page,
70
+ you can create issues to submit questions, report bugs, and request new features.
71
+ This is the best place to post questions and code.
72
+
73
+ Contributing
74
+ ------------
75
+ If you would like to test or contribute to the development of PySherlock, see
76
+ `Contribute <https://sherlock.docs.pyansys.com/version/dev/contributing.html>`_ in the
77
+ PySherlock documentation.
78
+
79
+ License
80
+ -------
81
+ PySherlock is licensed under the MIT license.
82
+
83
+ PySherlock makes no commercial claim over Ansys whatsoever. This library extends the functionality
84
+ of Ansys Sherlock by adding a Python interface to Sherlock without changing the core behavior
85
+ or license of the original software. The use of the interactive control of PySherlock requires
86
+ a legally licensed copy of Sherlock.
87
+
88
+ For more information on Sherlock, see the `Ansys Sherlock <https://www.ansys.com/products/structures/ansys-sherlock>`_
89
+ page on the Ansys website.
@@ -0,0 +1,82 @@
1
+ [build-system]
2
+ requires = ["flit_core >=3.2,<4"]
3
+ build-backend = "flit_core.buildapi"
4
+
5
+ [project]
6
+ name = "ansys-sherlock-core"
7
+ version = "0.2.0"
8
+ description = "A python wrapper for Ansys Sherlock"
9
+ readme = "README.rst"
10
+ requires-python = ">=3.8,<4"
11
+ license = {file = "LICENSE"}
12
+ authors = [{name = "ANSYS, Inc.", email = "pyansys.core@ansys.com"}]
13
+ maintainers = [{name = "ANSYS, Inc.", email = "pyansys.core@ansys.com"}]
14
+ classifiers = [
15
+ "Development Status :: 4 - Beta",
16
+ "Intended Audience :: Science/Research",
17
+ "Topic :: Scientific/Engineering :: Information Analysis",
18
+ "License :: OSI Approved :: MIT License",
19
+ "Operating System :: OS Independent",
20
+ "Programming Language :: Python :: 3.8",
21
+ "Programming Language :: Python :: 3.9",
22
+ "Programming Language :: Python :: 3.10",
23
+ "Programming Language :: Python :: 3.11",
24
+ ]
25
+
26
+ dependencies = [
27
+ "ansys-api-sherlock==0.1.14",
28
+ "grpcio>=1.17",
29
+ "importlib-metadata>=4.0,<5; python_version<='3.8'",
30
+ "protobuf~=3.20",
31
+ ]
32
+
33
+ [project.optional-dependencies]
34
+ tests = [
35
+ "grpcio==1.55.0",
36
+ "protobuf==3.20.3",
37
+ "pytest==7.3.2",
38
+ "pytest-cov==4.1.0",
39
+ ]
40
+ doc = [
41
+ "ansys-sphinx-theme==0.9.9",
42
+ "numpydoc==1.5.0",
43
+ "Sphinx==6.2.1", # BLOCKED BY sphinx-design - Cannot upgrade to Sphinx 7 for now
44
+ "sphinx-copybutton==0.5.2",
45
+ "sphinx_design==0.4.1",
46
+ "sphinx-gallery==0.13.0",
47
+ ]
48
+
49
+ [project.urls]
50
+ Documentation = "https://sherlock.docs.pyansys.com"
51
+ Homepage = "https://github.com/ansys/pysherlock"
52
+ Source = "https://github.com/ansys/pysherlock"
53
+ Tracker = "https://github.com/ansys/pysherlock/issues"
54
+
55
+ [tool.flit.module]
56
+ name = "ansys.sherlock.core"
57
+
58
+ [tool.black]
59
+ line-length = 100
60
+
61
+ [tool.isort]
62
+ profile = "black"
63
+ force_sort_within_sections = true
64
+ line_length = 100
65
+ default_section = "THIRDPARTY"
66
+ src_paths = ["doc", "src", "tests"]
67
+
68
+ [tool.coverage.run]
69
+ source = ["ansys.sherlock"]
70
+
71
+ [tool.coverage.report]
72
+ show_missing = true
73
+
74
+ [tool.pytest.ini_options]
75
+ minversion = "7.1"
76
+ testpaths = [
77
+ "tests",
78
+ ]
79
+
80
+ [tool.codespell]
81
+ ignore-words = "doc/styles/Vocab/ANSYS/accept.txt"
82
+ quiet-level = 3
@@ -0,0 +1,22 @@
1
+ # © 2023 ANSYS, Inc. All rights reserved.
2
+
3
+ """PySherlock client library."""
4
+
5
+ # Version
6
+ # ------------------------------------------------------------------------------
7
+
8
+ try:
9
+ import importlib.metadata as importlib_metadata
10
+ except ModuleNotFoundError: # pragma: no cover
11
+ import importlib_metadata # type: ignore
12
+
13
+ __version__ = importlib_metadata.version(__name__.replace(".", "-"))
14
+ """PySherlock version."""
15
+
16
+ # Ease import statements
17
+ # ------------------------------------------------------------------------------
18
+
19
+ from ansys.sherlock.core.logging import Logger
20
+
21
+ LOG = Logger("sherlock")
22
+ """PySherlock logger."""