Siliconcompiler

Latest version: v0.32.2

Safety actively analyzes 723144 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 15 of 17

0.10.0

Not secure
=========================================

**Major:**

* Schema overhauled (see `schema documentation <https://docs.siliconcompiler.com/en/stable/reference_manual/schema.html>`_ for details):

* Added ability to override certain schema parameters on a per-step/index basis.
* Added step and index to schema access methods.
* Expanded constraints category to include component and pin placement.
* Cleaned up parameters which were duplicated in other categories.
* Implemented ['input', ...] and ['output', ...] filesets along with ``.input()`` and ``.output()`` helper functions
* Added tasks to tools prevent step name from getting used for task identification.
* Implemented ``.use()`` in favor of ``.load_pdk()``, ``.load_flow()``, etc. to take in Python modules instead of strings.
* Changed libraries, flows, checklists, and pdks to explicitly return a particular class object.
* Generate a summary PNG.
* Removed Floorplanning API.
* Added support for custom macros and scripts in the remote workflow.

**Minor:**

* Updated OpenROAD scripts to support a hierarchical flow.
* Updated Yosys scripts to better support hierarchy.
* Improved auto documentation generation.
* Updated pdk and library settings to provide additional corners where available.
* Updated documentation, including Installation, Quickstart Guide and Tutorials.
* Added Fmax as a first-order metric to the Schema

0.9.6

Not secure
=========================================

**Major:**

* Fixed bug that causes tool setup information to be lost when running a flow in multiple chunks using a steplist.

**Minor:**

* Fixed old schema references in Yosys synthesis strategy scripts.
* Updated error message for missing file requirements.
* Updated OpenROAD scripts to handle multiple LEF files.
* Updated KLayout driver to use batch mode flag and capture more warnings.
* Updated Verilator driver to implement ['option', 'trace], ['option', 'warningoff'], and provide passthroughs for CFLAGS and LDFLAGS.
* Removed support for 'extraopts' passthrough in Verilator driver.
* Updated version of Surelog bundled with wheels distribution.

0.9.5

Not secure
=========================================

**Minor:**

* Schema: Added ['tool', <tool>, 'prescript'/'postscript', <step>, <index>] to support user-supplied pre- and post-scripts for script-based tools.
* Schema: Added ['tool', <tool>, 'file', <step>, <index>] passthrough parameter.
* Added runtime logic to terminate tools that do not exit on their own after a job is interrupted with ctrl-c.
* Fixed KLayout show bugs.
* Fixed issue building SC in editable mode using newer versions of Pip/setuptools.

0.9.4

Not secure
=========================================

**Major:**

* Changed ``run()`` logic to not reset metrics to zero.

* ``summary()`` will only display metrics that have been explicitly set.

**Minor:**

* Schema: Changed ['constraint', <scenario>, 'libcorner'] from scalar to list.
* Added support for --latches option in GHDL driver.
* Added ``:keypath:`` directive to distributed Sphinx extensions.
* Added reports and final manifest to ``archive()`` outputs.
* Fixed bug where ``job`` argument to ``find_files()`` was not handled properly.
* Fixed pin sizes and PDN vias in Caravel wrapper example.
* Updated flow scripts to support newer version of OpenROAD.
* Updated version of Surelog bundled with wheels distribution.

0.9.3

Not secure
=========================================

**Major:**

* Added basic editing functionality for signoff checklists in HTML report.
* Changed file collection behavior:

* For local runs, inputs are not copied into import/ at all.
* For remote runs, inputs are copied into import/0/inputs/ only, not outputs/.
* Implemented ['option', 'entrypoint'], allowing users to specify an alternative top-level.
* Implemented support for "pure Python" tools.

* A ``run()`` method inside a tool setup file will be run instead of an executable.

**Minor:**

* Changed ``run()`` behavior to read metrics from all leaf tasks.
* Fixed implementation of ['option', 'jobincr'].
* Fixed bug causing exception on ``summary()`` for machines with a default encoding other than UTF-8.
* Fixed logfile reading logic to gracefully handle invalid characters.
* Improved error messages for some common issues.

0.9.2

Not secure
=========================================

**Major:**

* Schema: Added ['option', 'flowcontinue'] to control whether flow continues when a tool reports errors.

* This used to be controlled by ['tool', \<tool\>, 'continue'], but this parameter is meant to feed directly into tools (rather than controlling the SC runtime).
* Schema: Added ['option', 'continue'] parameter to control whether errors in the Python API are fatal.

* The default value makes errors fatal, setting this parameter to True reverts to the old behavior.
* Added VPR-based FPGA bitstream generation flow.
* Added logic to set errors and warnings metrics based on ['tool', \<tool\>, 'regex', ...] matches. This reduces tool driver boilerplate and makes the metrics consistent with the generated regex match files.

**Minor:**

* Changed default technology target for ``sc`` app.
* Changed KLayout show script to always use a dark background.
* Changed ``check_manifest()`` to allow tool tasks to have multiple inputs (behaving as if they were merged with a "join" builtin).
* Changed ``check_manifest()`` to return True on success rather than 0 (the previous behavior didn't match the documentation).
* Changed Yosys and OpenROAD tool drivers to make them easier to use in flows with alternate step names.
* Changed GHDL tool driver to allow additional CLI options via ['tool', \<tool\>, 'var', ..., 'extraopts'].
* Removed return codes from ``post_process()``.

Page 15 of 17

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.