pyEDAA.ProjectModel 0.5.1__tar.gz → 0.6.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 (28) hide show
  1. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/PKG-INFO +41 -39
  2. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Xilinx/Vivado.py +18 -0
  3. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/__init__.py +11 -7
  4. pyedaa_projectmodel-0.6.0/pyEDAA/ProjectModel/py.typed +0 -0
  5. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA.ProjectModel.egg-info/PKG-INFO +41 -39
  6. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA.ProjectModel.egg-info/SOURCES.txt +1 -0
  7. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA.ProjectModel.egg-info/requires.txt +39 -35
  8. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyproject.toml +19 -4
  9. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/setup.py +19 -13
  10. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/LICENSE.md +0 -0
  11. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/README.md +0 -0
  12. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Altera/Quartus.py +0 -0
  13. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Altera/__init__.py +0 -0
  14. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Attributes.py +0 -0
  15. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/GHDL.py +0 -0
  16. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Intel/QuartusPrime.py +0 -0
  17. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Intel/__init__.py +0 -0
  18. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/MentorGraphics/ModelSim.py +0 -0
  19. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/MentorGraphics/QuestaSim.py +0 -0
  20. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/MentorGraphics/__init__.py +0 -0
  21. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/OSVVM.py +0 -0
  22. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/VHDL.py +0 -0
  23. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Verilog.py +0 -0
  24. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Xilinx/ISE.py +0 -0
  25. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA/ProjectModel/Xilinx/__init__.py +0 -0
  26. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA.ProjectModel.egg-info/dependency_links.txt +0 -0
  27. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/pyEDAA.ProjectModel.egg-info/top_level.txt +0 -0
  28. {pyedaa_projectmodel-0.5.1 → pyedaa_projectmodel-0.6.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyEDAA.ProjectModel
3
- Version: 0.5.1
3
+ Version: 0.6.0
4
4
  Summary: An abstract model of EDA tool projects.
5
5
  Home-page: https://GitHub.com/edaa-org/pyEDAA.ProjectModel
6
6
  Author: Patrick Lehmann
@@ -16,66 +16,68 @@ Classifier: Topic :: Utilities
16
16
  Classifier: Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)
17
17
  Classifier: License :: OSI Approved :: Apache Software License
18
18
  Classifier: Programming Language :: Python :: 3 :: Only
19
- Classifier: Programming Language :: Python :: 3.9
20
- Classifier: Programming Language :: Python :: 3.10
21
19
  Classifier: Programming Language :: Python :: 3.11
22
20
  Classifier: Programming Language :: Python :: 3.12
23
21
  Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Programming Language :: Python :: 3.14
24
23
  Classifier: Development Status :: 4 - Beta
25
- Requires-Python: >=3.9
24
+ Requires-Python: >=3.11
26
25
  Description-Content-Type: text/markdown
27
26
  License-File: LICENSE.md
28
- Requires-Dist: pySystemRDLModel~=0.3
29
27
  Requires-Dist: pyVHDLModel~=0.31
30
28
  Requires-Dist: pySVModel~=0.5
31
- Requires-Dist: pyTooling~=8.4
29
+ Requires-Dist: pySystemRDLModel~=0.3
30
+ Requires-Dist: pyTooling~=8.7
32
31
  Provides-Extra: doc
33
32
  Requires-Dist: pySVModel~=0.5; extra == "doc"
34
- Requires-Dist: sphinx_rtd_theme~=3.0; extra == "doc"
35
- Requires-Dist: sphinx_autodoc_typehints~=3.2; extra == "doc"
36
- Requires-Dist: pyTooling~=8.4; extra == "doc"
33
+ Requires-Dist: pySystemRDLModel~=0.3; extra == "doc"
34
+ Requires-Dist: docutils~=0.21; extra == "doc"
35
+ Requires-Dist: sphinx_design~=0.6; extra == "doc"
37
36
  Requires-Dist: pyVHDLModel~=0.31; extra == "doc"
37
+ Requires-Dist: sphinx-copybutton>=0.5; extra == "doc"
38
+ Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "doc"
38
39
  Requires-Dist: docutils_stubs~=0.0.22; extra == "doc"
39
- Requires-Dist: docutils~=0.21; extra == "doc"
40
- Requires-Dist: pySystemRDLModel~=0.3; extra == "doc"
40
+ Requires-Dist: sphinx~=8.2; extra == "doc"
41
+ Requires-Dist: sphinx_autodoc_typehints~=3.5; extra == "doc"
41
42
  Requires-Dist: sphinx_reports~=0.9; extra == "doc"
42
- Requires-Dist: sphinx-copybutton>=0.5.2; extra == "doc"
43
- Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "doc"
44
- Requires-Dist: sphinx_design~=0.6.1; extra == "doc"
43
+ Requires-Dist: pyTooling~=8.7; extra == "doc"
44
+ Requires-Dist: sphinx_rtd_theme~=3.0; extra == "doc"
45
45
  Requires-Dist: autoapi>=2.0.1; extra == "doc"
46
- Requires-Dist: sphinx~=8.2; extra == "doc"
47
46
  Provides-Extra: test
48
- Requires-Dist: Coverage~=7.8; extra == "test"
47
+ Requires-Dist: mypy[reports]~=1.18; extra == "test"
49
48
  Requires-Dist: pySVModel~=0.5; extra == "test"
50
- Requires-Dist: mypy~=1.15; extra == "test"
51
- Requires-Dist: pyTooling~=8.4; extra == "test"
52
- Requires-Dist: pyVHDLModel~=0.31; extra == "test"
53
- Requires-Dist: typing_extensions~=4.13; extra == "test"
54
49
  Requires-Dist: pySystemRDLModel~=0.3; extra == "test"
55
- Requires-Dist: pytest-cov~=6.1; extra == "test"
56
- Requires-Dist: pytest~=8.3; extra == "test"
57
- Requires-Dist: lxml~=5.4; extra == "test"
50
+ Requires-Dist: lxml<7.0,>=5.4; extra == "test"
51
+ Requires-Dist: Coverage~=7.11; extra == "test"
52
+ Requires-Dist: pyVHDLModel~=0.31; extra == "test"
53
+ Requires-Dist: pyTooling~=8.7; extra == "test"
54
+ Requires-Dist: pytest~=8.4; extra == "test"
55
+ Requires-Dist: typing_extensions~=4.15; extra == "test"
56
+ Requires-Dist: pytest-cov~=7.0; extra == "test"
57
+ Provides-Extra: osvvm
58
+ Requires-Dist: pyEDAA.OSVVM~=0.6; extra == "osvvm"
58
59
  Provides-Extra: all
59
- Requires-Dist: Coverage~=7.8; extra == "all"
60
- Requires-Dist: mypy~=1.15; extra == "all"
61
- Requires-Dist: typing_extensions~=4.13; extra == "all"
62
- Requires-Dist: pytest~=8.3; extra == "all"
63
- Requires-Dist: lxml~=5.4; extra == "all"
64
- Requires-Dist: sphinx~=8.2; extra == "all"
65
- Requires-Dist: pySVModel~=0.5; extra == "all"
66
- Requires-Dist: sphinx_autodoc_typehints~=3.2; extra == "all"
67
- Requires-Dist: pyTooling~=8.4; extra == "all"
68
- Requires-Dist: pyVHDLModel~=0.31; extra == "all"
60
+ Requires-Dist: pySystemRDLModel~=0.3; extra == "all"
61
+ Requires-Dist: sphinx_design~=0.6; extra == "all"
62
+ Requires-Dist: sphinx-copybutton>=0.5; extra == "all"
69
63
  Requires-Dist: docutils_stubs~=0.0.22; extra == "all"
70
- Requires-Dist: sphinx_design~=0.6.1; extra == "all"
71
- Requires-Dist: autoapi>=2.0.1; extra == "all"
64
+ Requires-Dist: lxml<7.0,>=5.4; extra == "all"
65
+ Requires-Dist: sphinx_autodoc_typehints~=3.5; extra == "all"
66
+ Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "all"
67
+ Requires-Dist: sphinx~=8.2; extra == "all"
68
+ Requires-Dist: pyEDAA.OSVVM~=0.6; extra == "all"
69
+ Requires-Dist: pyTooling~=8.7; extra == "all"
72
70
  Requires-Dist: sphinx_rtd_theme~=3.0; extra == "all"
71
+ Requires-Dist: mypy[reports]~=1.18; extra == "all"
72
+ Requires-Dist: pySVModel~=0.5; extra == "all"
73
73
  Requires-Dist: docutils~=0.21; extra == "all"
74
- Requires-Dist: sphinx-copybutton>=0.5.2; extra == "all"
75
- Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "all"
76
- Requires-Dist: pySystemRDLModel~=0.3; extra == "all"
74
+ Requires-Dist: Coverage~=7.11; extra == "all"
75
+ Requires-Dist: pyVHDLModel~=0.31; extra == "all"
76
+ Requires-Dist: pytest-cov~=7.0; extra == "all"
77
+ Requires-Dist: typing_extensions~=4.15; extra == "all"
77
78
  Requires-Dist: sphinx_reports~=0.9; extra == "all"
78
- Requires-Dist: pytest-cov~=6.1; extra == "all"
79
+ Requires-Dist: pytest~=8.4; extra == "all"
80
+ Requires-Dist: autoapi>=2.0.1; extra == "all"
79
81
  Dynamic: author
80
82
  Dynamic: author-email
81
83
  Dynamic: classifier
@@ -50,11 +50,24 @@ class UsedInAttribute(Attribute):
50
50
  VALUE_TYPE = Iterable[str]
51
51
 
52
52
 
53
+ @export
54
+ class ScopeToRefAttribute(Attribute):
55
+ KEY = "ScopeToRef"
56
+ VALUE_TYPE = Nullable[str]
57
+
58
+
59
+ @export
60
+ class ScopeToCellAttribute(Attribute):
61
+ KEY = "ScopeToCell"
62
+ VALUE_TYPE = Nullable[str]
63
+
64
+
53
65
  @export
54
66
  class File(Model_File):
55
67
  pass
56
68
 
57
69
 
70
+ @export
58
71
  class VivadoFileMixIn(metaclass=ExtendedType, mixin=True):
59
72
  def _registerAttributes(self) -> None:
60
73
  self._attributes[UsedInAttribute] = []
@@ -193,6 +206,11 @@ class VivadoProjectFile(ProjectFile, XMLContent):
193
206
  class XDCConstraintFile(ConstraintFile, SDCContent):
194
207
  """A Vivado constraint file (Xilinx Design Constraints; ``*.xdc``)."""
195
208
 
209
+ def _registerAttributes(self) -> None:
210
+ super()._registerAttributes()
211
+ self._attributes[ScopeToRefAttribute] = None
212
+ self._attributes[ScopeToCellAttribute] = None
213
+
196
214
 
197
215
  @export
198
216
  class IPCoreDescriptionFile(XMLFile):
@@ -34,7 +34,7 @@ __author__ = "Patrick Lehmann"
34
34
  __email__ = "Paebbels@gmail.com"
35
35
  __copyright__ = "2014-2025, Patrick Lehmann, Unai Martinez-Corral"
36
36
  __license__ = "Apache License, Version 2.0"
37
- __version__ = "0.5.1"
37
+ __version__ = "0.6.0"
38
38
  __keywords__ = ["eda project", "model", "abstract", "xilinx", "vivado", "osvvm", "file set", "file group", "test bench", "test harness"]
39
39
 
40
40
  from os.path import relpath as path_relpath
@@ -166,7 +166,11 @@ class File(metaclass=FileType, slots=True):
166
166
 
167
167
  @property
168
168
  def Path(self) -> pathlib_Path:
169
- """Read-only property returning the path of this file."""
169
+ """
170
+ Read-only property to access the path to the file.
171
+
172
+ :returns: The file's path.
173
+ """
170
174
  return self._path
171
175
 
172
176
  # TODO: setter?
@@ -251,7 +255,7 @@ class File(metaclass=FileType, slots=True):
251
255
  """
252
256
  Returns number of attributes set on this file.
253
257
 
254
- :returns: The number if attributes set on this file.
258
+ :returns: The number of attributes set on this file.
255
259
  """
256
260
  return len(self._attributes)
257
261
 
@@ -1069,7 +1073,7 @@ class FileSet(metaclass=ExtendedType, slots=True):
1069
1073
  """
1070
1074
  Returns number of attributes set on this fileset.
1071
1075
 
1072
- :returns: The number if attributes set on this fileset.
1076
+ :returns: The number of attributes set on this fileset.
1073
1077
  """
1074
1078
  return len(self._attributes)
1075
1079
 
@@ -1271,7 +1275,7 @@ class VHDLLibrary(metaclass=ExtendedType, slots=True):
1271
1275
  """
1272
1276
  Returns number of attributes set on this VHDL library.
1273
1277
 
1274
- :returns: The number if attributes set on this VHDL library.
1278
+ :returns: The number of attributes set on this VHDL library.
1275
1279
  """
1276
1280
  return len(self._attributes)
1277
1281
 
@@ -1629,7 +1633,7 @@ class Design(metaclass=ExtendedType, slots=True):
1629
1633
  """
1630
1634
  Returns number of attributes set on this design.
1631
1635
 
1632
- :returns: The number if attributes set on this design.
1636
+ :returns: The number of attributes set on this design.
1633
1637
  """
1634
1638
  return len(self._attributes)
1635
1639
 
@@ -1821,7 +1825,7 @@ class Project(metaclass=ExtendedType, slots=True):
1821
1825
  """
1822
1826
  Returns number of attributes set on this project.
1823
1827
 
1824
- :returns: The number if attributes set on this project.
1828
+ :returns: The number of attributes set on this project.
1825
1829
  """
1826
1830
  return len(self._attributes)
1827
1831
 
File without changes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyEDAA.ProjectModel
3
- Version: 0.5.1
3
+ Version: 0.6.0
4
4
  Summary: An abstract model of EDA tool projects.
5
5
  Home-page: https://GitHub.com/edaa-org/pyEDAA.ProjectModel
6
6
  Author: Patrick Lehmann
@@ -16,66 +16,68 @@ Classifier: Topic :: Utilities
16
16
  Classifier: Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)
17
17
  Classifier: License :: OSI Approved :: Apache Software License
18
18
  Classifier: Programming Language :: Python :: 3 :: Only
19
- Classifier: Programming Language :: Python :: 3.9
20
- Classifier: Programming Language :: Python :: 3.10
21
19
  Classifier: Programming Language :: Python :: 3.11
22
20
  Classifier: Programming Language :: Python :: 3.12
23
21
  Classifier: Programming Language :: Python :: 3.13
22
+ Classifier: Programming Language :: Python :: 3.14
24
23
  Classifier: Development Status :: 4 - Beta
25
- Requires-Python: >=3.9
24
+ Requires-Python: >=3.11
26
25
  Description-Content-Type: text/markdown
27
26
  License-File: LICENSE.md
28
- Requires-Dist: pySystemRDLModel~=0.3
29
27
  Requires-Dist: pyVHDLModel~=0.31
30
28
  Requires-Dist: pySVModel~=0.5
31
- Requires-Dist: pyTooling~=8.4
29
+ Requires-Dist: pySystemRDLModel~=0.3
30
+ Requires-Dist: pyTooling~=8.7
32
31
  Provides-Extra: doc
33
32
  Requires-Dist: pySVModel~=0.5; extra == "doc"
34
- Requires-Dist: sphinx_rtd_theme~=3.0; extra == "doc"
35
- Requires-Dist: sphinx_autodoc_typehints~=3.2; extra == "doc"
36
- Requires-Dist: pyTooling~=8.4; extra == "doc"
33
+ Requires-Dist: pySystemRDLModel~=0.3; extra == "doc"
34
+ Requires-Dist: docutils~=0.21; extra == "doc"
35
+ Requires-Dist: sphinx_design~=0.6; extra == "doc"
37
36
  Requires-Dist: pyVHDLModel~=0.31; extra == "doc"
37
+ Requires-Dist: sphinx-copybutton>=0.5; extra == "doc"
38
+ Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "doc"
38
39
  Requires-Dist: docutils_stubs~=0.0.22; extra == "doc"
39
- Requires-Dist: docutils~=0.21; extra == "doc"
40
- Requires-Dist: pySystemRDLModel~=0.3; extra == "doc"
40
+ Requires-Dist: sphinx~=8.2; extra == "doc"
41
+ Requires-Dist: sphinx_autodoc_typehints~=3.5; extra == "doc"
41
42
  Requires-Dist: sphinx_reports~=0.9; extra == "doc"
42
- Requires-Dist: sphinx-copybutton>=0.5.2; extra == "doc"
43
- Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "doc"
44
- Requires-Dist: sphinx_design~=0.6.1; extra == "doc"
43
+ Requires-Dist: pyTooling~=8.7; extra == "doc"
44
+ Requires-Dist: sphinx_rtd_theme~=3.0; extra == "doc"
45
45
  Requires-Dist: autoapi>=2.0.1; extra == "doc"
46
- Requires-Dist: sphinx~=8.2; extra == "doc"
47
46
  Provides-Extra: test
48
- Requires-Dist: Coverage~=7.8; extra == "test"
47
+ Requires-Dist: mypy[reports]~=1.18; extra == "test"
49
48
  Requires-Dist: pySVModel~=0.5; extra == "test"
50
- Requires-Dist: mypy~=1.15; extra == "test"
51
- Requires-Dist: pyTooling~=8.4; extra == "test"
52
- Requires-Dist: pyVHDLModel~=0.31; extra == "test"
53
- Requires-Dist: typing_extensions~=4.13; extra == "test"
54
49
  Requires-Dist: pySystemRDLModel~=0.3; extra == "test"
55
- Requires-Dist: pytest-cov~=6.1; extra == "test"
56
- Requires-Dist: pytest~=8.3; extra == "test"
57
- Requires-Dist: lxml~=5.4; extra == "test"
50
+ Requires-Dist: lxml<7.0,>=5.4; extra == "test"
51
+ Requires-Dist: Coverage~=7.11; extra == "test"
52
+ Requires-Dist: pyVHDLModel~=0.31; extra == "test"
53
+ Requires-Dist: pyTooling~=8.7; extra == "test"
54
+ Requires-Dist: pytest~=8.4; extra == "test"
55
+ Requires-Dist: typing_extensions~=4.15; extra == "test"
56
+ Requires-Dist: pytest-cov~=7.0; extra == "test"
57
+ Provides-Extra: osvvm
58
+ Requires-Dist: pyEDAA.OSVVM~=0.6; extra == "osvvm"
58
59
  Provides-Extra: all
59
- Requires-Dist: Coverage~=7.8; extra == "all"
60
- Requires-Dist: mypy~=1.15; extra == "all"
61
- Requires-Dist: typing_extensions~=4.13; extra == "all"
62
- Requires-Dist: pytest~=8.3; extra == "all"
63
- Requires-Dist: lxml~=5.4; extra == "all"
64
- Requires-Dist: sphinx~=8.2; extra == "all"
65
- Requires-Dist: pySVModel~=0.5; extra == "all"
66
- Requires-Dist: sphinx_autodoc_typehints~=3.2; extra == "all"
67
- Requires-Dist: pyTooling~=8.4; extra == "all"
68
- Requires-Dist: pyVHDLModel~=0.31; extra == "all"
60
+ Requires-Dist: pySystemRDLModel~=0.3; extra == "all"
61
+ Requires-Dist: sphinx_design~=0.6; extra == "all"
62
+ Requires-Dist: sphinx-copybutton>=0.5; extra == "all"
69
63
  Requires-Dist: docutils_stubs~=0.0.22; extra == "all"
70
- Requires-Dist: sphinx_design~=0.6.1; extra == "all"
71
- Requires-Dist: autoapi>=2.0.1; extra == "all"
64
+ Requires-Dist: lxml<7.0,>=5.4; extra == "all"
65
+ Requires-Dist: sphinx_autodoc_typehints~=3.5; extra == "all"
66
+ Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "all"
67
+ Requires-Dist: sphinx~=8.2; extra == "all"
68
+ Requires-Dist: pyEDAA.OSVVM~=0.6; extra == "all"
69
+ Requires-Dist: pyTooling~=8.7; extra == "all"
72
70
  Requires-Dist: sphinx_rtd_theme~=3.0; extra == "all"
71
+ Requires-Dist: mypy[reports]~=1.18; extra == "all"
72
+ Requires-Dist: pySVModel~=0.5; extra == "all"
73
73
  Requires-Dist: docutils~=0.21; extra == "all"
74
- Requires-Dist: sphinx-copybutton>=0.5.2; extra == "all"
75
- Requires-Dist: sphinxcontrib-mermaid~=1.0; extra == "all"
76
- Requires-Dist: pySystemRDLModel~=0.3; extra == "all"
74
+ Requires-Dist: Coverage~=7.11; extra == "all"
75
+ Requires-Dist: pyVHDLModel~=0.31; extra == "all"
76
+ Requires-Dist: pytest-cov~=7.0; extra == "all"
77
+ Requires-Dist: typing_extensions~=4.15; extra == "all"
77
78
  Requires-Dist: sphinx_reports~=0.9; extra == "all"
78
- Requires-Dist: pytest-cov~=6.1; extra == "all"
79
+ Requires-Dist: pytest~=8.4; extra == "all"
80
+ Requires-Dist: autoapi>=2.0.1; extra == "all"
79
81
  Dynamic: author
80
82
  Dynamic: author-email
81
83
  Dynamic: classifier
@@ -13,6 +13,7 @@ pyEDAA/ProjectModel/OSVVM.py
13
13
  pyEDAA/ProjectModel/VHDL.py
14
14
  pyEDAA/ProjectModel/Verilog.py
15
15
  pyEDAA/ProjectModel/__init__.py
16
+ pyEDAA/ProjectModel/py.typed
16
17
  pyEDAA/ProjectModel/Altera/Quartus.py
17
18
  pyEDAA/ProjectModel/Altera/__init__.py
18
19
  pyEDAA/ProjectModel/Intel/QuartusPrime.py
@@ -1,54 +1,58 @@
1
- pySystemRDLModel~=0.3
2
1
  pyVHDLModel~=0.31
3
2
  pySVModel~=0.5
4
- pyTooling~=8.4
3
+ pySystemRDLModel~=0.3
4
+ pyTooling~=8.7
5
5
 
6
6
  [all]
7
- Coverage~=7.8
8
- mypy~=1.15
9
- typing_extensions~=4.13
10
- pytest~=8.3
11
- lxml~=5.4
12
- sphinx~=8.2
13
- pySVModel~=0.5
14
- sphinx_autodoc_typehints~=3.2
15
- pyTooling~=8.4
16
- pyVHDLModel~=0.31
7
+ pySystemRDLModel~=0.3
8
+ sphinx_design~=0.6
9
+ sphinx-copybutton>=0.5
17
10
  docutils_stubs~=0.0.22
18
- sphinx_design~=0.6.1
19
- autoapi>=2.0.1
11
+ lxml<7.0,>=5.4
12
+ sphinx_autodoc_typehints~=3.5
13
+ sphinxcontrib-mermaid~=1.0
14
+ sphinx~=8.2
15
+ pyEDAA.OSVVM~=0.6
16
+ pyTooling~=8.7
20
17
  sphinx_rtd_theme~=3.0
18
+ mypy[reports]~=1.18
19
+ pySVModel~=0.5
21
20
  docutils~=0.21
22
- sphinx-copybutton>=0.5.2
23
- sphinxcontrib-mermaid~=1.0
24
- pySystemRDLModel~=0.3
21
+ Coverage~=7.11
22
+ pyVHDLModel~=0.31
23
+ pytest-cov~=7.0
24
+ typing_extensions~=4.15
25
25
  sphinx_reports~=0.9
26
- pytest-cov~=6.1
26
+ pytest~=8.4
27
+ autoapi>=2.0.1
27
28
 
28
29
  [doc]
29
30
  pySVModel~=0.5
30
- sphinx_rtd_theme~=3.0
31
- sphinx_autodoc_typehints~=3.2
32
- pyTooling~=8.4
31
+ pySystemRDLModel~=0.3
32
+ docutils~=0.21
33
+ sphinx_design~=0.6
33
34
  pyVHDLModel~=0.31
35
+ sphinx-copybutton>=0.5
36
+ sphinxcontrib-mermaid~=1.0
34
37
  docutils_stubs~=0.0.22
35
- docutils~=0.21
36
- pySystemRDLModel~=0.3
38
+ sphinx~=8.2
39
+ sphinx_autodoc_typehints~=3.5
37
40
  sphinx_reports~=0.9
38
- sphinx-copybutton>=0.5.2
39
- sphinxcontrib-mermaid~=1.0
40
- sphinx_design~=0.6.1
41
+ pyTooling~=8.7
42
+ sphinx_rtd_theme~=3.0
41
43
  autoapi>=2.0.1
42
- sphinx~=8.2
44
+
45
+ [osvvm]
46
+ pyEDAA.OSVVM~=0.6
43
47
 
44
48
  [test]
45
- Coverage~=7.8
49
+ mypy[reports]~=1.18
46
50
  pySVModel~=0.5
47
- mypy~=1.15
48
- pyTooling~=8.4
49
- pyVHDLModel~=0.31
50
- typing_extensions~=4.13
51
51
  pySystemRDLModel~=0.3
52
- pytest-cov~=6.1
53
- pytest~=8.3
54
- lxml~=5.4
52
+ lxml<7.0,>=5.4
53
+ Coverage~=7.11
54
+ pyVHDLModel~=0.31
55
+ pyTooling~=8.7
56
+ pytest~=8.4
57
+ typing_extensions~=4.15
58
+ pytest-cov~=7.0
@@ -2,15 +2,30 @@
2
2
  requires = [
3
3
  "setuptools >= 80.0",
4
4
  "wheel ~= 0.45",
5
- "pyTooling ~= 8.4"
5
+ "pyTooling ~= 8.7"
6
6
  ]
7
7
  build-backend = "setuptools.build_meta"
8
8
 
9
- [tool.black]
10
- line-length = 120
9
+ [tool.pylint.format]
10
+ indent-string="\t"
11
+ max-line-length = 120
12
+ ignore-long-lines = "^.{0,110}#: .*"
13
+
14
+ [tool.pylint.basic]
15
+ argument-naming-style = "camelCase"
16
+ attr-naming-style = "camelCase"
17
+ class-attribute-naming-style = "camelCase"
18
+ class-const-naming-style = "UPPER_CASE"
19
+ class-naming-style = "PascalCase"
20
+ const-naming-style = "UPPER_CASE"
21
+ function-naming-style = "camelCase"
22
+ inlinevar-naming-style = "camelCase"
23
+ method-naming-style = "PascalCase"
24
+ module-naming-style = "any"
25
+ variable-naming-style = "camelCase"
11
26
 
12
27
  [tool.mypy]
13
- files = ["pyEDAA.ProjectModel"]
28
+ packages = ["pyEDAA.ProjectModel"]
14
29
  python_version = "3.13"
15
30
  #ignore_missing_imports = true
16
31
  strict = true
@@ -40,16 +40,22 @@ packageName = "pyEDAA.ProjectModel"
40
40
  packageDirectory = packageName.replace(".", "/")
41
41
  packageInformationFile = Path(f"{packageDirectory}/__init__.py")
42
42
 
43
- setup(**DescribePythonPackageHostedOnGitHub(
44
- packageName=packageName,
45
- description="An abstract model of EDA tool projects.",
46
- gitHubNamespace=gitHubNamespace,
47
- sourceFileWithVersion=packageInformationFile,
48
- developmentStatus="beta",
49
- classifiers=list(DEFAULT_CLASSIFIERS) + [
50
- "Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)"
51
- ],
52
- dataFiles={
53
- packageName: ["py.typed"]
54
- }
55
- ))
43
+ setup(
44
+ **DescribePythonPackageHostedOnGitHub(
45
+ packageName=packageName,
46
+ description="An abstract model of EDA tool projects.",
47
+ gitHubNamespace=gitHubNamespace,
48
+ additionalRequirements={
49
+ "osvvm": ["pyEDAA.OSVVM ~= 0.6"],
50
+ },
51
+ sourceFileWithVersion=packageInformationFile,
52
+ classifiers=list(DEFAULT_CLASSIFIERS) + [
53
+ "Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)"
54
+ ],
55
+ developmentStatus="beta",
56
+ pythonVersions=("3.11", "3.12", "3.13", "3.14"),
57
+ dataFiles={
58
+ packageName: ["py.typed"]
59
+ }
60
+ )
61
+ )