siliconcompiler 0.29.0__py3-none-any.whl → 0.29.2__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 (104) hide show
  1. siliconcompiler/_metadata.py +1 -1
  2. siliconcompiler/apps/__init__.py +26 -0
  3. siliconcompiler/apps/sc_install.py +1 -1
  4. siliconcompiler/apps/utils/replay.py +96 -38
  5. siliconcompiler/checklists/__init__.py +12 -0
  6. siliconcompiler/core.py +85 -15
  7. siliconcompiler/flows/__init__.py +34 -0
  8. siliconcompiler/flows/showflow.py +1 -1
  9. siliconcompiler/libs/__init__.py +5 -0
  10. siliconcompiler/optimizer/__init__.py +199 -0
  11. siliconcompiler/optimizer/vizier.py +259 -0
  12. siliconcompiler/pdks/__init__.py +5 -0
  13. siliconcompiler/scheduler/__init__.py +67 -49
  14. siliconcompiler/scheduler/send_messages.py +1 -1
  15. siliconcompiler/schema/schema_cfg.py +2 -2
  16. siliconcompiler/schema/schema_obj.py +13 -10
  17. siliconcompiler/schema/utils.py +2 -0
  18. siliconcompiler/sphinx_ext/__init__.py +85 -0
  19. siliconcompiler/sphinx_ext/dynamicgen.py +17 -33
  20. siliconcompiler/sphinx_ext/schemagen.py +3 -2
  21. siliconcompiler/targets/__init__.py +26 -0
  22. siliconcompiler/templates/replay/replay.py.j2 +62 -0
  23. siliconcompiler/templates/replay/requirements.txt +2 -1
  24. siliconcompiler/templates/replay/setup.sh +119 -6
  25. siliconcompiler/tools/__init__.py +62 -0
  26. siliconcompiler/tools/_common/asic.py +77 -6
  27. siliconcompiler/tools/_common/tcl/sc_pin_constraints.tcl +2 -2
  28. siliconcompiler/tools/ghdl/ghdl.py +1 -2
  29. siliconcompiler/tools/gtkwave/__init__.py +39 -0
  30. siliconcompiler/tools/gtkwave/scripts/sc_show.tcl +34 -0
  31. siliconcompiler/tools/gtkwave/show.py +70 -0
  32. siliconcompiler/tools/icarus/compile.py +4 -0
  33. siliconcompiler/tools/klayout/convert_drc_db.py +1 -1
  34. siliconcompiler/tools/klayout/drc.py +1 -1
  35. siliconcompiler/tools/klayout/export.py +8 -1
  36. siliconcompiler/tools/klayout/klayout.py +2 -2
  37. siliconcompiler/tools/klayout/klayout_convert_drc_db.py +2 -2
  38. siliconcompiler/tools/klayout/klayout_export.py +7 -5
  39. siliconcompiler/tools/klayout/klayout_operations.py +4 -3
  40. siliconcompiler/tools/klayout/klayout_show.py +3 -2
  41. siliconcompiler/tools/klayout/klayout_utils.py +1 -1
  42. siliconcompiler/tools/klayout/operations.py +8 -0
  43. siliconcompiler/tools/klayout/screenshot.py +6 -1
  44. siliconcompiler/tools/klayout/show.py +8 -1
  45. siliconcompiler/tools/magic/magic.py +1 -1
  46. siliconcompiler/tools/openroad/__init__.py +1 -1
  47. siliconcompiler/tools/openroad/_apr.py +11 -2
  48. siliconcompiler/tools/openroad/global_placement.py +23 -2
  49. siliconcompiler/tools/openroad/init_floorplan.py +1 -1
  50. siliconcompiler/tools/openroad/scripts/apr/preamble.tcl +1 -1
  51. siliconcompiler/tools/openroad/scripts/apr/sc_clock_tree_synthesis.tcl +4 -0
  52. siliconcompiler/tools/openroad/scripts/apr/sc_global_placement.tcl +64 -1
  53. siliconcompiler/tools/openroad/scripts/apr/sc_repair_design.tcl +4 -0
  54. siliconcompiler/tools/openroad/scripts/apr/sc_repair_timing.tcl +8 -2
  55. siliconcompiler/tools/openroad/scripts/common/procs.tcl +88 -0
  56. siliconcompiler/tools/openroad/scripts/common/reports.tcl +1 -1
  57. siliconcompiler/tools/openroad/scripts/common/write_images.tcl +10 -1
  58. siliconcompiler/tools/openroad/scripts/sc_show.tcl +5 -0
  59. siliconcompiler/tools/opensta/__init__.py +1 -1
  60. siliconcompiler/tools/opensta/check_library.py +27 -0
  61. siliconcompiler/tools/opensta/scripts/sc_check_library.tcl +255 -0
  62. siliconcompiler/tools/opensta/scripts/sc_timing.tcl +1 -1
  63. siliconcompiler/tools/sv2v/sv2v.py +1 -2
  64. siliconcompiler/tools/verilator/compile.py +11 -0
  65. siliconcompiler/tools/verilator/verilator.py +7 -8
  66. siliconcompiler/tools/vivado/vivado.py +1 -1
  67. siliconcompiler/tools/yosys/__init__.py +149 -0
  68. siliconcompiler/tools/yosys/lec.py +22 -9
  69. siliconcompiler/tools/yosys/sc_lec.tcl +94 -49
  70. siliconcompiler/tools/yosys/sc_syn.tcl +1 -0
  71. siliconcompiler/tools/yosys/screenshot.py +2 -2
  72. siliconcompiler/tools/yosys/syn_asic.py +98 -74
  73. siliconcompiler/tools/yosys/syn_asic.tcl +31 -6
  74. siliconcompiler/tools/yosys/syn_fpga.py +2 -3
  75. siliconcompiler/tools/yosys/syn_fpga.tcl +0 -1
  76. siliconcompiler/toolscripts/_tools.json +8 -3
  77. siliconcompiler/toolscripts/rhel9/install-gtkwave.sh +40 -0
  78. siliconcompiler/toolscripts/ubuntu20/install-gtkwave.sh +28 -0
  79. siliconcompiler/toolscripts/ubuntu22/install-gtkwave.sh +28 -0
  80. siliconcompiler/toolscripts/ubuntu22/install-slang.sh +0 -0
  81. siliconcompiler/toolscripts/ubuntu24/install-gtkwave.sh +29 -0
  82. siliconcompiler/utils/__init__.py +7 -3
  83. siliconcompiler/utils/showtools.py +3 -0
  84. {siliconcompiler-0.29.0.dist-info → siliconcompiler-0.29.2.dist-info}/METADATA +14 -11
  85. {siliconcompiler-0.29.0.dist-info → siliconcompiler-0.29.2.dist-info}/RECORD +88 -91
  86. {siliconcompiler-0.29.0.dist-info → siliconcompiler-0.29.2.dist-info}/WHEEL +1 -1
  87. {siliconcompiler-0.29.0.dist-info → siliconcompiler-0.29.2.dist-info}/entry_points.txt +13 -0
  88. siliconcompiler/libs/asap7sc7p5t.py +0 -8
  89. siliconcompiler/libs/gf180mcu.py +0 -8
  90. siliconcompiler/libs/interposer.py +0 -8
  91. siliconcompiler/libs/nangate45.py +0 -8
  92. siliconcompiler/libs/sg13g2_stdcell.py +0 -8
  93. siliconcompiler/libs/sky130hd.py +0 -8
  94. siliconcompiler/libs/sky130io.py +0 -8
  95. siliconcompiler/pdks/asap7.py +0 -8
  96. siliconcompiler/pdks/freepdk45.py +0 -8
  97. siliconcompiler/pdks/gf180.py +0 -8
  98. siliconcompiler/pdks/ihp130.py +0 -8
  99. siliconcompiler/pdks/interposer.py +0 -8
  100. siliconcompiler/pdks/skywater130.py +0 -8
  101. siliconcompiler/templates/replay/run.py.j2 +0 -22
  102. siliconcompiler/tools/yosys/yosys.py +0 -148
  103. {siliconcompiler-0.29.0.dist-info → siliconcompiler-0.29.2.dist-info}/LICENSE +0 -0
  104. {siliconcompiler-0.29.0.dist-info → siliconcompiler-0.29.2.dist-info}/top_level.txt +0 -0
@@ -92,8 +92,6 @@ if { [sc_cfg_tool_task_exists {file} synthesis_libraries_macros] } {
92
92
  }
93
93
  set sc_mainlib [lindex $sc_logiclibs 0]
94
94
 
95
- set sc_dff_library \
96
- [lindex [sc_cfg_tool_task_get {file} dff_liberty_file] 0]
97
95
  set sc_abc_constraints \
98
96
  [lindex [sc_cfg_tool_task_get {file} abc_constraint_file] 0]
99
97
 
@@ -265,6 +263,10 @@ yosys synth {*}$synth_args -top $sc_design -run fine:check
265
263
  # Some place and route tools cannot handle these in the output Verilog,
266
264
  # so remove them here.
267
265
  yosys delete {*/t:$print}
266
+ yosys chformal -remove
267
+
268
+ # Recheck hierarchy to remove all unused modules
269
+ yosys hierarchy -top $sc_design
268
270
 
269
271
  yosys opt -purge
270
272
 
@@ -305,14 +307,36 @@ if { [sc_cfg_tool_task_get var autoname] == "true" } {
305
307
  yosys rename -wire
306
308
  }
307
309
 
310
+ if { [lindex [sc_cfg_tool_task_get var map_clockgates] 0] == "true" } {
311
+ set clockgate_dont_use []
312
+ foreach lib "$sc_logiclibs $sc_macrolibs" {
313
+ foreach cell [sc_cfg_get library $lib asic cells dontuse] {
314
+ lappend clockgate_dont_use -dont_use $cell
315
+ }
316
+ }
317
+ set clockgate_liberty []
318
+ foreach lib_file "$sc_libraries $sc_macro_libraries" {
319
+ lappend clockgate_dont_use "-liberty" $lib_file
320
+ }
321
+
322
+ yosys clockgate \
323
+ {*}$clockgate_dont_use \
324
+ {*}$clockgate_liberty \
325
+ -min_net_size [lindex [sc_cfg_tool_task_get var min_clockgate_fanout] 0]
326
+ }
327
+
308
328
  set dfflibmap_dont_use []
309
329
  foreach lib "$sc_logiclibs $sc_macrolibs" {
310
330
  foreach cell [sc_cfg_get library $lib asic cells dontuse] {
311
331
  lappend dfflibmap_dont_use -dont_use $cell
312
332
  }
313
333
  }
334
+ set dfflibmap_liberty []
335
+ foreach lib_file "$sc_libraries $sc_macro_libraries" {
336
+ lappend dfflibmap_liberty "-liberty" $lib_file
337
+ }
314
338
 
315
- yosys dfflibmap {*}$dfflibmap_dont_use -liberty $sc_dff_library
339
+ yosys dfflibmap {*}$dfflibmap_dont_use {*}$dfflibmap_liberty
316
340
 
317
341
  # perform final techmap and opt in case previous techmaps introduced constructs that need
318
342
  # techmapping
@@ -358,8 +382,10 @@ foreach lib_file $sc_libraries {
358
382
  }
359
383
  set abc_dont_use []
360
384
  foreach lib "$sc_logiclibs $sc_macrolibs" {
361
- foreach cell [sc_cfg_get library $lib asic cells dontuse] {
362
- lappend abc_dont_use -dont_use $cell
385
+ foreach group "dontuse hold clkbuf clkgate clklogic" {
386
+ foreach cell [sc_cfg_get library $lib asic cells $group] {
387
+ lappend abc_dont_use -dont_use $cell
388
+ }
363
389
  }
364
390
  }
365
391
 
@@ -397,7 +423,6 @@ if {
397
423
  yosys clean -purge
398
424
 
399
425
  set stat_libs []
400
- lappend stat_libs "-liberty" $sc_dff_library
401
426
  foreach lib_file "$sc_libraries $sc_macro_libraries" {
402
427
  lappend stat_libs "-liberty" $lib_file
403
428
  }
@@ -1,14 +1,14 @@
1
- from siliconcompiler.tools.yosys.yosys import syn_setup, syn_post_process
1
+ from siliconcompiler.tools.yosys import syn_setup, syn_post_process
2
2
  import json
3
3
  from siliconcompiler import sc_open
4
4
  from siliconcompiler.tools._common import get_tool_task, record_metric
5
- from siliconcompiler.targets import fpgaflow_demo
6
5
 
7
6
 
8
7
  ######################################################################
9
8
  # Make Docs
10
9
  ######################################################################
11
10
  def make_docs(chip):
11
+ from siliconcompiler.targets import fpgaflow_demo
12
12
  chip.set('fpga', 'partname', 'ice40up5k-sg48')
13
13
  chip.use(fpgaflow_demo)
14
14
 
@@ -93,7 +93,6 @@ def setup_fpga(chip):
93
93
  ",".join(['fpga', part_name, 'file', 'yosys_memory_techmap']),
94
94
  step=step, index=index)
95
95
 
96
- chip.add('tool', tool, 'task', task, 'output', design + '.netlist.json', step=step, index=index)
97
96
  chip.add('tool', tool, 'task', task, 'output', design + '.blif', step=step, index=index)
98
97
 
99
98
 
@@ -242,4 +242,3 @@ yosys echo on
242
242
  # Write Netlist
243
243
  ########################################################
244
244
  yosys write_blif "outputs/${sc_design}.blif"
245
- yosys write_json "outputs/${sc_design}.netlist.json"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "openroad": {
3
3
  "git-url": "https://github.com/The-OpenROAD-Project/OpenROAD.git",
4
- "git-commit": "8495fc80c78f4ab98bebd8cf2050fa63bc0b93c1",
4
+ "git-commit": "beba944a7c9eaface2ae88040ac721272b22e9d3",
5
5
  "docker-cmds": [
6
6
  "# Remove OR-Tools files",
7
7
  "RUN rm -f $SC_PREFIX/Makefile $SC_PREFIX/README.md",
@@ -45,12 +45,12 @@
45
45
  },
46
46
  "sv2v": {
47
47
  "git-url": "https://github.com/zachjs/sv2v.git",
48
- "git-commit": "5a636724d783edd403ac4618d6cc4def72e39cbc",
48
+ "git-commit": "aa0a885699ca8f4fc1d07ef34fb041c6f37b1ba3",
49
49
  "auto-update": true
50
50
  },
51
51
  "verilator": {
52
52
  "git-url": "https://github.com/verilator/verilator.git",
53
- "git-commit": "563faeb33f3b9b5374f558f54adfea11873f1cd7",
53
+ "git-commit": "v5.030",
54
54
  "auto-update": true
55
55
  },
56
56
  "bambu": {
@@ -131,5 +131,10 @@
131
131
  "git-commit": "v7.0",
132
132
  "git-url": "https://github.com/MikePopoloski/slang.git",
133
133
  "auto-update": true
134
+ },
135
+ "gtkwave": {
136
+ "git-commit": "v3.3.116",
137
+ "git-url": "https://github.com/gtkwave/gtkwave.git",
138
+ "auto-update": false
134
139
  }
135
140
  }
@@ -0,0 +1,40 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ # Get directory of script
6
+ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
+
8
+ sudo yum group install -y "Development Tools"
9
+ sudo yum install -y gtk3-devel \
10
+ bzip2-devel xz-devel tcl-devel tk-devel
11
+ sudo dnf config-manager --set-enabled devel || true
12
+ sudo yum install -y Judy-devel
13
+ sudo dnf config-manager --set-disabled devel || true
14
+
15
+ mkdir -p deps
16
+ cd deps
17
+
18
+ args=
19
+ if [ ! -z ${PREFIX} ]; then
20
+ args=--prefix="$PREFIX"
21
+ fi
22
+
23
+ wget http://ftp.gnu.org/pub/gnu/gperf/gperf-3.1.tar.gz
24
+ tar xvf gperf-3.1.tar.gz
25
+ cd gperf-3.1
26
+ ./configure $args
27
+ make -j$(nproc)
28
+ sudo make install
29
+ cd ..
30
+
31
+ git clone $(python3 ${src_path}/_tools.py --tool gtkwave --field git-url) gtkwave
32
+ cd gtkwave
33
+ git checkout $(python3 ${src_path}/_tools.py --tool gtkwave --field git-commit)
34
+
35
+ cd gtkwave3-gtk3
36
+
37
+ ./autogen.sh
38
+ ./configure --enable-gtk3 $args
39
+ make -j$(nproc)
40
+ sudo make install
@@ -0,0 +1,28 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ # Get directory of script
6
+ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
+
8
+ sudo apt-get install -y build-essential gperf libgtk-3-dev \
9
+ libbz2-dev libjudy-dev liblzma-dev tcl-dev tk-dev
10
+
11
+ mkdir -p deps
12
+ cd deps
13
+
14
+ git clone $(python3 ${src_path}/_tools.py --tool gtkwave --field git-url) gtkwave
15
+ cd gtkwave
16
+ git checkout $(python3 ${src_path}/_tools.py --tool gtkwave --field git-commit)
17
+
18
+ args=
19
+ if [ ! -z ${PREFIX} ]; then
20
+ args=--prefix="$PREFIX"
21
+ fi
22
+
23
+ cd gtkwave3-gtk3
24
+
25
+ ./autogen.sh
26
+ ./configure --enable-gtk3 $args
27
+ make -j$(nproc)
28
+ sudo make install
@@ -0,0 +1,28 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ # Get directory of script
6
+ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
+
8
+ sudo apt-get install -y build-essential gperf libgtk-3-dev \
9
+ libbz2-dev libjudy-dev liblzma-dev tcl-dev tk-dev
10
+
11
+ mkdir -p deps
12
+ cd deps
13
+
14
+ git clone $(python3 ${src_path}/_tools.py --tool gtkwave --field git-url) gtkwave
15
+ cd gtkwave
16
+ git checkout $(python3 ${src_path}/_tools.py --tool gtkwave --field git-commit)
17
+
18
+ args=
19
+ if [ ! -z ${PREFIX} ]; then
20
+ args=--prefix="$PREFIX"
21
+ fi
22
+
23
+ cd gtkwave3-gtk3
24
+
25
+ ./autogen.sh
26
+ ./configure --enable-gtk3 $args
27
+ make -j$(nproc)
28
+ sudo make install
File without changes
@@ -0,0 +1,29 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ # Get directory of script
6
+ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
+
8
+ sudo apt-get install -y build-essential gperf libgtk-3-dev \
9
+ libbz2-dev libjudy-dev liblzma-dev tcl-dev tk-dev autotools-dev \
10
+ automake
11
+
12
+ mkdir -p deps
13
+ cd deps
14
+
15
+ git clone $(python3 ${src_path}/_tools.py --tool gtkwave --field git-url) gtkwave
16
+ cd gtkwave
17
+ git checkout $(python3 ${src_path}/_tools.py --tool gtkwave --field git-commit)
18
+
19
+ args=
20
+ if [ ! -z ${PREFIX} ]; then
21
+ args=--prefix="$PREFIX"
22
+ fi
23
+
24
+ cd gtkwave3-gtk3
25
+
26
+ ./autogen.sh
27
+ ./configure --enable-gtk3 $args
28
+ make -j$(nproc)
29
+ sudo make install
@@ -333,7 +333,7 @@ def _resolve_env_vars(chip, filepath):
333
333
  # variables that don't exist in environment get ignored by `expandvars`,
334
334
  # but we can do our own error checking to ensure this doesn't result in
335
335
  # silent bugs
336
- envvars = re.findall(r'\$(\w+)', resolved_path)
336
+ envvars = re.findall(r'\$\{?(\w+)\}?', resolved_path)
337
337
  for var in envvars:
338
338
  chip.logger.warning(f'Variable {var} in {filepath} not defined in environment')
339
339
 
@@ -401,7 +401,7 @@ def find_sc_file(chip, filename, missing_ok=False, search_paths=None):
401
401
  return result
402
402
 
403
403
 
404
- def get_plugins(system):
404
+ def get_plugins(system, name=None):
405
405
  '''
406
406
  Search for python modules with a specific function
407
407
  '''
@@ -409,7 +409,11 @@ def get_plugins(system):
409
409
  plugins = []
410
410
  discovered_plugins = entry_points(group=f'siliconcompiler.{system}')
411
411
  for plugin in discovered_plugins:
412
- plugins.append(plugin.load())
412
+ if name:
413
+ if plugin.name == name:
414
+ plugins.append(plugin.load())
415
+ else:
416
+ plugins.append(plugin.load())
413
417
 
414
418
  return plugins
415
419
 
@@ -5,6 +5,7 @@ from siliconcompiler.tools.openroad import screenshot as openroad_screenshot
5
5
  from siliconcompiler.tools.vpr import show as vpr_show
6
6
  from siliconcompiler.tools.vpr import screenshot as vpr_screenshot
7
7
  from siliconcompiler.tools.yosys import screenshot as yosys_screenshot
8
+ from siliconcompiler.tools.gtkwave import show as gtkwave_show
8
9
 
9
10
 
10
11
  def setup(chip):
@@ -29,3 +30,5 @@ def setup(chip):
29
30
 
30
31
  chip.register_showtool('v', yosys_screenshot)
31
32
  chip.register_showtool('vg', yosys_screenshot)
33
+
34
+ chip.register_showtool('vcd', gtkwave_show)
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: siliconcompiler
3
- Version: 0.29.0
3
+ Version: 0.29.2
4
4
  Summary: A compiler framework that automates translation from source code to silicon.
5
5
  Author-email: Andreas Olofsson <andreas.d.olofsson@gmail.com>
6
6
  License: Apache License 2.0
@@ -26,7 +26,7 @@ Requires-Python: >=3.8
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE
28
28
  Requires-Dist: aiohttp==3.10.11; python_version <= "3.8"
29
- Requires-Dist: aiohttp==3.11.10; python_version >= "3.9"
29
+ Requires-Dist: aiohttp==3.11.11; python_version >= "3.9"
30
30
  Requires-Dist: requests==2.32.3
31
31
  Requires-Dist: PyYAML==6.0.2
32
32
  Requires-Dist: pandas>=1.1.5
@@ -36,9 +36,9 @@ Requires-Dist: distro==1.9.0
36
36
  Requires-Dist: packaging<25,>=21.3
37
37
  Requires-Dist: psutil>=5.8.0
38
38
  Requires-Dist: Pillow==10.4.0; python_version <= "3.8"
39
- Requires-Dist: Pillow==11.0.0; python_version >= "3.9"
40
- Requires-Dist: GitPython==3.1.43
41
- Requires-Dist: lambdapdk>=0.1.40
39
+ Requires-Dist: Pillow==11.1.0; python_version >= "3.9"
40
+ Requires-Dist: GitPython==3.1.44
41
+ Requires-Dist: lambdapdk>=0.1.44
42
42
  Requires-Dist: PyGithub==2.5.0
43
43
  Requires-Dist: urllib3>=1.26.0
44
44
  Requires-Dist: fasteners==0.19
@@ -46,9 +46,9 @@ Requires-Dist: fastjsonschema==2.21.1
46
46
  Requires-Dist: docker==7.1.0
47
47
  Requires-Dist: importlib_metadata; python_version < "3.10"
48
48
  Requires-Dist: sc-surelog==1.84.1
49
- Requires-Dist: orjson==3.10.12
49
+ Requires-Dist: orjson==3.10.14
50
50
  Requires-Dist: streamlit==1.40.1; python_version <= "3.8"
51
- Requires-Dist: streamlit==1.40.2; python_version >= "3.9" and python_full_version != "3.9.7"
51
+ Requires-Dist: streamlit==1.41.1; python_version >= "3.9" and python_full_version != "3.9.7"
52
52
  Requires-Dist: streamlit_agraph==0.0.45; python_full_version != "3.9.7"
53
53
  Requires-Dist: streamlit-antd-components==0.3.2; python_full_version != "3.9.7"
54
54
  Requires-Dist: streamlit_javascript==0.1.5; python_full_version != "3.9.7"
@@ -57,10 +57,11 @@ Provides-Extra: test
57
57
  Requires-Dist: pytest==8.3.4; extra == "test"
58
58
  Requires-Dist: pytest-xdist==3.6.1; extra == "test"
59
59
  Requires-Dist: pytest-timeout==2.3.1; extra == "test"
60
- Requires-Dist: pytest-asyncio==0.24.0; extra == "test"
60
+ Requires-Dist: pytest-asyncio==0.24.0; python_version <= "3.8" and extra == "test"
61
+ Requires-Dist: pytest-asyncio==0.25.2; python_version >= "3.9" and extra == "test"
61
62
  Requires-Dist: pytest-cov==5.0.0; python_version <= "3.8" and extra == "test"
62
63
  Requires-Dist: pytest-cov==6.0.0; python_version >= "3.9" and extra == "test"
63
- Requires-Dist: responses==0.25.3; extra == "test"
64
+ Requires-Dist: responses==0.25.5; extra == "test"
64
65
  Requires-Dist: PyVirtualDisplay==3.0; extra == "test"
65
66
  Provides-Extra: lint
66
67
  Requires-Dist: flake8==7.1.1; extra == "lint"
@@ -69,13 +70,15 @@ Requires-Dist: codespell==2.3.0; extra == "lint"
69
70
  Provides-Extra: docs
70
71
  Requires-Dist: Sphinx==8.1.3; extra == "docs"
71
72
  Requires-Dist: pip-licenses==5.0.0; extra == "docs"
72
- Requires-Dist: pydata-sphinx-theme==0.16.0; extra == "docs"
73
+ Requires-Dist: pydata-sphinx-theme==0.16.1; extra == "docs"
73
74
  Requires-Dist: sc-leflib>=0.2.0; extra == "docs"
74
75
  Provides-Extra: profile
75
76
  Requires-Dist: gprof2dot==2024.6.6; extra == "profile"
76
77
  Provides-Extra: examples
77
78
  Requires-Dist: migen==0.9.2; extra == "examples"
78
79
  Requires-Dist: lambdalib==0.3.2; extra == "examples"
80
+ Provides-Extra: optimizer
81
+ Requires-Dist: google-vizier[jax]==0.1.21; python_version >= "3.10" and extra == "optimizer"
79
82
 
80
83
  ![SiliconCompiler](https://raw.githubusercontent.com/siliconcompiler/siliconcompiler/main/docs/_static/sc_logo_with_text.png)
81
84