Packages#

The SiliconCompiler Schema includes built in support for project packaging and distribution through the ['package', ...] dictionary group. Modern programming languages like JavaScript and Rust have shown the importance of treating package management as a first class object rather than as an after thought. There is no reason we can’t do the same thing in hardware.

The table below includes a summary of all package parameters.

parameter

description

['package', 'depgraph', ...]

Contains sub-tree of parameters. See Schema.

['package', 'name']

Package: name

['package', 'version']

Package: version

['package', 'description']

Package: description

['package', 'keyword']

Package: keyword

['package', 'homepage']

Package: project homepage

['package', 'doc', ...]

Contains sub-tree of parameters. See Schema.

['package', 'repo']

Package: code repository

['package', 'dependency', ...]

Contains sub-tree of parameters. See Schema.

['package', 'target']

Package: qualified targets

['package', 'license']

Package: license identifiers

['package', 'licensefile']

Package: license files

['package', 'location']

Package: location

['package', 'organization']

Package: sponsoring organization

['package', 'publickey']

Package: public key

['package', 'author', ...]

Contains sub-tree of parameters. See Schema.