siliconcompiler 0.34.0__py3-none-any.whl → 0.34.1__py3-none-any.whl

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 (88) hide show
  1. siliconcompiler/_metadata.py +1 -1
  2. siliconcompiler/apps/_common.py +1 -1
  3. siliconcompiler/apps/sc.py +1 -1
  4. siliconcompiler/apps/sc_issue.py +1 -1
  5. siliconcompiler/apps/sc_remote.py +3 -3
  6. siliconcompiler/apps/sc_show.py +2 -2
  7. siliconcompiler/apps/utils/replay.py +4 -4
  8. siliconcompiler/checklist.py +203 -2
  9. siliconcompiler/core.py +28 -246
  10. siliconcompiler/data/templates/email/general.j2 +3 -3
  11. siliconcompiler/data/templates/email/summary.j2 +1 -1
  12. siliconcompiler/data/templates/issue/README.txt +1 -1
  13. siliconcompiler/data/templates/report/sc_report.j2 +7 -7
  14. siliconcompiler/design.py +148 -54
  15. siliconcompiler/flowgraph.py +50 -15
  16. siliconcompiler/optimizer/vizier.py +2 -2
  17. siliconcompiler/pdk.py +5 -5
  18. siliconcompiler/remote/client.py +18 -12
  19. siliconcompiler/remote/server.py +2 -2
  20. siliconcompiler/report/dashboard/cli/__init__.py +6 -6
  21. siliconcompiler/report/dashboard/cli/board.py +3 -3
  22. siliconcompiler/report/dashboard/web/components/__init__.py +5 -5
  23. siliconcompiler/report/dashboard/web/components/flowgraph.py +4 -4
  24. siliconcompiler/report/dashboard/web/components/graph.py +2 -2
  25. siliconcompiler/report/dashboard/web/state.py +1 -1
  26. siliconcompiler/report/dashboard/web/utils/__init__.py +5 -5
  27. siliconcompiler/report/html_report.py +1 -1
  28. siliconcompiler/report/report.py +4 -4
  29. siliconcompiler/report/summary_table.py +2 -2
  30. siliconcompiler/report/utils.py +5 -5
  31. siliconcompiler/scheduler/docker.py +3 -8
  32. siliconcompiler/scheduler/run_node.py +2 -7
  33. siliconcompiler/scheduler/scheduler.py +14 -11
  34. siliconcompiler/scheduler/schedulernode.py +136 -126
  35. siliconcompiler/scheduler/send_messages.py +3 -3
  36. siliconcompiler/scheduler/slurm.py +5 -3
  37. siliconcompiler/scheduler/taskscheduler.py +8 -7
  38. siliconcompiler/schema/baseschema.py +1 -2
  39. siliconcompiler/schema/namedschema.py +26 -2
  40. siliconcompiler/tool.py +398 -175
  41. siliconcompiler/tools/__init__.py +2 -0
  42. siliconcompiler/tools/builtin/_common.py +5 -5
  43. siliconcompiler/tools/builtin/concatenate.py +5 -5
  44. siliconcompiler/tools/builtin/minimum.py +4 -4
  45. siliconcompiler/tools/builtin/mux.py +4 -4
  46. siliconcompiler/tools/builtin/nop.py +4 -4
  47. siliconcompiler/tools/builtin/verify.py +7 -7
  48. siliconcompiler/tools/execute/exec_input.py +1 -1
  49. siliconcompiler/tools/genfasm/genfasm.py +1 -6
  50. siliconcompiler/tools/openroad/_apr.py +5 -1
  51. siliconcompiler/tools/openroad/antenna_repair.py +1 -1
  52. siliconcompiler/tools/openroad/macro_placement.py +1 -1
  53. siliconcompiler/tools/openroad/power_grid.py +1 -1
  54. siliconcompiler/tools/openroad/scripts/common/procs.tcl +5 -0
  55. siliconcompiler/tools/opensta/timing.py +26 -3
  56. siliconcompiler/tools/slang/__init__.py +2 -2
  57. siliconcompiler/tools/surfer/__init__.py +0 -0
  58. siliconcompiler/tools/surfer/show.py +53 -0
  59. siliconcompiler/tools/surfer/surfer.py +30 -0
  60. siliconcompiler/tools/vpr/route.py +27 -14
  61. siliconcompiler/tools/vpr/vpr.py +23 -6
  62. siliconcompiler/tools/yosys/__init__.py +1 -1
  63. siliconcompiler/tools/yosys/scripts/procs.tcl +143 -0
  64. siliconcompiler/tools/yosys/{sc_synth_asic.tcl → scripts/sc_synth_asic.tcl} +4 -0
  65. siliconcompiler/tools/yosys/{sc_synth_fpga.tcl → scripts/sc_synth_fpga.tcl} +24 -77
  66. siliconcompiler/tools/yosys/syn_fpga.py +14 -0
  67. siliconcompiler/toolscripts/_tools.json +8 -12
  68. siliconcompiler/toolscripts/rhel9/install-vpr.sh +0 -2
  69. siliconcompiler/toolscripts/ubuntu22/install-surfer.sh +33 -0
  70. siliconcompiler/toolscripts/ubuntu24/install-surfer.sh +33 -0
  71. siliconcompiler/utils/__init__.py +2 -1
  72. siliconcompiler/utils/flowgraph.py +24 -23
  73. siliconcompiler/utils/issue.py +23 -29
  74. siliconcompiler/utils/logging.py +35 -6
  75. siliconcompiler/utils/showtools.py +6 -1
  76. {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.1.dist-info}/METADATA +15 -25
  77. {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.1.dist-info}/RECORD +84 -82
  78. siliconcompiler/tools/yosys/procs.tcl +0 -71
  79. siliconcompiler/toolscripts/rhel9/install-yosys-parmys.sh +0 -68
  80. siliconcompiler/toolscripts/ubuntu22/install-yosys-parmys.sh +0 -68
  81. siliconcompiler/toolscripts/ubuntu24/install-yosys-parmys.sh +0 -68
  82. /siliconcompiler/tools/yosys/{sc_lec.tcl → scripts/sc_lec.tcl} +0 -0
  83. /siliconcompiler/tools/yosys/{sc_screenshot.tcl → scripts/sc_screenshot.tcl} +0 -0
  84. /siliconcompiler/tools/yosys/{syn_strategies.tcl → scripts/syn_strategies.tcl} +0 -0
  85. {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.1.dist-info}/WHEEL +0 -0
  86. {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.1.dist-info}/entry_points.txt +0 -0
  87. {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.1.dist-info}/licenses/LICENSE +0 -0
  88. {siliconcompiler-0.34.0.dist-info → siliconcompiler-0.34.1.dist-info}/top_level.txt +0 -0
@@ -15,7 +15,7 @@ class NamedSchema(BaseSchema):
15
15
  name (str): name of the schema
16
16
  '''
17
17
 
18
- def __init__(self, name):
18
+ def __init__(self, name=None):
19
19
  super().__init__()
20
20
 
21
21
  self.__name = name
@@ -24,7 +24,25 @@ class NamedSchema(BaseSchema):
24
24
  '''
25
25
  Returns the name of the schema
26
26
  '''
27
- return self.__name
27
+ try:
28
+ return self.__name
29
+ except AttributeError:
30
+ return None
31
+
32
+ def set_name(self, name):
33
+ """
34
+ Set the name of this object
35
+
36
+ Raises:
37
+ RuntimeError: if called after object name is set.
38
+
39
+ Args:
40
+ name (str): name for object
41
+ """
42
+
43
+ if self.name() is not None:
44
+ raise RuntimeError("Cannot call set_name more than once.")
45
+ self.__name = name
28
46
 
29
47
  def _reset(self) -> None:
30
48
  """
@@ -32,6 +50,12 @@ class NamedSchema(BaseSchema):
32
50
  """
33
51
  pass
34
52
 
53
+ def type(self) -> str:
54
+ """
55
+ Returns the type of this object
56
+ """
57
+ raise NotImplementedError("Must be implemented by the child classes.")
58
+
35
59
  @classmethod
36
60
  def from_manifest(cls, name, filepath=None, cfg=None):
37
61
  '''